J. T.
Ingénieur en logiciel embarqué
Linux
Hypervision
C++
C
Python
Jenkins
Confluence
Jira
Git
GitLab CI
U-Boot
Agile
Bash
CircleCI
Docker
■ EXPERTISES TECHNIQUES ET FONCTIONNELLES: ⇨ Programmation : C/C++, Shell, Python, autoconf, Makefile, XML,Assembleur, cross-gdb, cross-compilation ⇨ Outils : Git, SVN, gitLab, JIRA, Confluence, Jenkins, Artifactory, Nexus, Klocwork, Eclipse, Valgrind, Bugzilla, OpenWRT, Buildroot, crosstool-NG, U-boot, Assembla, CoreALM, DOORS, Wireshark/TcpDump, Iperf3, Spirent ⇨ Materiels : Residential Gateway (RGW), WiFi Extender, Automotive ECU, Cartes réseaux haut-débit (10Gbps), Set-Top Box (STB), cubieboard package, Rasbery Pi 3, sonde JTAG, ⇨ Microprocesseurs cibles : ARM Cortex, MIPS, Intel Atom, Motorola 68HC11, x86, cavium. ⇨ Système d’exploitation : Kernel Embarqué, µCLinux , GNU/Linux, Redhat Entreprise, Debian ⇨ Réseaux : Modèle OSI/TCPIP, VOIP (RTP, RTCP, SIP), Routage, PPPoE, DHCP, IGMP, MLD, DNS, Routage, QoS, Tunnel IP, L2Tunnels, VLAN (IEE802.1Q /1AD), VPN, OpenSSL, TLS, mobiles (2-4G), Wifi (IEEE802.11), NFC ⇨ Bus de communication : ISM(SagemCom), D B u s , ARINC629, I2C, UART, SPI, USB, RS232, CAN, LIN ⇨ Gestion des projets : Agile Scrum, GanttProject, Eclipse RTC (Rational Team Concert), UML, Rhabsody, Rectify ⇨ Gestion de configuration : Jenkins, Script (python, bash, TCL), autoconf, automake, makefile, fichiers *.ini ⇨ Standards et Normes : SYDTEMD, SYSTEMV, DVB-S, DVB-T, H.264, DLNA, ISO 14443, ECMA 340, IEEE 802.11, IEEE 802.15.4 ■ EXPERTISES FONCTIONNELLES : ⇨ Réseaux et Télécommunications ⇨ Systèmes embarqués (Télécoms, Automobile, Aéronautique, Multimedia) ⇨ Cryptographie sous Linux ■ TYPES D’INTERVENTIONS : ⇨ Conception des protocoles de communication suivant la Stack TCP/IP ⇨ Adaptation du noyau Linux sur une plateforme matérielle embarquée ⇨ Développement (driver, middleware et applicatifs) en langage C/C++ pour les systèmes embarqués
5-8 ans
d'expérience
500
par jour
3
expériences
Aucun
avis laissé
Préférences de missions
Recherche une mission freelance
Sur des missions ≥ 6 mois
Expériences
janv.2019Aujourd'hui
En poste
integrateur_application
Electrobit
C++
C
Linux
Hypervision
Git
GitLab CI
Python
Bash
■Contexte du projet Les travaux réalisés dans l’équipe FACE (Future Alliance Computing Environment), dans le cadre de développement d'un véhicule du futur : autonome, connecté avec des calculateurs hautes performances(High Performance Computing : HPC) tout en assurant la sureté et la sécurité dans un environnement hétérogène: Multi-coeurs(ARM Cortex A5x Sous POSIX OS(EB Corbos Linux à base de Linux Vanilla 4.14.x), ARM Cortex R7 pour security & Safety sous Classic Autosar OS(OSEK) ). Les multi-OS étant gérés par un Hyperviseur de class 1 développé par KernConzept. Le projet FACE s’inscrit dans le cadre de l’Alliance Elektrobit, Renault-NissanMitsubishi. ■ Tâches réalisées : ■ ■ SAFETY : Intégration d'un module de gestion des machines virtuelles (VMs)au niveau de l'Hyperviseur ⇨ Formation interne sur l’Hyperviseur (HV) en général et l'Elektrobit Hypervisuer(EBHV) en particulier. ⇨ Autoformation sur le langage LUA utilisé pour configurer l'HV Kernconzept. ⇨ Intégration d'un module R7command pour gérer la safety des VMs au-dessus de l’EBHV : Gracefull Start/Stop/Restart, Watchdog, ... ⇨ Tests unitaires, d'intégration et système ■ ■ Driver Linux : Développement d'un driver PTP (Precision Time Protocol) sur Linux Automotive 4.19 ⇨ Participation à l'amélioration de l'architecture PTP définis par AUTOSAR 19.03 pour le contexte d'un environnement hétérogène : Choix du Grand Time Master, des Master-Slaves et API pour les applicatifs souhaitant se synchroniser en PTP ⇨ Développement en C d'un Linux Platform driver pour récupérer l’horloge PTP en mémoire partagée et le aux applications et containers tournant dans une VM Linux Adaptive(Directement et dans les containers OCI) au-dessus de l'EBHV. ⇨ Développement en C et intégration de deux applications : Dans une VM et une autre dans un container sur VM pour récupérer l'horloge PTP du driver et synchroniser le clock système ⇨ Tests unitaires, d'intégration et système. ⇨ Support d’intégration chez le Client ■ ■ Adaptive Autosar : Migration des différentes versions (Generic et Applications) d’Adaptive Autosar : ⇨ AP_R17-10 vers AP_R18-10 ⇨ AP_R18-10 vers AP_R19-03 ■ ■ Adaptive Autosar : Développement des différentes applications basées sur les Protocoles d’Adaptive Autosar ⇨ Application de Diagnostic Automobile utilisant le protocole UDS(Unified Disgnostic Service) ⇨ Application de communication inter/intra process utilisant le protocole SOMEIP(Scalable service-Oriented MiddlewarE over IP) ■ ■ DevOps : Mise en place d'une solution d'intégration continue à base de Jenkins ⇨ Collecte et analyse des besoins sur base des composants logiciels du projet FACE ⇨ Découpages des besoins en fonctionnalités livrables par jalons (Agile) ⇨ Prise en main de l'outillage Hudson Jenkins : configuration des jobs, gestion des droits d'accès/Permission, gestion des artefacts, communication avec Github entreprise (Git Hooks), .... ⇨ Création et configuration des jobs(builds) Jenkins pour le projet FACE : Jobs paramétrables, jobs nocturnes(nightly) et manuels. ⇨ Développement des scripts bash de build du projet FACE utilisé en standlone et par jenkins: ⇨ Utilisation des technologies : Docker-ce/Docker containers, Yocto/OpenEmbedded ⇨ Utilisation de l'outil Google repo, git et git-lfs ⇨ Intégration adaptation et test des composants logiciels de la stack Adaptive Autosar ⇨ Participation à la définition d'architecture des outils métiers EB : Intégration continue avec Jenkins, Tests automatisés avec SCTM, gestion projet avec JIRA, .... ■ ■ Bugs Fixing ■ ■ Préparation des démonstrateurs client : Véhicule Renault Zoé ■ ■ Formateur git et Jenkins pour les collaborateurs de EB France ■ ■ Intégration et test des différents drivers NXP sur NXP S32G-EVB : PFE(Packets Forward Engine), HSE(Hardware Secure Engine) ■ Environnement technique ⇨ Système : GNU/Linux (Debian – Ubuntu), Automotive Grade Linux, Hyperviseur type 1, Containers OCI(Open Container Initiative), Stack Adaptive Autosar ⇨ Langage : C /C++, PYTHON, shell ⇨ Outils : Yocto/OpenEmbedded, DockerCE, git, git-lfs, google repo, QEMU ⇨ Matériel : Carte Électronique (Renesas M3/H3 Multicores : Cortex A53/57, Cortex R7, MultiOS : Adaptive Linux &
juil.2018janv.2019
7 mois
ingenieur_logiciel_embarque
Valeo
■Internal Training on POSIX and OSEK Real-Time Systems ■ Formation Interne sur les outils utilisés : ⇨ Modélisation & gestion de projet : Rapsody, DOORS, Rectify, PSNext o Colaboratifs : Assembla, CORE ALM ⇨ Collaboratifs : Assembla, CORE ALM ■ Implémentation d'un protocole de synchronisation d'horloge temps réel sur Integrity RealTime OS ⇨ Etude des solutions existantes pour synchroniser les vidéos(Camera d'enregistrement du conducteur) ⇨ Identification des problèmes liés a l'utilisation de cette solution ⇨ Proposition d’un nouveau mécanisme de synchronisation des trames vidéos ⇨ Implémentation en C/C++ de la solution proposée ⇨ Tests unitaires et d’intégration ■ Intégration de différentes briques logiciels des équipes Valeo pour faire un logiciel livrable au client ■ Automatisation de la chaîne de compilation basée sur GreenHills Compiler pour ARM ■ Tests et validation logiciel ■ Environnement technique ⇨ Système : GNU/Linux (Debian – Ubuntu), Integrity RealTime OS ⇨ Langage : C /C++, PYTHON, shell ⇨ Outils : GreenHills cross-compiler pour ARM, U-Boot, Assembla, git, CoreALM, DOORS, Rectify. ⇨ Matériel : Carte Électronique (Freescale IMX6, ARM Cortex A9, Caméra, Ethernet, Bus CAN)
févr.2015juin2018
3 ans et 5 mois
ingenieur_logiciel_embarque
Sagemcom Broadband SAS
■ Projet 1 : Développement logiciel pour un terminal Haut-débit (Passerelle Résidentielle : RGW) – Pour l’opérateur Bell Canada ■ Développement d’un driver + Applicatif pour la collecte des informations de connexion PPPoE Passthrough ⇨ Configuration du Kernel pour activer le logging des packets PPPoE Passthrough Session (PPPoES) et Discovery(PPPOED) ⇨ Développement d’un module kernel (driver) pour l’interception des paquets et leur analyse (packet processing) ⇨ Développement d’une API pour la collecte des informations sur les paquets par l’application utilisateur ⇨ Sauvegarde des informations dans le Datamodel TR-181 spécifique Bell Canada ⇨ Tests unitaires, fonctionnels et d’intégration ■ Optimisation des modules spécifiques opérateurs (OSM) ⇨ Regrouper plusieurs modules (WAN, TV, VoIP, Bouton, Ecran, Statistiques, Batterie, …) dans un seul afin d’optimiser le code, le temps de communication sur la Gateway et de boot (de 4 à 1min30’) ⇨ Implémentation des nouvelles spécificités opérateurs : Statistiques, DNS, PPP, DHCP, DNS Relay, IGMP, Autosensing (switching entre différentes technologies de communication : ADSL, VDSL, GFAST, FTTH, SFP en fonction du mode de connexion (DHCP, PPP)) ⇨ Tests unitaires et d’intégration ■ Bugs fixing ⇨ Identifier et corriger les bugs dans le middleware et Kernel ⇨ Remonter quelques bugs a Broadcom (fournisseur de Chipset de la Geteway) ■ Intégration (en amont) des livraisons des fournisseurs avec les remontés des problèmes constatés et participation à leur résolution : ⇨ Broadcom : Driver XDSL (ADSL, VDSL, G.Fast, VDSL Bonding, SFP) ⇨ Samknows : Speedtest ⇨ Lixar : GUI (Graphical User Interface) ■ Création de nouveaux produits (2) à partir d'un produit existant BELL CANADA ⇨ VLAN Tags : IEEE 801.1Q et IEEE 802.1AD, gestion de VLANs natifs pour le traffic sans VLAN entre le réseau LAN et la Gateway ⇨ Gestion de QoS (Quality of Service) pour correspondre aux demandes de l'opérateur : iptables, ebtables, traffic class et traffic queeing management, IPMasquarade,... ⇨ Configuration et implémentation des spécificités WiFi: SSID, BSSID, AccessPoint,… ■ Projet 2 : Développement logiciel pour un Réseau des extendeurs WiFi– Pour l’opérateur British Telecom(BT) ■ Développement d’un module (Application sans IHM) pour la collecte des usages Internet(DataUsage) ⇨ Etude de différents cas de configuration par rapport aux topologies réseaux spécifiques BT (Topologie arbre, Daizy chain, mixte) ⇨ Définition des schémas des bases de données SQLite utilisés pour stocker les informations DataUsage collectées ⇨ Démonstration de faisabilité avec les scripts (bash pour la manipulation des BDD, python pour l’implémentation des RPC (Remote Procedure Call) ⇨ Implémentation en C/C++ : Collecte des datausages, leur synchronisation, RPC dans des différentes configurations ⇨ Implémentation des mécanismes de synchronisation des bases de données des datausage entre les différents extendeurs (Master-Slave, Slave-Slave, WiFi et Ethernet) en utilisant le Bus ISM Sagemcom ⇨ Tests unitaires et d’Intégration ⇨ Rédaction du document Technique et Manuel utilisateur ■ Environnement technique ⇨ Système : GNU/Linux (Debian – Ubuntu) ⇨ Langage : C /C++, SQLITE 3, PYTHON, Shell ⇨ Outils : cross-compilation, openwrt, autotools, cross-gdb, U-Boot, Bugzilla, git, svn, valgrind, qemu, wireshark/tcpdump, spirent, strace, ltrace ⇨ Matériel : Residential Gateways (ARM Cortex A9; PORTS: XDSL, SFP, FTTH; Ecran OLED; Batterie; Bouttons capacitifs, Datamodel TR-69/181/181-bell CANADA), WiFi-EXTENDER(IEEE 802.11ax)
Formation
Obtentionsept.2013
Conservatoire National des Arts et Métiers de Paris (CNAM)
Master 2 Systèmes Embarqués et Mobiles Sûr
Obtentionjuin2012
Université Paul Sabatier de Toulouse
Master 2 Informatique et Télécommunications