Software Architect Embedded & Real Time Systems
Total Page:16
File Type:pdf, Size:1020Kb
SOFTWARE ARCHITECT EMBEDDED & REAL TIME SYSTEMS EMMANUEL BLOT - 43 years old 688 chemin de la Clémencière F-83470 Seillons Source d’Argens, France Phone: +33 631 085 991 / e-mail: [email protected] PROFILE Software architect for embedded system devices on real-time, multi-threaded OS, with skills in IT administration, version control management & network solutions. QUALIFICATIONS French Graduate Engineering Degree awarded by ENIB 1997 Graduate Engineering School in Electronics and Computer Science A' levels in mathematics, physics and technical sciences, with distinction 1992 PROFESSIONAL EXPERIENCE TAGSYS, Aubagne (PACA) since 07/2016 Embedded Software Technical Leader. SW design & implementation in a small HW/FW team ★ RFID tag energiser with a Bluetooth LE communication link ‣ BLE 4.x peripheral device based on nRF52-832 (Cortex-M4F), using a custom BLE profile ‣ Device drivers - SPI, I2C, 1-wire, PLL, DCVGA, battery and temperature monitoring ‣ Analog UHF RFID signal detection, amplification and regulation ★ Bluetooth LE stack management, with CLI interface, scripting capability and various SW tools to support, test and drive hardware components, written in python 3 ★ Autonomous FW updater for nRF52-based device, with OLED screen and SWD master (ARM1126) ★ Production/Test bench for UHF RF splitter, with PyGTK3 GUI ★ I2C slave battery gauge emulator implementing a USB-CDC-ACM (VCP) bridge on STM32L4 ★ Embedded gateway application written in Python 3: ‣ Bluetooth LE central role, w/ TCP server and Google Protocol Buffer based protocol ‣ I2C+UARTs slave device management ‣ Linux Buildroot-based platform (Cortex-A8) ★ UHF band frequency shifter based on TI MSP430 with automatique UHF antenna selection ★ Bluetooth LE central / VCP bridge based on nRF52-840 USB dongle ★ Single-command build system for all projects (Python, STM32, nRF52, MSP430) ★ Full Docker build environment to ensure FW build reproducibility NEOTION, Aubagne (PACA) 08/2007-06/2016 (9 years) Software architect & technical leader for Digital TV in a 10-people development team ★ Design of technical solutions for the versatile Neotion product lines, ensuring coherence, evolution and security of the dedicated SDKs ★ Design & development of the system platform & drivers for integrated DVB CSA / CI+ modules dedicated to DVB-T/S/C digital TV receivers ★ Proposal, study & design of a new, cost-optimised, versatile manufacturing system, using an innovative solution based on Atom boards running Linux & Python ★ Design & development of an automated test infrastructure for remotely controlled embedded targets, with full integration to the preexisting continuous integration solution (Trac/SVN) ★ Development of debugging, programming and fusing tools for the Neotion ASICs ★ Full virtualisation of the Neotion hardware platform with a dedicated port of the QEMU emulator. ST MICROELECTRONICS, Grenoble (Rhône-Alpes) 01/2004-07/2007 (3 years 1/2) Software engineer for Symbian OS EKA2 / ARMv5 mobile phone targets, in an 8-people video team ★ Design & development of Symbian device drivers for 3G smart phones: camera, TV encoder, ... ★ Technical leader for C/C++ development and software design Contractor for MOTOROLA, Toulouse (Midi-Pyrénées) 10/2002-12/2003 (15 months) Software Engineer for Symbian OS 7.0s ARMv5 platforms, in a 6-people multimedia team ★ Development & integration of a Bluetooth device driver for UMTS/3G mobile phones Contractor for SMART FUSION, Sophia Antipolis (PACA) 01/2002-09/2002 (10 months) Software engineer for J2ME on Linux ARMv5 mobile devices ★ Design & full implementation of MIDp for embedded Linux SA1100 platforms, as well as low level APIs and drivers (frame buffer, touch screen, keypad, ...) ★ Design & implementation of a building environment for both C and Java projects SUN MICROSYSTEMS, Dublin (Ireland) 08/2000-12/2001 (1 year 1/2) Java Licensee Engineer - Support of SUN licensees on J2ME technologies (CLDC/MIDp) ★ Technical keynotes about J2ME technologies for SUN licensees ★ Technical expertise to mobile phone manufacturers, for integrating and porting J2ME technologies ★ Port of the kVM on the Psion Revo & performance optimisations of the VM I/O Contractor for Hewlett-Packard, Grenoble (Rhône-Alpes) 05/1999-07/2000 (14 months) Software engineer for Web technologies Linux x86 servers ★ Development of a web-based license management software, w/ Java & CORBA middle-ware Contractor for ALCATEL P.A.S., Valence (Rhône-Alpes) 08/1998-04/1999 (9 months) Software engineer on real-time VxWorks PowerPC devices ★ Development of a brand new generation device for postal sorting: high-level control layers and DMA driver for VME-InterBus interface benchmarking NATIONAL SERVICE, Salon de Provence (PACA) 10/1997-07/1998 (10 months) Network administrator ★ IT administrator on IBM AIX & Linux ★ Installation of a local intranet and PPP gateways to connect existing Ethernet/IP networks ★ C language and computer science teacher CANON RESEARCH CENTER, Rennes (Bretagne) 02/1996-07/1996 & 08/1997-09/1997 Software engineer for still image compression ★ Still image compression software optimisation for bubble-jet colour printer ★ Development of a multithreaded GUI for a still image wavelet compression library LANGUAGES French Native speaker English Fluent, 17-month job in Ireland (2000-2001). TOEFL’97 score 573 COMPUTER SKILLS Language C, Python 3 & 2, ASM, C++, Shell, Perl, Java, PHP, XHTML/XML, UML OS eCos, Minix, Linux, macOS, ChibiOS, FreeRTOS, Symbian, VxWorks, Windows ISA ARM v4/v5/v6/v7 32b & thumb, Intel x86, 8051, PowerPC, 68K CPU Cortex-M0+/M4, Cortex-A5, 7TDMI, 926-EJ/S, MSP430 Toolchain LLVM/Clang/lld, GNU (gcc, gdb, ld, gas), musl-c & newlib, TI, CMake/Make Cryptography AES, RSA, SHA, SSL, TLS SCM Trac, Subversion, GitHub, Git, CVS, ClearCase Network/Server Docker, Apache, LDAP, SQL, HTTP, SMTP, IMAP, TCP/IP, PPP, LLRP, GPB Bus Ethernet, USB, SPI, I2C, 1-Wire, JTAG/SWD, SCSI Wireless Bluetooth LE, RFID ADDITIONAL INFORMATION Member of the board of directors of the Microlight Aircraft French Federation (FFPLUM) ★ IT administrator and developer from 2013 to 2017 Former member of the ENIB graduated engineer association bureau ★ IT administrator and developer from 1998 to 2008 Open Source software developer ★ PyFTDI: USB-Serial/SPI/I2C/JTAG adapter driver as a pure Python module ★ PySPIFlash: SPI data flash reader/writer for PyFTDI ★ Trac free software, along with several dedicated plug-ins ★ Maintainer of a LLVM/Clang based cross-compilation toolchain for Cortex-M micro-controllers (Linux/Docker & macOS hosts) ★ Contribution (improvements, bug fixing, porting) to many open-source projects .