Antoine Nguyen - Architecte logiciel freelance

Passionné de technique et de logiciel libre en général, j'ai travaillé dans un panel varié de contextes professionnels, pour du développement logiciel ou de l'infrastructure. Je suis capable d'assurer des postes d'encadrement technique tels que chef de projet ou coordinateur de projets.

Curieux et rigoureux de nature, je suis quelqu'un de polyvalent, soucieux de la qualité et toujours en recherche de nouvelles choses à apprendre. Je privilégie les environnements de travail dynamiques et flexibles.

Compétences

Développement logiciel
C C++ Python Perl Javascript PHP kernel embarqué cross-compilation Scrum architecture pilotage de projet
Frameworks web
Django Flask jQuery Mootools Bootstrap
SGBD et annuaire
MySQL MariaDB PostgreSQL OpenLDAP
Systèmes d'exploitation
Linux Debian Ubuntu CentOS RedHat OpenBSD
Virtualisation
KVM Xen VirtualBox User-mode Linux
Administration système
Apache Nginx Squid Postfix Dovecot Bind FreeRADIUS Amavis Spamassassin Nagios Centreon OpenVPN DEB RPM shell RHCE
Langues
Français (langue maternelle) anglais (880 au TOEIC©)

Expérience professionnelle

Juillet 2012 à décembre 2013 - Merethis - Responsable d'équipe R&D

Responsable de l'équipe R&D chargée du développement des produits Centreon :

  • Management d'une dizaine de développeurs ;
  • Travaux de fond permettant d'assurer l'évolution du produit principal dans de meilleures conditions (développement d'une API, rationalisation des technologies utilisées) ;
  • Mise en place de SCRUM afin d'améliorer le travail en équipe et la production ;
  • Proposition d'évolutions technologiques et fonctionnelles autour des produits développés ;
  • Industrialisation des processus de sortie de version : automatisation maximale, répétabilité, etc. ;
  • Amélioration de la qualité logicielle : intégration continue, tests de non régression, etc.

Environnement

git redmine python rest perl centos rpm centreon nagios

Janvier 2010 à juin 2012 - Streamcore - Coordinateur de projets R&D

Evolution interne. En parallèle de mon poste d'architecte, j'étais chargé :

  • De piloter les différents développements en cours au sein de la R&D ;
  • De participer à l'élaboration de la roadmap produit ;
  • D'organiser le travail de l'équipe.

Environnement

encadrement trac scrum

Mai 2007 à janvier 2010 - Streamcore - Architecte développement R&D

Développeur au sein de l'équipe R&D, intervenant sur les différents composants de la solution Streamcore. J'ai eu l'opportunité de traiter des problématiques diverses telles que :

  • Optimisation des performances ;
  • Refactoring de certaines fonctions critiques ;
  • Evolution de l'architecture globale ;
  • Industrialisation des méthodes de production ;
  • Garantie de la qualité des releases.

Au fil du temps, j'ai évolué vers une poste d'architecte / chef de projet. En plus de ma fonction initiale, j'étais chargé :

  • De l'encadrement technique de deux personnes au sein de la R&D ;
  • D'étudier des problématiques et de proposer une ou plusieurs solutions techniques.

Voici quelques exemples des projets que j'ai réalisés :

  • Portage du code noyau embarqué dans les équipements de linux 2.4 vers linux 2.6 et compatibilité avec les architectures 64bits ;
  • Refactoring du module mesurant les temps de réponse applicatifs (couche TCP) ;
  • Redéfinition complète du processus chargé de la collecte des données statistiques récoltées par chaque équipement (plusieurs milliers sur certaines configurations clientes) ;
  • Redéfinition complète des méthodes de production des équipements (automatisation maximum, tests associés, etc.) ;
  • Création d'un environnement de tests unitaires continus pour le logiciel embarqué sur les équipements. (virtualisation des équipements, développement d'un framework pour l'écriture des tests, etc.).

Environnement

debian noyau linux TCP/IP user-mode linux C C++ python perl rrdtool centos packaging

Septembre 2006 à mai 2007 - Devoteam - Responsable technique

Evolution interne. En parallèle de mon rôle de consultant, j'étais chargé :

  • De prendre les décisions concernant des choix technologiques liés à l'open source;
  • De participer aux avant-ventes techniques;
  • D'assister et de piloter techniquement les équipes en charge de projets au forfait.

Voici quelques exemples de projets sur lesquels j'ai travaillé (en tant que consultant ou chef de projet) :

CEA

Réalisation d'une architecture d'hébergement Linux dédiée au site www.cea.fr.

SAUR

Réalisation d'un relais de filtrage anti-SPAM basé sur des logiciels libres.

SFRSI

Évolution de la plate-forme mail de production utilisée entre autre pour les envois commerciaux.

Environnement

solaris debian openbsd postfix openbsd amavis spamassassin haute disponibilité

Septembre 2005 à septembre 2006 - Devoteam - Consultant open source

Conseil et prestation autour du logiciel libre, pour des problématiques d'infrastructure ou de développement logiciel.

Voici quelques exemples de missions au forfait que j'ai réalisées :

EDF R&D

Conception et réalisation d'un système de virtualisation de port RS232 sous Linux : partage transparent d'un port série d'une machine à une autre via IP. Développement noyau et réseau (client/serveur en utilisant des sockets).

Uperto

Développement d'une console graphique de supervision système et réseau basée sur Nagios. Console réalisée en python et web services réalisés en PHP/SOAP (pour assurer la communication entre la console et Nagios).

SFR

Mise en place d'une maquette du produit Asterisk (PBX logiciel) dans le but de simuler des usurpations de numéros de téléphone.

Environnement

linux C python asterisk nagios

Janvier 2004 à juillet 2005 - Iniflux - Consultant open source

Intégration au forfait de produits open-source dans le système d'information de TPE/PME et d'administrations :

  • Firewalls ;
  • IDS ;
  • proxy ;
  • Serveurs de messagerie ;
  • Solutions de filtrage de messagerie ;
  • Supervision ;
  • Serveurs de fichiers.

Mediapost

Administration de serveurs Solaris, mise en place d'un système d'installation automatique via le réseau.

Environnement

openbsd linux solaris snort squid postfix cyrus spamassassin squid snort samba nagios jumpstart

Projets libres

Modoboa - depuis 2009

Modoboa est une plate-forme d'hébergement et d'administration de messagerie incluant une interface web utilisateur moderne et simplifiée.

Pensée de manière modulaire, elle fournit nativement des composants utiles tels qu'une console d'administration, un frontend amavis (agent de filtrage du courriel) ou un webmail et peut être complétée en fonction des besoins de chacun.

Distributée sous licence MIT, elle s'appuie sur postfix et dovecot qui sont des composants phares du monde de la messagerie.

Compétences

postfix dovecot amavis python jquery bootstrap

sievelib - depuis 2011

sievelib est une librairie Python fournissant une client ManageSieve et un ensemble d'outils permettant la manipulation de scripts Sieve.

Elle est utilisée par Modoboa pour son éditeur dynamique de filtres.

Compétences

python sieve managesieve

Formation

Septembre 1999 à juin 2004 - EPITA - Ingénieur en informatique

Spécialisation système, réseau et sécurité