Formation
Bacc en génie informatique (B. ing)
Profil architecture de système
Université Laval (2000– 2004)
Maitrise en administration des affaires (MBA)
Profil Gestion des entreprises
Université Laval (2006-2010)
Attestation, Programme Administrateurs de la relève
Collège des administrateurs de sociétés (
Membre de l’Ordre des Ingénieurs du Québec
Depuis 2004
Matricule: 137373
Compétences
Cette liste n’est pas exhaustive.
Bilingue (Français langue maternelle, Anglais avancé parlé et écrit)
Langages et librairies:
C++ (SQL, Boost, OpenGL, QT, C++11, OpenCV, STL, OpenCL)
C, Objective-C, Matlab (language M et S-Functions), Simulink, PHP, Fortran, Lua, Python, Java, C#, SQL, JavaScript, Java, UML.
Environnements:
Visual Studio (6, 2003, 2005, 2008, 2010, 2012, 2015)
KDevelop
CMake
Matlab
XCode
Plateformes:
Windows 98 à Windows 10. Linux/Unix, QNX (OS temps réel). MacOS X. iOS. Android. Programmation embarquée (PIC, 68000)
Outils:
CMake, CTest, CDash, CPack, RSLink, CppTest, CppUnit.
Protocoles:
HLA (1.3, 1516, 1516e), DIS (V4-5-6-7, V-DIS), UDP, TCP, BACnet/IP
Expertise:
Intégration, gestion de projet, sécurité (encryption, sécurité logicielle), reprise de projet, assurance qualité, tests automatiques. Gestion de projet via les methodologies Agile ou Waterfall. Gestion d’équipe, planification et budget.
Expériences
Cette liste n’est pas exhaustive.
Pour un client local dans le domaine de l’automatisation
Restructuration du département de développement logiciel et reprise d’un projet logiciel corporatif. Formation du personnel et mise en place de processus afin d’assurer le succès des développements futurs.
Pour un client local dans le domaine des applications web
Effectuer une analyse de la cyber-sécurité de l’entreprise via les normes ISO 27001/ISO 27002 ainsi que via le protocole « Framework for Improving Critical Infrastructure Cybersecurity ».
Pour un client dans le domaine de la R&D
Depuis 2002, j’agis à titre d’architecte et développeur principal d’un produit de simulation dans le domaine du bois. Le logiciel est développé en C++, sous Windows (Visual Studio 2010).
Pour un client dans le domaine de la R&D
Développer un système d’assurance qualité dans le domaine du sciage permettant de déterminer en temps réel la divergence de la production par rapport à une situation optimale. (C++, PHP, RSLink (PLC), WebServices)
Pour un client dans le domaine de la R&D
Rapport d’analyse technique en lien avec l’évaluation de la qualité des algorithmes de calcul de torsion et courbe de pièce de bois. Utilisation et analyse des résultats d’une tête de numérisation CreaForm et reconstruction d’un modèle 3D.
Pour un client dans le domaine de la visualisation
Développement d’un API C pour faciliter l’interopérabilité de simulateur utilisant les normes HLA (IEEE 1516-2010) et DIS.
À partir de l’API C, développer un API de plus haut niveau en C++ (orienté objet). Développement des interfaces utilisateurs en QT 4 (et passage à QT 5 par la suite). Une certaine partie est fait en LUA. Le module est compatible avec Windows, Linux et MacOS X.
Pour un client international
Développement d’un module (plug-in) pour Matlab et Simulink permettant l’échange d’information en utilisant la norme de simulation distribuée HLA (IEEE 1516-2010) (C++, C). Le module est compatible avec Windows, Linux et MacOS X.
Pour un client international
Développement d’un module (plug-in) pour Matlab et Simulink permettant l’échange d’information. L’échange se faisait via un protocole UDP que j’ai développé. Le protocole devait supporter les hautes fréquences et s’adapter facilement à tous types de données.
Pour un client local
Pour une compagnie de Québec; reprendre le développement d’un simulateur de comportement humain, effectuer une révision complète du code et une documentation de ce dernier, effectuer des améliorations dans le moteur mathématique. (C++, ProfUIS)
Pour un client local
Pour une compagnie de Québec; effectuer le développement d’une solution pour assurer la distribution, l’activation et la gestion des mises à jour automatiques des logiciels de cette dernière. Le système permet une sécurité logicielle et peut, selon les besoins, effectuer une sécurité physique (dongle). Le projet a été effectué en C++ et QT. Le module est compatible avec Windows, Linux et MacOS X.
Pour un client international
Intégration de la norme HLA dans un simulateur de satellite (STK). Développement d’un module pour Simulink permettant l’échange d’information directement avec STK.
Autres projets
- Conception d’une interface de saisie, avec connectivité USB (via les drivers HID) en utilisant un PIC (C et assembleur);
- Adaptation d’un protocole de simulation distribué incluant une notion de Human-in-the-loop (le microcontrôleur effectuait de la lecture de donnée, construisait un paquet UDP et l’envoyait à un serveur qui lui agissait comme node dans un système complet de simulation distribué) (C);
- Intégration du protocole BacNet dans un système de monitorage de capteurs (Java);
- Programmation d’une application Android pour interfacer avec le protocole BacNet (Java, sous Android);
- Analyse des algorithmes de calcul du gauchissement et de torsion d’une pièce de bois de manière à détecter les sources d’erreurs. Rédaction d’un rapport et proposer des solutions techniques pour corriger le problème(via PolyWorks et son language de scripting);
- Analyse d’image pour l’identification des défauts visuelle sur une pièce de bois (C++);
- Création d’un module pour SugarCRM pour la gestion des licences logicielles (PHP);
- Création de services web pour la gestion des activations et de la mise à jour automatique de logiciel (PHP).
Contributions OpenSource