Purple Labs
2004 – 2007Ingénieur logiciel, applications de téléphones mobilesChez Purple Labs (à Chambéry), j'ai intégré l'équipe MMI (Man Machine Interface : l'interface utilisateur) pour développer (en langage C) des applications comme le compositeur de MMS ou l'application caméra. La société réalisait des téléphones mobiles complets, de A à Z, avec une centaine d'ingénieurs (moitié hardware, moitié software), pour des opérateurs comme Telefonica (en Espagne et en Amérique du Sud), ou encore Bouygues Telecom.
Surtout, j'ai été confronté à une base de code beaucoup plus large que tout ce que j'avais connu, et en constante évolution (une cinquantaine de développeurs travaillaient dessus). Il y avait aussi beaucoup de bugs à corriger, ce qui m'a permis de faire mes premières armes avec le « JTAG » (un debugger hardware connecté au CPU).
J'ai réussi à corriger des bugs qui traînaient dans l'entreprise depuis plusieurs années ; mes capacités en debug ont été rapidement reconnues, et on m'a confié des tâches de plus grande envergure, jusqu'à la résolution de problèmes bloquants de dernière minute pour la mise en production d'un modèle de téléphone. C'est ainsi que je suis intervenu pour mon premier « debug-camp » chez Telefonica à Madrid, en mai 2005.
Selon moi, le debug (la correction d'anomalies) est plus formateur que le développement : comprendre et analyser du code écrit par d'autres personnes est plus difficile que de relire son propre code. (C'est aussi ce qui me permet aujourd'hui de comprendre le code proposé par l'IA, et de savoir ce qu'il faut garder, rectifier ou jeter.) J'en ai tiré mes propres techniques et principes : savoir isoler le code en cause, l'instrumenter, comprendre les patterns d'erreur à éviter. Ceci m'a permis de bâtir des fondements solides, et de savoir architecturer et réaliser du code fiable et robuste.







