Hello, my name is

Jérôme Galan.

Embedded Developer SDET & QA Electronics

(EN) Download my CV (FR) Téléchargez mon CV

About

Let me introduce myself.


Profile Picture Cartoon

Profile Picture
45 years old, passionate about technologies since my childhood. My credo is to develop and upgrade my skills every day.
"A day without learning and have fun is a day lost".

Profile


  • Fullname:

    Jerome Galan

  • Birth Date:

    August 17, 1978

  • Job:

  • Embedded Developer
  • SDET (Software Development Engineer in Test)
  • QA (Quality Assurance)

  • Email:

    jerome.galan@gmail.com

Skills

    Coding:

  • 100%
    C

  • 75%
    C++

  • 100%
    Assembly

  • 20%
    RUST

  • 90%
    Python

  • 80%
    BASH

  • 70%
    VHDL


  • Methods:

  • 100%
    Agile

  • 100%
    ATDD/BDD


  • Automation:

  • 80%
    Jenkins

  • 100%
    Github Actions

  • 100%
    Robot Framework

  • 80%
    Docker


  • Software:

  • 90%
    GIT

  • 90%
    Eclipse

  • 100%
    VsCode

  • 60%
    Quartus

Services

What Can I Do For You?

Here are the main skills I can bring to you.

Resume

More of my credentials.

Here we go

Work Experience

Technical Lead

May 2023 - Present

Keywords
  • Software architecture
  • Hardware architecture
  • BID
  • C
  • VHDL
  • Python
  • Bash
  • Yocto
  • Git
  • Jenkins
  • API Rest
  • Postman
  • RS-232
  • RS-422
  • PCI express
  • Aviation standards

Thales Avionics France
Multi Purpose Module

Description:
The MPM is an embedded system which is able to communicate with many avionics system for testing, updating or data exchange. It can be connected to custom boards to increase its capabilities. It's a powerful and cheaper alternative to avionic benchmarks.


My achievements:
As the technical leader of the project, my work consists to define the product policy to help the internal customers to test the avionic systems, to make the bids, and to lead the team to achieve these goals. I also actively participate in the development of the low-level layers and the system testing integration.

The systems is composed of a Yocto custom linux distribution which is embedded with a IMX 7. The IMX communicates with a Cyclone V FPGA through a PCI express link to activate I/O, serial links and aviation specific standards (Arinc 429, AFDX ...). Developping the drivers, the middleware and the API with my team in C, Python and bash, I also make the IP architecture to be described in VHDL.

Now, I specify the hardware motherboard and its addons for the future MPM version. We are also building the CI/CD process with Jenkins, and soon with Gitlab and docker.


Test (QA)

March 2021 - February 2023

Keywords
  • C/C++
  • Python
  • Bash Linux
  • YAML
  • Git
  • Platformio
  • Docker
  • Nginx
  • Postman

Luos_

Description:


The best way to understand what is Luos is to watch this video:


My achievements:
As a QA (Quality Assurance) engineer, and more exactly as SDET (Software Development Engineer in Test), I was responsible of the quality process of the Luos library. My job was to verify that the quality process is respected at each step: when a developper commit his code, the CI pipeline is triggered: compilation, test covering, unit tests, automatic tests on a hardware benchmark, logs saving.

Another important role was to prepare the releases: Prepare the future release with the team (new features and bug to fix), upload it to registry & update the lib changelog.

To deal with this missions, I had to specify the end to end testing strategy and to automate all the CI/CD pipeline. With Github Actions, a Linux PC with dockers to launch the test from the web, I've made many scripts (in bash & python) and programs (in C) to completely automate the QA process.

For the hardware benchmark platform, I had to connect many MCUs in a programmable network to automatically test each scenario with a simple click.


Test (SDET)

2019 - February 2021

Keywords
  • Bash Linux
  • Python
  • Robot Framework
  • Jenkins
  • API Rest
  • BDD/Gherkin
  • Agile

Thales SIX GTS France
Comtics

Description:
Comtics is a complete network communication system for the French Navy. It allows secure radio communications between ships and ground and air segments. It also provides internal services to ships: voice, messaging, video, conferences, alarms, point-to-point communications...


My achievements:
My work consisted in setting up the end-to-end automatic testing strategy with continuous integration tools, following the BDD (Behavior Driven Development) methodology.

This involves the automatic deployment of terminals, the configuration of the system's operation with Selenium for REST API testing, the control of radios and analogue equipments, the verification of the correct operation of the various software layers.

The system is thus validated from different angles: functional, performance, robustness, limit values to shake the system to its core. Test definition and results documentation are generated automatically.


Test (SDET)

2017 - 2019

Keywords
  • Python
  • Scripting
  • Groovy
  • Jenkins
  • Agile

Thales SIX GTS France
Areos (Aerial Reconnaissance System)

Description:
Areos is an on-board system for reconnaissance aircraft. It allows the collection of high resolution pictures. The transfer of pictures is guaranteed without data loss, even when radio propagation conditions are degraded.

My achievements:
During this project, I first worked with the Waveform software team to set up the automatic testing strategy with a proprietary scripting tool coupled with the Jenkins environment (Groovy language). The aim was to validate the various radio modes and the system for retransmitting erroneous frames, in particular by driving traffic and noise generation devices. The test description documents are drawn up manually and the test results are produced automatically.

I then joined the product team to integrate this software with the software produced in the radios, in a real time environment. A proprietary test tool was used to validate the hundreds radio configurations. The laboratory equipment was automatically driven to generate errors and test the resilience of the system.

Finally, after joining in the System Team, my work mainly consisted of validating the antennas positioning algorithm with the complete system (ground modem and parabola & nacelle and air antennas).


Embedded software development & SDET

2014 - 2017

Keywords
  • C/C++
  • RTOS (ucOS II)
  • JTAG
  • Clearcase

Thales SIX GTS France
Flexnet OFDM Waveform

Description:
Flexnet is a Software Defined Radio research product, based on the OFDM waveform. This modulation technique consists of distributing the signal over a large number of subcarriers, in particular to allow a significant improvement of the signal propagation in some unfavourable environments.


My achievements:
In this project, I reworked the code to find endurance crashing bugs, memory crashes and message collisions. To do this, I had to integrate a trace debugging tool thanks to a real time event software, allowing to visualize post mortem the real time sequences.

I continued the development of the physical layer in C and C++, in particular to re-design the memory mapping, the task scheduling and to optimise the interrupt routines. An important part of the work was to rework the messaging, in particular the configuration of the routing table and the buffers of the MHAL layer (message abstraction layer).

Then I carried out the integration phases with other software components that were provided to me by other teams: a GPP instantiating the MAC layer and an FPGA carrying out the signal processing for the radio part. The work consisted in monitoring and correcting the radio performance metrics (modulation, resistance to noise and multi-bounce) and then carrying out the field tests.


Embedded software development

2011

Keywords
  • [TI] ARM DM-3725
  • RTOS (ucOS II)
  • Jenkins
  • Git/Clearcase
  • Agile

Thales SIX GTS France
Contact - Land Forces Software Radio

Description:
The different army corps are renewing almost all their radios by moving to the digital era, with SDR (Software Defined Radio) technologies. The Contact project is a multi-billion euro project, including a part for the french army.


My achievements:
I worked more specifically on the "ERS-p handheld project" as a developer and integrator. The development part consisted in defining and writing the drivers in C and the wrappers in C++ for: the DMA and the GPMC bus of the DM3725 processor.

Then it was necessary to integrate the software with an FPGA and a GPP, with a logic analyser for debugging. Another part of my activity consisted in developping the automatic tests with a proprietary software (definition of commands in XML).


Embedded software development

2015

Keywords
  • [TI] DSP C64
  • C/C++
  • Assembly
  • JTAG
  • Eclipse
  • Clearcase UCM

Thales SIX GTS France
Satcom Satellite Modem UCG 3

Description:
The project mainly consisted in developping all the drivers for the application layer in C and C++ on a C64 DSP : DMA, McBSP bus, I/O, Led, debug system... A very complete unit test campaign allowed to validate all the functionalities.


My achievements:
I also developed and benched a mathematical calculation library, optimized in
assembly
, using the intrinsics provided by Texas Instruments.


Developpement & Team leader

2012 - 2013

Keywords
  • Team leader
  • [TI] DSP C54
  • Python
  • RTOS DspBios
  • Voice signal processing
  • Clearcase

Thales SIX GTS France
HF Radio product Melchior

Description:
Melchior is a secure HF radio communication system. It offers in particular a vocoded digital voice service (several voice compression algorithms by modelling, to NATO standards).


My achievements:
During this mission, I was in charge of a software module for a team of three engineers: staff supervision, definition and follow-up of schedules, reporting of indicators and alerts to management.

Another aspect consisted in developing various software functions on DSP (TI C54) with the DSP Bios OS: Porting of C-coded algorithms from vocoded speech to assembly to optimise real time. Speech Encryption by implementing a signal processing algorithm (also coded in fixed C on PC to check the bit accuracy of the test patterns). Another aspect consisted in implementing and optimising an image processing algorithms in C++.

Finally, I set up the test automation strategy by defining and coding a test tool in Python: creation of messaging classes, sequencing, logs... The tool allowed me to implement a debugging function of voice recording by RS-232 serial link for future qualitative studies. It also allowed me to facilitate the integration of the DSP with the soft modem delivered by an external team and to validate the bit accuracy of the vocoding algo by injecting it with the tens of test patterns delivered by the NATO standard.


Embedded software development & SDET

2010 - 2012

Keywords
  • [TI] DSP C54
  • C
  • Oscilloscope
  • Logical analyzer
  • Labwindows

Thales SIX GTS France
EPMT satellite communication system

Description:
High sensitivity military satellite modem, capable of resisting enemy jamming attacks.


My achievements:
This service mainly consisted in carrying out the Integration, Validation & Verification tasks by carrying out the functional, performance and endurance. tests previously written by myself in the test plan.

It also consisted in monitoring various radio transmission and reception parameters, software bug alerts, simulation of jamming attacks to verify the resilience of the system using a propagation channel simulation device.

I added new features on the Opium test tool of the service coded in LabWindows.

The other side of the mission consisted in developing the low layers in C on DSP C54 and then integrating the DSP/FPGA communication system on ETX bus, using a logic analyser.


Embedded software development

2009 - 2010

Keywords
  • [Microchip] DSPIC
  • C
  • Analog & digital filtering
  • Digital boards conception
  • Spice simulation

Alyotech
DOF 1 - Landing doors of the RATP Metro 1

Description:
Automatic opening and closing device of the landing doors of the metro line 1 to avoid passenger accidents on the platforms, according to the railway safety standards EN 50128 and EN 50129 (maximum railway safety SIL3 and SIL4).


My achievements:
During this mission for the RATP, I had to implement almost all the steps of the V cycle for the DOF 1 on-board electronic & computer system, from documentation to verification.

Hardware part: Definition of analogue & digital boards: choice of components, mock-ups, spice simulations, subcontracting of boards, laboratory tests (oscilloscope, GBF and a lot of soldering iron) and finally testing on the metro rails.In particular, I had to design very selective analogue and digital filters, an amplifier to amplify the magnetic signal transmitted by a coil located on the rails, and a SIL 4 safety level card to make a relay break down when a precise frequency is received (NE555 components, class D amplifier, etc.).

Software part: Study and development of the whole firmware, including the security state machine in C on the Microchip DSPIC microcontroller to operate thesystem.Communication by serial link to a PLC and with the security card.


Electronics & Embedded software development

2006

Keywords
  • Orcad
  • VHDL
  • RS-232
  • RS-422
  • SPI
  • CAN
  • PCI
  • VME

Alyotech
Multibus board for communication bus validation

Description:
The Multibus is intended to be used as a validation board for other electronic boards developed by the company. It integrates different communication buses within a single PCB.


My achievements:
This project first consisted in designing the Multibus board with Orcad and writing the hardware and software documentation. This board was very complex because an FPGA with nearly 500 pins was connected to various bridges to manage these communication protocols: RS-232, RS-422, PCI, PCI Express, VME, CAN, SPI, Firewire, USB.

To name just one, the PLX9050 bridge allows a Xilinx FPGA to configure and control a PCI bus. It was then necessary to code in VHDL some of the protocols to make the buses talk to each other (for example, a card connected to PCI can talk to another card connected to USB).


Embedded software development

2007

Keywords
  • [TI] DSP C54
  • Matlab
  • C
  • Code Composer Studio

Alyotech
Anti-nuclear system

Description:
Seismic detector for anti-nuclear Start 3


My achievements:
Within the framework of the Start 3 nuclear non-proliferation treaty, this embedded system analyses seismic signals to search for possible traces of illegal nuclear testing.

This project consisted in taking over and completing a simulation of seismic signal processing and porting the algorithm to a TI microcontroller with DSP/BIOS OS. As the OS could not handle multiple RS-232 serial links, two drivers had to be reworked to handle the communication protocol.


Embedded software development

2005

Keywords
  • [TI] MSP430
  • [ATMEL] ATMEGA
  • Assembly
  • C

Alyotech
Prototype of assistance to surgical gestures

Description:
To help surgeons perform precise gestures, the TIMC-IMAG laboratory project sends regular electrical signals to an electrode array connected to a surgeon's tongue.


My achievements:
During this atypical project, it was necessary to develop in assembly and in C the real time software on a MSP430 microcontroller. An array of several tens of electrodes was driven to successively light the desired electrode during 2 us every 50 us. An input signal sent regularly by serial link allows the desired electrode(s) to be activated, producing an electrical pattern on the tongue that can be interpreted by a trained surgeon.

This same project was then ported to the Atmel ATMEGA MCU. with more interesting low-power functions.


Electronics & Embedded software development

6 months in 20xx

Keywords
  • [Freescale] 68HC11
  • Assembly
  • VHDL
  • Orcad

For fun
Line-following robot

Description:
The robot, equipped with a camera, follows a line on the floor in order to move autonomously in a warehouse.
The width of the line controls its behaviour: turn right or left or stop a pre-programmed time.


My achievements:
This robot, equipped with an FPGA that formats the video signal, and a speed and position control system, provides information from the environment to a 68-HC11 microcontroller.
I had to program the FPGA in VHDL, to build the board carrying the MCU and to develop the software in assembly.
The final goal of this software is to control the servomotors to pilot the robot in its environment.


Contact

I'd Love To Hear From You.

Email Me At

jerome.galan@gmail.com

Where to find me

Bordeaux
33000 France

premium bootstrap themes
Call Me At

Phone: (+33) 6 76 07 18 05