Brahim Redouane Mellah

Développeur logiciel senior — vision industrielle et IA

Montréal, Québec

Expérience

2024 — Aujourd'hui

Développeur logiciel senior Zebra Technologies

Démonstration de l'Aurora Imaging Library dans Aurora Vision Studio

Des algorithmes sur lesquels d'autres livrent

L’un des ingénieurs responsables des algorithmes de la bibliothèque. Le travail va bien au-delà du code : fixer le comportement avec les équipes UI, documentation et test avant la livraison, et entrer dans les applications que les clients n’arrivent pas à faire fonctionner.

La caméra intelligente Aurora Focus en inspection sur un banc

L'inspection qui s'exécute dans la caméra

Porter la bibliothèque d’imagerie dans la caméra elle-même, pour que l’inspection s’exécute sur l’appareil plutôt que sur un PC relié.

Réalisé
Aurora Imaging Library Caméra intelligente Aurora Focus
Technologies
C++ algorithmes de vision industrielle imagerie embarquée
Outils
Visual Studio Git / GitHub JIRA
Appris
Une bibliothèque ne devient un produit que lorsque l’algorithme, la documentation et les tests disent la même chose — et les désaccords apparaissent dans l’application d’un client bien avant les tests.

2022 — 2024

Développeur logiciel II Zebra Technologies

La géométrie sous les modules 2D

Model Finder, Edge Finder, Measurement, Metrology, Calibration et Bead — résoudre, implémenter et déboguer la géométrie, l’algèbre et l’optimisation non linéaire qui les portent, et élargir les tests qui les protègent. L’Advanced Geometric Matcher est passé d’un algorithme interne à une API publique, conçue avec l’équipe.

Notes de la spécialisation en apprentissage profond

Faire entrer l'apprentissage automatique dans une bibliothèque géométrique

Intégrer l’apprentissage automatique classique dans des modules jusque-là purement géométriques, puis documenter les nouvelles API et écrire les exemples clients livrés avec. Encadrement de stagiaires.

Réalisé
API Advanced Geometric Matcher Modules 2D de la MIL Exemples d'API pour les clients
Technologies
C++ appariement géométrique métrologie optimisation non linéaire apprentissage classique
Outils
Visual Studio Git / GitHub JIRA Agile
Appris
C’est en écrivant la documentation et les exemples qu’une API est vraiment mise à l’épreuve — les questions qui reviennent portent sur l’interface, presque jamais sur l’algorithme.

2019 — 2022

Développeur logiciel Matrox Imaging

Matrox Imaging a rejoint Zebra Technologies en 2022 ; le travail s’est poursuivi sans interruption.

Le traitement d'images industriel dans la Matrox Imaging Library

Apprendre le métier

Premier emploi après la maîtrise, sur les modules qui mesurent : Calibration, Measurement et Metrology. Conception de l’Advanced Geometric Matcher, l’algorithme devenu plus tard une API publique.

Travail au cœur de la base de code de la Matrox Imaging Library

Travailler dans une grande base de code C++

Remplacer d’anciens solveurs des modules de géométrie par des optimiseurs non linéaires, dont Levenberg–Marquardt, dans une bibliothèque dont des milliers d’applications installées dépendent.

Réalisé
Appariement de motifs Détection de contours Calibration Mesure et métrologie
Technologies
C++ optimisation non linéaire Levenberg–Marquardt apprentissage classique
Outils
Visual Studio Git SVN
Appris
Écrire un meilleur algorithme est la partie courte ; l’intégrer à une bibliothèque dont d’autres dépendent déjà, sans changer une réponse sur laquelle ils comptent, est la partie longue.

2017 — 2019

M.Sc.A., génie des systèmes de contrôle Polytechnique Montréal

Moyenne 3,87/4 · Bourse de la Fondation Al Ghurair — 1 sur 100 parmi plus de 15 000 candidatures.

À propos de la bourse de la Fondation Al Ghurair

Comment je suis arrivé au Canada

La bourse a été accordée au mérite académique et a financé la maîtrise. C’est la raison pour laquelle la suite de cette page se passe à Montréal.

Robotique et contrôle temps réel pendant la maîtrise

Des systèmes, pas seulement des cours

Chaque cours qui comptait se terminait par quelque chose qui devait fonctionner : un robot qui devait atteindre le point, un contrôleur qui devait tenir son échéance, une caméra qui devait dire au bras où était la pièce.

Réalisé
Théorie du contrôle Robotique Traitement d'images
Technologies
C++ commande numérique détection et estimation commande stochastique et robuste traitement d'images
Outils
QNX ROS MATLAB / Simulink robots Fanuc
Appris
Une loi de commande juste sur le papier et en retard de dix millisecondes est fausse — l’échéance fait partie du cahier des charges, pas des détails d’implémentation.

2012 — 2017

Ingénieur d'État, génie électrique — systèmes de contrôle École Nationale Polytechnique, Alger

Moyenne 17,5/20 · 5e sur 1 400 — top 1 % national.

Les années de classes préparatoires à Alger

Deux années de classes préparatoires d'abord

Mathématiques, physique et programmation, de 9 h à 18 h, six jours par semaine, avec un classement final qui décide de l’école où l’on entre. C’est de là que vient l’habitude de travailler un problème jusqu’à ce qu’il soit réellement résolu.

Projets de contrôle et d'automates pendant le diplôme d'ingénieur

De l'ingénierie qui sort de la salle de cours

Le diplôme s’est terminé sur des systèmes de contrôle construits face à du vrai matériel et à de vraies contraintes d’usine, plutôt qu’à leurs simulations.

Réalisé
Régulateur de vitesse adaptatif pour véhicule autonome Programme d'automate pour une machine d'assemblage industrielle
Technologies
C MATLAB VHDL conception de commande identification de procédés commande optimale
Outils
Unity-Pro (Schneider) Simatic-Manager (Siemens) Simulink LabVIEW
Appris
Le matériel se moque de l’élégance du modèle : la première machine d’assemblage que j’ai programmée passait ses pannes sur des capteurs et du câblage, pas sur la logique de commande travaillée tout le semestre.

Compétences

Langages
C++ C Python Dart / Flutter TypeScript MATLAB VHDL SQL
Vision industrielle
Aurora Imaging Library Matrox Imaging Library OpenCV appariement géométrique calibration métrologie mesure de contours
Maths & algorithmes
optimisation non linéaire Levenberg–Marquardt théorie du contrôle apprentissage classique apprentissage profond pipelines multi-agents
Infonuagique & backend
Google Cloud Firebase Cloud Functions Firestore Cloud Storage FastAPI Prefect
Systèmes & outils
systèmes temps réel QNX ROS Git / GitHub SVN Simulink LabVIEW Unity-Pro (Schneider) Simatic-Manager (Siemens) JIRA
Langues
français anglais arabe

Certifications

  • 2023 Neural Networks and Deep Learning · Convolutional Neural Networks DeepLearning.AI
  • 2023 Machine Learning: Classification University of Washington