Mon parcours

Plus de 20 ans d'ingénierie logicielle : de l'embarqué chez NVIDIA aux applications web, mobiles et IA en freelance.

Ingénieur diplômé en 2004, j'ai passé 11 ans dans l'industrie du mobile et de l'embarqué, sur des logiciels où un bug peut bloquer la sortie en production d'un téléphone. Freelance depuis 2016, je conçois et je livre des applications web, mobiles et IA pour des clients français, 100 % à distance : plus de 40 projets, des spécifications à la mise en production.

Discutons de votre projet — appel gratuit de 30 minPrise de rendez-vous immédiate · 8h–15h, du lundi au samedi
Jonathan Roux
20+ans d'expérience
11 ansen entreprise
40+projets livrés en freelance
65 000+participants aux formations
170 000+abonnés YouTube
2004 – 2015

Développeur logiciel : 11 ans en entreprise.

Diplômé en 2004 de l'ESEO à Angers (école d'ingénieurs en électronique et informatique), avec une spécialisation en logiciel embarqué et temps réel, j'ai immédiatement démarré ma carrière d'ingénieur logiciel dans l'industrie du téléphone mobile. Pendant 11 ans, je suis intervenu sur toutes les couches logicielles d'un téléphone mobile : des applications chez Purple Labs aux drivers et routines assembleur chez Trusted Logic et NVIDIA.

Purple Labs

2004 – 2007Ingénieur logiciel, applications de téléphones mobiles

Chez 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.

Trusted Logic

devenu Trustonic2007 – 2010Ingénieur logiciel, sécurité des plateformes mobiles

En 2007, j'ai rejoint Trusted Logic (aujourd'hui Trustonic) à Sophia Antipolis, une société spécialisée dans la sécurisation avancée de données (paiements, DRM…) pour des plateformes mobiles (TrustZone sur processeurs ARM). J'ai travaillé en collaboration étroite avec les équipes de Texas Instruments (le client principal) pour intégrer l'OS sécurisé sur le TEE (Trusted Execution Environment) des plateformes OMAP 3 et OMAP 4.

La première tâche que l'on m'a confiée : écrire le code assembleur ARM qui fait basculer le processeur du mode utilisateur au mode superviseur dans l'OS « Secure World ». J'ai principalement codé en C et en assembleur, sur du driver Linux bas niveau (proche du matériel) et sur du debug d'intégration entre le « Normal World » (l'OS du téléphone : Android, noyau Linux) et le « Secure World » (l'application sécurisée qui contient les clés).

J'ai dû me plonger dans l'architecture des cœurs ARM (les caches, les prédictions de branches, la MMU : la gestion de la mémoire) pour déboguer autour de l'instruction SMC (Secure Monitor Call) et traiter divers problèmes liés au power management (la gestion de l'énergie). On m'a confié 5 debug-camps : avec les équipes de Texas Instruments, à Bangalore en Inde et plusieurs fois à Dallas ; et pour Sony-Ericsson, à Stockholm en Suède.

2010 – 2015Ingénieur logiciel, développement sur modem LTE

En 2010, j'ai rejoint NVIDIA à Sophia Antipolis, dans l'équipe de développement des drivers d'une puce « modem LTE » (la partie du téléphone qui gère la connexion au réseau mobile), qui s'intègre aux plateformes CPU « NVIDIA Tegra ». Un seul poste était ouvert, avec une forte sélection à l'entrée : quatre entretiens techniques très pointus.

J'ai fait face à des problématiques techniques beaucoup plus poussées, sur des terrains inconnus (des architectures propriétaires, pour lesquelles aucune information sur internet ne peut aider). Le processeur était asymétrique : neuf cœurs ARM de capacités différentes, sans les mêmes accès mémoire (certaines zones de mémoire sont partagées entre certains cœurs, d'autres non).

Ce silicium était déployé à grande échelle, pour des millions d'appareils, avec des coûts extrêmement optimisés : taillé au plus petit possible, si bien que le CPU était quasiment toujours à 100 % de ses capacités. Les contraintes de développement étaient extrêmes : du temps réel fort, du code réparti sur plusieurs cœurs qui doit rester synchronisé, des contrôles stricts sur les accès mémoire.

J'ai été amené à développer des drivers très bas niveau (le démarrage de la puce, l'USB/ULPI, la journalisation des erreurs), puis à développer et fiabiliser les systèmes de transmission de données entre ce processeur modem et le processeur principal NVIDIA Tegra, avec des contraintes d'architecture et de power management. Ces années m'ont aussi amené aux États-Unis, dans la Silicon Valley, et m'ont donné l'occasion de rencontrer le PDG de NVIDIA en personne : Jensen Huang.

Depuis 2016

Développeur freelance : le nouveau défi.

En 2015, après 11 ans passés en entreprise, je me suis rendu compte d'une chose : au début de ma carrière, j'apprenais énormément ; à la fin, c'est moi qui apportais beaucoup à l'entreprise. On me confiait à présent des tâches complexes que personne ne savait résoudre, et c'était à moi d'« apporter les billes ».

J'avais donc acquis une indépendance technique. Je me suis alors lancé un nouveau défi : quitter le salariat et créer ma propre activité de développeur indépendant, pour mettre mes compétences à disposition de clients français cherchant à développer leur application, 100 % à distance.

Je me suis d'abord spécialisé dans le mobile, iOS et Android :

  • en cross-platform avec Microsoft Xamarin (aujourd'hui remplacé par .NET MAUI),
  • et en natif (Swift pour iOS, Java pour Android).

Parmi mes premières missions : l'application mobile UPulse de la start-up ESPHI, la reprise d'une application Xamarin développée pour Engie (des réparations, puis l'ajout de fonctionnalités d'accessibilité), ou encore l'application de cartographie d'Ayudo, une start-up spécialisée dans le suivi de balises GPS en temps réel.

Les projets se sont enchaînés, pour des clients très différents et des applications métier de toutes natures : fitness, annonces immobilières, gestion de stocks, santé (avec des périphériques Bluetooth), vidéo en streaming, réseau social professionnel…

Dès le départ, j'ai proposé des solutions complètes sur l'ensemble des projets : en partant des spécifications, en passant par les maquettes graphiques, l'implémentation et les tests, jusqu'à la livraison.

Jonathan Roux au travail
Des projets d'envergure

Du mobile au web.

Au fil des années, des partenariats se sont installés avec des clients récurrents. Puis j'ai élargi mon offre au développement de plateformes web : d'abord des serveurs web qui accompagnaient mes applications mobiles (API, back-office), puis des applications web complètes, réalisées avec .NET Core et Blazor.

En partenariat avec des clients qui me font confiance depuis plusieurs années (dont un organisme national, client fidèle depuis plus de 7 ans), je suis intervenu de A à Z sur des projets d'envergure, de 20 000 à plus de 50 000 € :

Cette expérience m'a permis de bâtir un processus de prestation complet, avec ma propre méthodologie :

  • pour aider les clients à formaliser leur projet (passer de l'idée à un document écrit précis), afin qu'ils obtiennent exactement l'application souhaitée ;
  • pour développer des projets complets, maintenables, évolutifs, avec des garanties jusqu'à 2 ans après livraison ;
  • pour accompagner les équipes dans la prise en main du projet et ses évolutions futures.
Voir tous les projets en détail
Depuis 2016

Formateur.

J'ai commencé mon activité de formateur début 2016, avec des formations Xamarin (applications mobiles) en présentiel, au Luxembourg et à Paris.

J'ai ensuite souhaité reprendre ce contenu pédagogique pour en créer une formation vidéo en ligne. En novembre 2017, ma première formation est publiée sur Udemy, qui m'avait contacté pour lancer son marché français.

Depuis, plus de 65 000 participants ont rejoint mes programmes payants, et ma chaîne YouTube dépasse les 170 000 abonnés, avec l'un des tutoriels de programmation les plus vus en France : « Apprendre Python » (4 millions de vues).

Et récemment, j'ai lancé ma propre plateforme de formation en ligne, codeavecjonathan.com (que j'ai développée en .NET Blazor), qui regroupe des formations sur la programmation (Python, C#) mais aussi sur l'IA (développement agentique).

Je continue, en parallèle, à réaliser des projets en freelance, qui reste mon activité principale. Cette expérience de formateur et de création vidéo sert aussi mes projets : à la demande des clients, je livre des vidéos explicatives pour la prise en main, et parfois des points d'avancement vidéo.

Jonathan Roux à son poste de travail
Aujourd'hui

Développeur à l'ère de l'IA.

Mon processus de développement est en constante évolution. Dernièrement, avec les avancées de l'IA, j'ai intégré mon propre workflow de développement agentique, avec des outils comme Claude Code et Codex, tout en maintenant une architecture saine et une qualité de code irréprochable.

Claude CodeCodexAntigravity
Nouveau service

Finaliser les applications créées avec l'IA.

Ces nouveaux outils bousculent le marché du développement, et je propose donc de nouveaux services, comme la finalisation d'applications vibe-codées.

Vous avez développé votre application avec l'IA, et vous avez maintenant du mal à la faire évoluer, ou à corriger des bugs persistants ? Mon intervention fiabilise l'architecture et corrige les bugs les plus complexes, ceux que l'IA seule n'arrive pas à résoudre.

En savoir plus
IA
Jonathan Roux en studio

Vous cherchez un développeur ? Parlons de votre besoin.

Un appel découverte gratuit de 30 minutes, avec une première estimation du délai et du budget.

Prise de rendez-vous immédiate · 8h–15h, du lundi au samedi
Prise de rendez-vous

Quel est votre budget approximatif ?

Vous préférez écrire ? [email protected] — réponse sous 24 h ouvrées.