Bruno Martin
42 ans 20 av. Albert 1er de Belgique, 38000 Grenoble 06.20.52.95.65 bruno.martin.2@gmail.comDocteur en Optique, Développeur Logiciel Temps Réel et Ingénieur Traitement du Signal
Expérience professionnelle |
|
Depuis 2018 |
Depuis 2018Développeur logiciel responsable du développement de l'application C/C++ multithread et multiprocess temps réel de contrôle de boucle d'optique adaptative. Responsable du développement, des tests de l'intégration et du paquetage des librairies logicielles industrielles C/C++ et leurs wrappers C, Python, Matlab and LabVIEW et du produit ALPAO RTC. Administrateur de l'application web interne GitLab et responsable de la maintenance des serveurs d'intégration continue. Développement des outils temps réel (Python, NI-DAQmx). Responsable du support client logiciel international et discussion avec les fournisseurs internationaux pour intégration de nouveaux matériels temps réel dans les solutions ALPAO. Chef de projet du partenariat entre l'équipe de recherche du laboratoire d'astrophysique de Marseille et ALPAO pour de nouvelles fonctionnalités d'ALPAO RTC avec l'encadrement et la formation d'un développeur junior. |
---|---|
2012-2017 |
2012-2017Développeur logiciel à Resolution Spectra Systems. Développement des logiciels industriels de traitement de donnés, interface graphique et librairies logicielles pour les clients et l'utilisation interne. Développement, documentation, tests et maintenance des solutions C/C++ et Qt ainsi que des wrappers Python, C#, .NET et LabVIEW. |
2010-2011 |
2010-2011Collaborateur expert dans le cadre du projet SWIFTS 400-1000 à l'Institut de Planétologie et d'Astrophysique. Développement d'une transformée de Fourier rapide non uniforme et sous-échantillonnée. Développement du premier logiciel d'exploitation de l'instrument SWIFTS en C/C++ et Qt. Formation autodidacte sur la programmation orientée objet en C/C++, PHP, C#, java. |
2009 |
2009Post Doctorat à l'IMEP-LAHC. Amélioration des outils de simulation AFMM 2D courbe. Développement de l'AFMM 2D courbe en C/C++ à partir de la version Matlab. Dessin des nouveaux masques de lithographie pour la réalisation des prochains prototypes. |
2005-2009 |
2005-2009Doctorat en optique à I'IMEP-LAHC à Grenoble. Modélisation électromagnétique et développement du logiciel de simulation AFMM 2D courbe sous Matlab. Réalisation du spectromètre en optique intégrée sur verre par échange d'ions. Réalisation du banc de caractérisation optique pour analyser et qualifier les dispositifs réalisés. Présentations des travaux de recherche en conférences internationales et par des publications scientifiques. |
Formation |
|
2002-2005 |
2002-2005École Nationale Supérieure de Physique de Grenoble (ENSPG/PHELMA), double cursus Ingénieur – Master Optique (INPG), spécialité en instrumentation. |
---|---|
2000-2002 |
2000-2002Classe Préparatoire aux Grandes Écoles, PC, Lycée René Descartes, Tours. |
2000 |
2000Baccalauréat Scientifique, Poitiers. |
Compétences |
|
Développement logiciel |
Développement logiciel
|
---|---|
Scientifiques |
Scientifiques
|
Langues |
Langues
|
Expérience extra-professionnelle |
|
Microcontrôleurs |
Microcontrôleurs
Le but de ce projet est de prendre en main les microcontrôleurs STM32 (80MHz) et ESP32 (240MHz). L'exercice consiste à implémenter un horodateur d'évènements sur le STM32. On prévoit deux lignes d'entrée indépendantes capables d'horodater des front montant ou descendant sur la même base de temps. Les horodatages, précis à 12.5ns, sont encodés en entiers 32 bits et envoyés dans un packet UDP sur le réseau. On utilise un W5500 interfacé en SPI avec le STM32 pour envoyer ces paquets. On utilise d'abord la connection série pour renvoyer les statistiques sur les pulses détectés (moyenne, minimum et maximum de période). Puis, on utilise le système d'IRQ pour horodater les pulses. On utilise ensuite le transfert DMA pour envoyer les statistiques par connexion série UART. Enfin, on ajoute le W5500 par connection SPI avec transfert DMA pour envoyer les horodatages sur le réseau. Dans ce système, le ESP32 est utilisé comme générateur de pulses. Une API web est développée pour lancer l'émission d'un nombre de pulse spécifique à une fréquence donnée. Le dépôt de ce projet est à cette url esp32-pulse-emitter. Le code du STM32 est disponible à cette url : stm32-pulse-timestamper. On attends des fréquence de train de pulses de l'ordre de qques 10aine de kHz en émission et en lecture. |
---|---|
Qt4 |
Qt4Le but de ce projet est de prendre en main la library C/C++ Qt. Mouthus est un jeu de type Motus en version console et version bureau. On peut choisir le nombre de lettres et le programme vient piocher aléatoirement un mot dans un dictionnaire généré à partir de (Merci !) LEXIQUE. Le code est disponible à cette url : Mouthus |
Compute Web Appp |
Compute Web ApppCe projet concerne la distribution de calcul intensif sur un cluster hétérogène de machines. L'idée est une application central et des applications qui s'exécutent sur chaque machine. Chaque application tire les données de application centrale, effectue le calcul demandé et rend disponible les résultats. L'application centrale expose une API REST et propose une interface graphique légère en Vue.js visualiser les données, suivre la progression des process et visualiser les résultat. Le prototype est écrit en Python. L'implémentation finale est en C/C++ et utilise les librairies POCO C++, HDF5, Boost.Asio et Eigen C++. Le code est disponible à cette url : Compute Web App. |