Olivier - Développeur C

Ref : 170403P001
Photo d'Olivier, Développeur C
Compétences
Expériences professionnelles
  • Expérience professionnelle

    OPTECH SASU (OWNER) – NOVEMBRE 2016 / NOW
    INTERNAL PROJECT – THEMATIC WEB MAPPING – APRIL 2020 / SEPTEMBER 2020 – AIX EN PROVENCE – FRANCE
    Server Dev: Setup and configuration of a Django server backed on a geographical and single timed postGiS
    database; Deployment of both http request and WebSocket communication mechanisms with clients.
    Web client (display): Django based client enhanced with usage of web workers to offload communication and
    computing tasks from main thread. Mapbox GL JS library is extensively used to display several hundred of
    animated features in real time.
    Qt Application (Create, Update, Read and Delete operations): C++ QT desktop application. Qt Quick controls
    and QML for the user interface. The application is built on the Model View Controller design pattern. To take
    advantage of the highly optimized Mapbox GL JS library, the application embeds the Web client through the
    WebEngineView and WebChannels QML types; Communication with the Django server is done through the
    WebSocket link. Final purpose is to port on Android, web assembly experimentation to be done.

    CONSULTANT – SIMPLICITI (2SCOMPUTING) – NOVEMBER 2019 / APRIL 2020 – AIX EN PROVENCE – FRANCE
    Test & validation: Development of several graphical user interfaces communicating, through an extended
    messages CAN bus and a HW test bed, with single or several embedded systems for the purpose of production,
    unitary, validation and integration tests. Python is widely used along with PyQT5 for the graphical interface.


    CONSULTANT - D DAY MEMORY TOUR – NOVEMBER 2016 / FEBRUARY 2017 – FLORIDA - USA
    WEB SITE DESIGN AND DEVELOPMENT
    The project is the design and development of the D DAY MEMORY TOUR web site: ********. The D DAY MEMORY TOUR company proposes highly immersive tours to recreate the atmosphere of the allies’ landing in Normandy in June 1944. The web site design is based on the "mobile first" and "responsive design" approaches based on Bootstrap. HTML, CSS, javascript and JQuery have been used for the development.
    BLACKBOXSECU – MAY 2016 / MID JULY 2016 – SOPHIA ANTIPOLIS - FRANCE
    DEVELOPMENT OF A SECURITY KEY EXCHANGE MECHANISM
    The objective was to join BLACKBOXSECU (********)as a co-founder. I acted as senior embedded software developer and system architect. I started to develop in C on a RASPBERRY PI platform a key exchange mechanism based on the Elliptic Curves Diffie-Hellman (ECDH) algorithm. I participated to the creation of the software development framework and test framework. The technical collaboration was excellent but discussion about company shares differed.
    TEXAS INSTRUMENTS (TI) FRANCE – OCTOBER 2001 / NOVEMBER 2015 – NICE - FRANCE
    DEVELOPMENT OF A RUNTIME LIBRARY FOR MULTICORE ENVIRONMENT - FROM 2010 TO 2015
    The project was to port the open event machine (OpenEM) runtime library on the TI KeyStone platforms (TMS320C6670, TMS320C6678 and TCI6638K2K). The main missions of OpenEM are to enable efficient scheduling, dispatching and load balancing of work across the cores of a KeyStone device, as well as efficient high-speed communication between KeyStone devices. OpenEM is able to manage lots (thousands) of events with low (less than 1000 DSP cycles) overhead. My task was to lead and develop the complete DSP software of the project. The project was commissioned by one TI major customer that now integrates the library as a standard in its TI based development platforms.
    • I participated to the definition of the software architecture. I was responsible for the coding and optimization of the generic parts and the DSP specific parts in C. I participated to the coding of the “work scheduler” and the “10 Gigabit Ethernet router” in assembly code. I interacted with the ARM Linux software developer. I was responsible for the validation of the library (over several hundred tests), for the benchmarking and the code coverage. I was in charge of the user’s guide and of the API specification document (Doxygen).
    • I participated to the creation and maintenance of an overnight continuous integration mechanism (“Jenkins” based) that automated, over several TI platforms, the build of the library (TI RTSC build system) and the creation of the release packages. It also automated the test regression on real TI hardware platforms, the computation of the benchmarks and the computation of the code coverage. The project was maintained using Git source control.
    • I was responsible for 30 customer deliveries over 5 years. “Active Collab” was extensively used to track the project and deliveries. I provided continuous remote and onsite support over 3 versions of the library, 2 of them being deployed in the field by the customer. The very good interaction with the customer always permitted the enhancement and development of the library in parallel with the development of the customer application.
    • Patent: System and method for scheduling jobs in a multi-core processor – 9047121 - February 25th 2013
    DEVELOPMENT OF SOFTWARE LAYERS FOR THE TI UMTS BASE STATION CHIP RATE RECEIVER CO-PROCESSORS - FROM OCTOBER 2001 TO JULY 2008
    The project covered all the generations of software layers that drove the TI UMTS chip rate receiver co-processors from the initial all hardware Correlation Co-Processor (CCP) going through the off-chip Programmable Correlation Co-Processor (PCCP), the built-in and tightly coupled RAKE software Accelerator (RSA) to the highly configurable built-in and loosely coupled RAKE receiver Accelerator Co-Processor (RAC). These hardware accelerators associated with their software functional libraries highly contributed to the success of TI in the UMTS macro base station market. My task was to continuously lead the development and the support of the software functional library dedicated to the UMTS Path Monitoring (PM) algorithm.
    • Functional Library for RAC from January 2005 to July 2008: I participated to the software architecture definition and translated this architecture into a UML description. I was responsible for the software functional specification and I used the UML description to automatically generate the API specification and the C header files. I developed the code using a C object oriented programing model. In the verification phase, I developed the complete set of basic functional tests and I created a graphical tool, based on memory dumps, to ease the debugging of the library. I closely interact with the validation team for the extensive validation phase. I supported the major base station providers in their product deployment over successive products for several years.
    • Functional Library for RSA from January 2007 to September 2007: I acted as a project leader. I reused the UML methodology for the specification documents, I interacted with the software developers and I managed the Integration of the library with a TI generic test bench. I fully applied the official TI software delivery for this project.
    • Driver for PCCP from June 2002 to February 2003: I developed in C the software drivers for an ARM11 sub-system. I supported the validation team during the validation of the associated hardware data path and I supported the customer during its product deployment phase.
    • C++ validation model for the CCP from October 2001 to June 2002: I developed the C++ model of the control path of the UMTS Path Monitoring hardware block of the CCP. The model was a memory less model, orthogonal to the VHDL implementation. I provided support during the integration with the hardware validation framework.
    INTERMEDIATE PROJECTS
    • Benchmarking activity from 2009 to 2010: Prior to the development of the OpenEM, I participated to the benchmarking of the TI Queue Manager Sub-System (QMSS) and Communication Port Programming Interface (CPPI) hardware accelerators to ensure the required performances will be achieved.
    • Development of an Edge Evolution library from 2008 to 2009: I participated in the refactoring and enhancement of a TI Edge Evolution software library. I created many python scripts to automate the refactoring. I developed a dedicated code coverage tool analysis using the TI DSP code compilation capabilities and I used HTML tags and CSS style sheets to format the results (the tool was reused for the OpenEM development).
    • Development of a UML UMTS Link Simulator from 2003 to 2004: I developed some of the software elements of the link simulator based on UML2.0 specifications by using the Telelogic TauG2 tool and a “message passing” mechanism. I Integrated the existing UMTS Path Monitor C++ model in the link simulator, developed and integrated the control layer of this model into the link simulator. I applied the same procedure to the UMTS symbol rate transmitter and receiver.
    PHILIPS CONSUMER COMMUNICATION – JULY 1998 / OCTOBER 2001 – LE MANS - FRANCE
    3GPP UMTS USER EQUIPMENT PROTOTYPE
    • As project leader, from December 2000 to October 2001: I coordinated the work of the 5 engineers developing the digital part of a UMTS terminal prototype.
    • As system Engineer, from July 1998 to December 2000: I specified and developed the RAKE receiver part of a UMTS terminal prototype. I coded in VHDL and integrated the functionality into Xilinx FPGAs. I designed, tested and integrated a dedicated board of 5 FPGAs into a PCI RACK. I participated to the validation of the UMTS terminal using a UMTS base station emulator.
    • Patent: Radio station comprising a receiver for receiving data transmitted along various paths and receiving method implemented in such a receiver – 20030053560 – March 20th 2003

Études et formations
  • COMPETENCIES
    PROGRAMMING LANGUAGES C, C++, Assembly, UML2.0, Python, Perl, Linux Shell, Javascript, HTML, CSS
    OPERATING SYSTEMS TI SYSBIOS, LINUX, bare metal
    TOOLS Eclipse, Jenkins, LSF usage, Git, Clearcase, Active Collab, TI RTSC build system, Bootstrap,
    JQuery, Google Maps API programming, Open Street Maps programming, PostgreSQL and
    PostGis, MySQL.
    DOMAINS OF ACTIVITY Telecom (GSM/EDGE, UMTS), multicore environments, DSP programming, Web Design
    LANGUAGES French native language, English full professional proficiency

    • PhD, Telecommunication – July 1999 - Laboratoire composants et systèmes pour Télécommunications (LCST) – INSA de Rennes. “Design and conception of a spread spectrum RAKE receiver for indoor radio propagation”
    • Master, Physic - Université de Bretagne Occidentale – Brest

    PROGRAMMING LANGUAGES C, C++, Assembly, UML2.0, Python, Perl, Linux Shell, Javascript, HTML, CSS
    OPERATING SYSTEMS TI SYSBIOS, LINUX, bare metal
    TOOLS Eclipse, Jenkins, LSF usage, Git, Clearcase, Active Collab, TI RTSC build system, Bootstrap, JQuery
    DOMAINS OF ACTIVITY Telecom (GSM/EDGE, UMTS), multicore environments, DSP programming, Web Design
    LANGUAGES French native language, English full professional proficiency

    For 15 years, I’ve developed embedded software on TI DSPs. I’ve conducted all steps of the software development from the specification going through the coding, the build system, the test, the benchmarking, the optimization, the delivery process and the customer support.
    I’ve been involved in well-structured and autonomous teams, based on efficient communication and interactions between engineers, to create and deliver reliable software products to the major customers of the wireless infrastructure market. I’m strongly acting as a team member, focusing on the team goals to see a functionality being materialized into a software product.
    Relying on my experience and knowledge, I’m now moving toward more independence, flexibility and diversity through the consulting activity.

    EDUCATION
    • PhD, Telecommunication – July 1999 - Laboratoire composants et systèmes pour Télécommunications (LCST) – INSA de
    Rennes. “Design and conception of a spread spectrum RAKE receiver for indoor radio propagation”
    • Master, Physic - Université de Bretagne Occidentale – Brest

D'autres freelances
Développeur C

Ces profils pourraient vous intéresser !
CV Analyste programmeur PHP
Mamadou

Analyste programmeur PHP

  • AMIENS
C PHP JAVA C++ SQL MYSQL Angular
Disponible
CV Ingénieur de développement JAVA
Meriem

Ingénieur de développement JAVA

  • VILLEJUIF
JAVA ORACLE SQL MONGODB UML PHP C PYTHON PHP LARAVEL ANDROID
Disponible
CV Ingénieur de développement C
Stéphane

Ingénieur de développement C

  • MONTROUGE
C C++ SQL PLUS SQL PL SQL ORACLE PRO C SCRIPT SHELL JAVA PYTHON Oracle Database 12c
Disponible
CV Etudiant
Colince

Etudiant

  • CALAIS
JAVA PYTHON C R REACT.JS DATA WEBDEV INFORMATICA SQL MONGODB
Disponible
CV Développeur
Aloïs

Développeur

  • NANCY
C++ SQL JAVASCRIPT REACT.JS C BASH NODE.JS PYTHON ASSEMBLEUR DOCKER
Disponible
CV Développeur FLUTTER
Hugo

Développeur FLUTTER

  • IVRY-SUR-SEINE
FLUTTER SQL C JAVA PYTHON C++ RUBY GIT
Disponible
CV Support utilisateurs
Houmedgaba

Support utilisateurs

  • PARIS
PHP WINDOWS PHP LARAVEL JAVA C++ SQL PL SQL MYSQL C C#
Disponible
CV Développeur JAVASCRIPT
Simon

Développeur JAVASCRIPT

  • PONT-DE-L'ARCHE
JAVASCRIPT PYTHON GO SELENIUM HTML5 C Rust
Disponible
CV Développeur Web - Python / Django
Aurélien

Développeur Web - Python / Django

  • ARCUEIL
PYTHON DJANGO HTML5 JIRA JAVASCRIPT CSS C C++
CV Développeur Jeux Vidéo
Loïc

Développeur Jeux Vidéo

  • BOUSSY-SAINT-ANTOINE
C# UNITY 3D .NET C++ C PYTHON
Disponible