My skills :
French (Mother Tongue)
English (Fluent) TOEIC 830/990
About 10 years of school practice.
Worked 9 months in Switzerland (work in English).
I frequently watch English Movies and TV shows.
I also read numerous English books.
German (School level) Worked 9 months in Switzerland (German for everyday life).
Auto-learning with Duolingo.
Spanish (School level) About 7 years of school practice.
Notions of Chinese 1 year of school practice.
Internship of one month in China (Wuhan) followed by 2 weeks of travel in this beautiful country.
Software and OS :
Embedded OS / RTOS : Embedded Linux, VxWorks, FreeRTOS, PikeOS Hypervisor (SYSGO)
Project/code management : Git (Github, Gitlab, Bitbucket), SVN, Gerrit, Jenkins, Jira
Development software : Qt Creator : Used it during my work in Switzerland (9 months at New Voice) and during my mission at Fresenius Kabi (more than 1.5 years)., Eclipse Indigo & Kepler : One year of school practice, two-month internship in embedded systems (Creating and using makefile project)., Keil μVision : Three years of school practice, used during personal and school projects., Wind River : 1 year of school practice., WampServer : Used for the design of this web site as well as to test many PHP and MYSQL features. Xilinx (Digital Electronics) : 1 year of school practice.,
Installation software : Inno Setup : Designed many installers to install the internal software on the production lines during my mission to Fresenius Kabi (more than 1.5 years).
Office software : Word processing ( ), Spreadsheet software ( ), Presentation software ( ), Messaging software ( ), ...
Graphics editing software :
Formal and numerical mathematics software : Maple : 2 years of school practice (Good). Matlab : School level (1 year of school practice at the ENSEA).
Modeling software : Electronics ( Pspice Schematics (Analog and Digital Electronics) : 1 year of school practice., Eagle : Used for the embedded alarm project., Cadence : Used for microelectronics (cleanroom) option. ), Mechanics ( )
Others : Wireshark : Used for personal projects and at Fresenius Kabi to retrieve frames sent/received by devices.
Computer languages :
Programming languages :
Very good level in
C++ Self-study followed by numerous project (check my Github).
9 month of C++/Qt work for New Voice (2015).
1.5 years of C++/Qt work for Fresenius Kabi (2016-2017). and in Python 2.7+/3+Self-study followed by numerous project (check my Github).
Used a bit during my work for New Voice (2015). , good level in Linux Shell Self-study followed by a year of school practice and intensive use during interships and jobs. , in C Self-study followed by a year of school practice. , in Low level C Two years of school practice, Wireless alarm school project, Two-month internship in embedded systems, using and creating "makefiles" and "load files" for projects that do not use software development. , in Assembly Three years of school practice, two-month internship in embedded systems (very useful for comparing compilers). , in Lua Self-study followed by personal projects with ESP8266 devices (check my Github). , in VHDL 1 year of school practice. and in Java 1 year of school practice folowed by self-projects (cryptography,lists). .
This website has been almost entirely created by me (But, the 'lightbox' display in the photography gallery is not mine and I was inspired by numerous menu templates to do mine)..
Database : Good level in SQL (MySQL/PostgreSQL) Self-study.
Applications and libraries developped for New-Voice using multiple databases (2015).
Numerous personal projects (for example: see StockMalin in the activity section)..
Auto-Test : Good level in Google Test and QTest Applications and libraries developped for New-Voice (2015) and Fresenius Kabi (2016-2017) needed to be tested with Google Test. In addition, the use of QTest was necessary in some cases..
Libraries : Very good level in Qt (C++), Protocol Buffers (Google), Boost (C++) and STL (C++) Applications and libraries developped for New-Voice (2015) and Fresenius Kabi (2016-2017) use Qt 4.7+/5+ and communicate with products using Protocol Buffers 'protocol'.
In addition, use of boost was necessary for New Voice apps when Qt did not implement the requested lib.
Development of numerous personal applications with Qt and STL..
Small libraries : CivetWeb, QJSON Design of a REST API with CivetWeb (https://github.com/civetweb/civetweb) and QJson (http://qjson.sourceforge.net). and PythonQt Allow to use C++/Qt libraries with Python 3 at Fresenius..
Other languages : Good level in Javadoc-Doxygen Intensive use of Doxygen (Javadoc for C language) during embedded systems internship.
UDP Development of an UDP communication library with Fresenius Kabi devices.
and MQTT Development of a MQTT communication library with Fresenius Kabi devices.
Design a proof of concept of MQTT communication via an IBM BlueMix server and a Raspberry Pi (mosquitto) for Mediane Systeme.
Use of the MQTT protocol for many personal projects including DoMotiQTT available on my Github.
Electronics : UART (RS-232/RS-485) I used the UART protocol in ALL the companies I worked for (Libraries design).
Design of a GSM communication library available on my Github., Modbus I used the Modbus protocol during my 1.5 years mission at Fresenius (I developped some tools to communicate with Modbus automaton)., CAN Cyberseptoid company project: Design of an independent electronics board to secure the communication between the 'critical' CAN and the 'basic' CAN in future cars (a proof of concept was realized but the company did not work).
Design of a CAN library during my internship at UXP and during my internship at Thales. and I2C Numerous personal projects available on my Github (knowledge acquired at ENSEA school).
Files transfert : FTP/FTPS Use of a private FTPs server.
Design of a software testing the security of an FTP(s) server (available on my Github). and TFTP Designed a TFTP library to load files into Fresenius Kabi products.
Secure Connection : SSH Daily use of SHH to manage my different servers.
Used during my work at New Voice for 9 months (secured computers). and SSL/TLS SSL/TLS layer used to add a certificate to my website (HTTPS with Let's Encrypt), MQTT during my various personal and professional projects, Mails (to manage my mails in @comte-gaz.com, SSH, FTP with safety tests available on my Github, ...).
Mail : IMAP/POP3/SMTP Management of my mails in @comte-gaz.com with certificates.
Scanner : Twain USB-TCP/IP Design of a C ++/Qt library to communicate with network or USB scanners with many options available thanks to the TWAIN protocol (format, quality, colors, gray level, ...).
Microcontrollers and boards :
Arduino and ESP8266 : Development of many libraries for my personal projects: RFID reader, Hygrometer, EEPROM I2C, Wireless remote controller, Proximity sensor, I2C Temperature sensor, Luminosity sensor, ...
NXP LPC17xx (ARM Cortex M3) : Development of a complete library on LPC1768 during my internship in embedded systems (CAN/USB/RS485/TIMER/RIT/DMA/Ana/Num/Startup/...).
This library should not use the library provided by NXP.
i.MX6 (ARM Cortex A9) : Hardware performance measurement tools design, drivers design with interruptions, creating secure applications (TrustZone) during my last internship within Thales.
PhyCARD - i.MX6 (ARM Cortex A9) : Design C++ applications (Witekio).
STM32F1xx (ARM Cortex M3) : Studied and used in engineering school and in all my personal and school projects.
Raspberry Pi 1/2/3 : Development of small programs for my personal projects (not available at the moment except for some Linux scripts that can also be used on Raspberry Pi).
Blackfin 537 : Development of a GPS frame processor driver (RS232 & DMA) to inform a CAN network of the date / GPS information if requested (documentation here).
Spartan-3E : Design of an improved telescreen.
Medical : ISO 13485 Frésenius Kabi consultant: Design of innovative products for the medical market..
Quality : ISO 9001 Frésenius Kabi consultant: Design of innovative products for the medical market with documentation to respect medical standards.
Mobility : Driving license (Car)
Something more : Really good ability to find information on the Web.