# Ibraverse > Développeur logiciel senior chez Zebra Technologies : vision industrielle, IA et traitement d'images. Je développe les algorithmes de mesure au cœur des logiciels de vision industrielle — la géométrie, la calibration et la mesure de contours sur lesquelles reposent les applications d’usine. En C++, chez Zebra Technologies à Montréal, sur l’Aurora Imaging Library, et chez Matrox Imaging avant que les deux ne deviennent une seule entreprise. L’essentiel du métier n’est pas d’écrire l’algorithme. C’est de convenir de son comportement avec les équipes d’interface, de documentation et de test avant la livraison, puis d’entrer dans les applications que les clients n’arrivent pas à faire fonctionner — c’est là qu’on découvre ce qu’il fait vraiment. En dehors du travail, je construis des choses qui exigent des données que personne ne publie : un réseau de transport pour un pays sans horaires, une cellule robotisée pour tester du code de commande contre une vraie physique, deux mois de relevés de pannes électriques enregistrés à la minute pour savoir si les heures de rétablissement annoncées tiennent. Les projets et les articles sont documentés ici avec ce que chacun m’a appris, y compris ce qui n’a pas marché. ## Projets — Des projets menés de bout en bout — le problème, ce qu'ils sont devenus, et ce que chacun m'a appris. - [MeteoData](https://ibraverse.ca/projects/meteodata/): I graded three weather services against the station next door, to find out which parts of a forecast you can actually believe. - [Wingo](https://ibraverse.ca/projects/wingo/): Helps a group of friends pick where to go out, and settles it, instead of a chat that never decides. - [Farkad](https://ibraverse.ca/projects/farkad/): A health tracker you talk to: say what you ate, drank and did in one sentence, and it records it. - [RoboNode](https://ibraverse.ca/projects/robonode/): A robot arm you drive from your browser, to test robotics code against real physics before touching hardware. - [Domia](https://ibraverse.ca/projects/domia/): Software that tests other software by reading the screen and clicking, the way a person would. - [Bâtir](https://ibraverse.ca/projects/batir/): Answers Algerian construction questions in Arabic, French or English, and shows the building rule behind each answer. - [HydroData](https://ibraverse.ca/projects/hydro-quebec/): I recorded every power cut in Québec for two months, to see how often the power really returns when they say it will. - [TikiPro](https://ibraverse.ca/projects/tikipro/): Gives a small clinic a numbered queue on a screen, so patients stop asking who is next. - [Rekba](https://ibraverse.ca/projects/rekba/): A bus, tram and metro app for Algeria, where no usable timetable existed until I built one. - [Leorra](https://ibraverse.ca/projects/leorra/): An app for sending a parcel abroad with a traveller who has room in their suitcase. ## Tech — Articles techniques sur le traitement d'images, les maths et le code. - [Montréal Forecast Reliability: Three Services, Two Places, 882 Comparisons](https://ibraverse.ca/tech/montreal-forecast-reliability/): Three forecast services, two places in Montréal, every prediction graded against the weather station beside it over five days. Temperature holds up. Rain does not — 70% of the rain calls never happened. Interactive report, gradeable from one hour ahead to twenty-four. - [Hydro-Québec Outage Analysis: Two Months of Grid Reliability Data](https://ibraverse.ca/tech/hydro-quebec-outage-analysis/): A two-month reliability study of Hydro-Québec's public outage feed — regional reliability, Montréal boroughs, ETA accuracy, causes, record outages, and the data pipeline behind it. Interactive charts + map. - [How AI Agents Will Replace Software Testers: Building One That Tests a Live Site](https://ibraverse.ca/tech/ai-agents-software-testing-domia/): A practical guide to what AI agents actually are, and DOMIA — an autonomous end-to-end testing agent built on Google ADK and Gemini. - [Comment le traitement d'image a sauvé mon vol : codes-barres et couleur de premier plan](https://ibraverse.ca/fr/tech/barcode-flight/): Un exemple concret de l'importance du support de la couleur de premier plan dans la lecture de codes-barres. - [Edge Measurement in Industrial Vision: Counting Saw Blade Teeth](https://ibraverse.ca/tech/image-histograms/): Counting the teeth on a saw blade looks trivial and is not. How edge measurement actually solves it, and which part of the method decides whether it works. - [Building a Chatbot That Answers From Your Own Documents](https://ibraverse.ca/tech/rag-montreal-pools/): Public schedules are published as pages nobody can query. This builds a chatbot that answers questions about Montréal's indoor pool times, and explains how retrieval over your own documents works. - [Finding an Infinite Loop in Scikit-Learn's K-Means](https://ibraverse.ca/tech/scikit-learn-kmeans-infinite-loop/): Finding and reporting an infinite loop in scikit-learn's K-means empty-cluster handling, and how the fix was reached. - [Windows Memory Management in Depth: Private Data, Stack, Heap and Mapped Files](https://ibraverse.ca/tech/windows-memory-management-deep-dive/): A detailed walk through Windows memory states and memory types — private data, stack, heap, mapped files, images — with VirtualAlloc, File Mapping and std::vector examples. - [Windows Memory Management: Virtual vs Physical, and How to Measure It](https://ibraverse.ca/tech/windows-memory-management-overview/): An introduction to how the Windows Memory Manager separates virtual from physical memory, and a C++ tool for tracking a process's usage over time. ## Aventures — Carnet de Montréal et d'ailleurs — lieux, cuisine et recommandations honnêtes, chaque article s'ouvrant sur une courte vidéo. - [Auberge Estonia: A Nordic Spa Cabin Escape in Rawdon, One Hour from Montréal](https://ibraverse.ca/adventures/auberge-estonia-rawdon/): A forest auberge in Rawdon, Lanaudière — free Nordic spa with hot tubs and a Finnish sauna, a cold-plunge lake, BBQ cabins, and hiking trails on the estate, all about an hour from Montréal. - [Indian Head & Rainbow Falls: The Adirondacks' Best Day Hike](https://ibraverse.ca/adventures/indian-head-rainbow-falls/): An 11-mile loop to a fjord-like vista over Lower Ausable Lake and a 150-foot waterfall — the most rewarding easy-graded hike in the Adirondack High Peaks. ## Pensées — Pensées personnelles, philosophie et expériences de vie. - [Why Deadlines Slip, Mine Included](https://ibraverse.ca/thoughts/estimates-and-the-five-percent/): Hydro-Québec's restoration times were right one time in twenty. I recognised the failure immediately, because I make the same one. ## Facts The numbers from each project, taken from the page they belong to. ## Career ### 2024 — Aujourd'hui — Développeur logiciel senior, Zebra Technologies - Built: Aurora Imaging Library, Caméra intelligente Aurora Focus - Stack: C++, algorithmes de vision industrielle, imagerie embarquée - Tools: Visual Studio, Git / GitHub, JIRA - Learned: 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 - Built: API Advanced Geometric Matcher, Modules 2D de la MIL, Exemples d'API pour les clients - Stack: C++, appariement géométrique, métrologie, optimisation non linéaire, apprentissage classique - Tools: Visual Studio, Git / GitHub, JIRA, Agile - Learned: 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. - Built: Appariement de motifs, Détection de contours, Calibration, Mesure et métrologie - Stack: C++, optimisation non linéaire, Levenberg–Marquardt, apprentissage classique - Tools: Visual Studio, Git, SVN - Learned: É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. - Built: Théorie du contrôle, Robotique, Traitement d'images - Stack: C++, commande numérique, détection et estimation, commande stochastique et robuste, traitement d'images - Tools: QNX, ROS, MATLAB / Simulink, robots Fanuc - Learned: 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. - Built: Régulateur de vitesse adaptatif pour véhicule autonome, Programme d'automate pour une machine d'assemblage industrielle - Stack: C, MATLAB, VHDL, conception de commande, identification de procédés, commande optimale - Tools: Unity-Pro (Schneider), Simatic-Manager (Siemens), Simulink, LabVIEW - Learned: 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. ## Reference - [CV](https://ibraverse.ca/fr/resume/): Ingénieur en vision industrielle et traitement d'images — Zebra Technologies, Matrox Imaging, Polytechnique Montréal. - [Tags](https://ibraverse.ca/tags/): every subject on the site, 1 terms. - [Full text](https://ibraverse.ca/llms-full.txt): every page above as plain text, in one file. - [Sitemap](https://ibraverse.ca/sitemap.xml) ## Languages - English (en): https://ibraverse.ca/ - Français (fr): https://ibraverse.ca/fr/ - العربية (ar): https://ibraverse.ca/ar/