Alexandre - Développeur UNIX

Ref : 080320S001
Photo d'Alexandre, Développeur UNIX
Compétences
C
C++
SQL
TCP / IP
HTTP
XML
LDAP
POSTGRESQL
Expériences professionnelles
  • Développeur infrastructure
    BNP Paribas Montreuil mars – octobre 2010
    • Reprise en main et évolution des outils d'infrastructure historiques BNP Paribas.
    • Adaptation de ces outils pour Windows 7 (gestion UAC et séparation de la session 0).
    • Outils/compétence utilisés : C++, C#, Visual Studio.

    Développeur/architecte
    Lotsys Suresnes janvier – septembre 2009
    • Développement de la couche réseau de la future gamme de terminaux de prise de jeux de la Française des Jeux.
    • Implémentation d'un parallélisme simple pour les enregistrements en masse de carnets.
    • Implémentation de deux couches réseau applicatives client propriétaires (Betnet et Pro::Sys).
    • Implémentation d'une interface de visualisation de vidéos streamées, basée sur MPlayer.
    • Outils/compétence utilisés : C++, méta-programmation, STL, Boost, Linux, GTK+/gtkmm, Code::Blocks.
    • Passage d'un Bac +5 sur cette période.

    Développeur/architecte
    Communications & Systèmes Le Plessis Robinson avril – décembre 2008
    • Maintenance évolutive sur la PKI maison, en C++.
    • Développement sur la PKI du support d'extensions pour certificats X509v3 pour support de la création de cartes à puce compatibles avec le smart card logon en environnement Microsoft.
    • Nettoyage et factorisation massifs de code historique, correction de bugs multiples, en particulier de thread-safety, de memory leaks, de violations d'accès.
    • Amélioration substantielle des performances de l'application (certaines tâches fréquentes comme le parsing des logs ont vu leurs performances multipliées par 10).
    • Aide à la conception de la prochaine version de la PKI, en Java avec PowerAMC, destinée à être évaluée Critères Communs.
    • Écriture d'un outil d'export sécurisé des données de la PKI.
    • Outils/compétence utilisés : Visual C++ 6.0/MFC, Microsoft Active Directory, Netscape Directory Server, SunONE
    Directory Server, Oracle, OpenLDAP, PowerAMC, UML, Java. Windows XP, Linux Fedora et Debian

    Développeur
    Mappy SA Paris janvier 2006 - mars 2008
    • Conception et réalisation seul du webservice de photo aérienne utilisée chez PagesJaunes puis chez Mappy (qui a tenu sur quinze serveurs pendant que le service IGN ne répondait pas avec 50 machines).
    • Prise en charge de la bibliothèque-serveur HTTP maison et de ses évolutions. "Nettoyage" des utilisations des
    bibliothèques ATL/MFC pour revenir à un C++ plus standard, plus efficient et plus maintenable (basé sur la STL et
    Boost). Tout chez Mappy est webservice, cette bibliothèque est donc centrale et vitale.
    • Prise en charge partielle de la maintenance du serveur d'application maison, basé sur la bibliothèque HTTP maison.
    Du C (IOCP, Winsock) légèrement encapsulé dans du C++, surplombé par un moteur XSL-T étendu embarqué (étendu par quelques fonctions cartographiques comme par exemple la reprojection, ou des accès bases de données), lui-même basé sur MSXML.
    • Migration en Visual Studio 2005 puis en 64-bit de l'ensemble des applications Mappy, avec les responsables des différentes briques. Nettoyage, refactoring et optimisation massifs et profonds.
    • Réécriture de l'agrégateur de données d'infotrafic, permettant de récupérer et de normaliser des flux d'infotrafic de plusieurs fournisseurs à la volée pour les fournir au plan à l'itinéraire Mappy.
    • Participation à la migration de certaines données du plan de Microsoft SQL Server vers PostgreSQL.
    • Réécriture des couches basses des outils Mappy pour UNIX et avec support IPv6 (Linux 2.6 et FreeBSD 6.2 ont été testés sur plates-formes x86_64, avec respectivement les API epoll et kqueue), avec des gains de performances
    constatés de l'ordre de 10 à 30 % sur un matériel équivalent si aucun parsing de XML n'est effectué. Les services d'envois simples de fichiers via http, de photo aérienne et de géolocalisation ont été testés avec succès, des statistiques simples étaient loggées dans un serveur MySQL. Le projet a été abandonné.
    • Prise en main de la conception de l'architecture du nouveau serveur d'application Mappy, basé sur Linux, Apache et PHP. Test de performances, optimisation de code, scalabilité, choix d'outils, compilation de paquets Debian modifiés
    pour l'optimisation (Apache multithreadé avec MPM Worker, PHP et modules PHP pour aller avec...), création de bibliothèques PHP et d'extensions cartographiques sous forme d'un module PEAR. Gestion voulue temporaire par
    moi d'une équipe d'experts PHP embauchés pour l'occasion. Le projet est en train d'arriver à son terme et Mappy commence enfin aujourd'hui à tourner sans Flash, plus d'un an après mon départ, on a les plaisirs qu'on peut...
    • Formation à la gestion de projet et participation à des projets transverses. (En général : expliquer au marketing que
    leur idée est très bonne mais mettrait deux années homme à implémenter.)
    • Outils utilisés : Microsoft Visual Studio 2003/2005/2008(bêta), C/C++ (STL, Boost, ATL/MFC), Linux, GCC, Python pour les scripts de génération de données et les tests de fiabilité et de performances, libECW, jpeglib et GDAL pour le
    traitement des photos aériennes, Winsock2, I/O Completion Ports, MSXML, XSL-T, threads POSIX (standard UNIX sous Linux), epoll (Linux)et kqueue (BSD) pour une programmation évènementielle.

    Analyste-programmeur puis chef de projet
    Stago Instruments Gennevilliers avril 2004 - mai 2005
    • Conception seul et réalisation à deux d'un jeu d'outils de test d'appareils de mesure d'hémostase, avec backend sur base de données et générations de rapports en CSV via une application multi-plates-formes codée avec FLTK. Un
    frontend web (intranet) à la partie statistique (accès aux CSV) a également été entamé sous ma direction, basé sur PHP et Apache. Il n'a pas été fini pour des raisons financières.
    • Implémentation d'un client pour le protocole ASTM, utilisé dans le domaine médical.
    • Outils utilisés : C/C++ (STL, Boost), Linux, gvim, GCC, FLTK, PostgreSQL, POSIX Threads.
    • Passage d'un Bac + 4 sur cette période.
    Architecte technique - développeur - chef de projet (intitulé de poste final : "chef de projet")

    Association Fadeno Paris avril 2003 - décembre 2003 + juin 2005 - décembre 2005
    • Conception seul et réalisation à quatre en régie d'un framework sécurisé et multi-plates-formes de partage de documents pour une joint-venture entre gros sous-traitants de grandes entreprises réputées des domaines automobile, aéronautique et nautique. Installation d'une messagerie inter-entreprises sécurisée, basée sur un serveur Jabber. Le passage de connaissances a été correctement effectué, les outils que j'ai mis en place sont aujourd'hui en
    maintenance pure, et leur utilisation était encore quotidienne début 2008.
    • Outils utilisés : C/C++ (STL), PostgreSQL, OpenLDAP, Apache, PHP, MIT-KRB5, jabberd, gvim, GCC, Linux, Solaris,
    Windows...

    Analyste-programmeur
    Divers Région parisienne janvier 2000 - décembre 2002
    • Difficiles premières années dans le métier d'un programmeur débutant. Missions diverses de développeur et de formateur.
    • Passage d'un Bac + 3 sur cette période.
    Support bureautique, administrateur systèmes et réseaux
    Divers Région parisienne novembre 1997 - août 1998
    • Difficiles premiers mois dans le milieu d'un informaticien débutant.

Études et formations
  • DIPLÔMES
    Maîtrise en développement informatique (VAE, Bac + 4)
    Université d'Angers, FRANCE 2004

    Licence professionnelle en programmation objet (VAE, Bac + 3)
    Université d'Évry, FRANCE 2002

    COMPÉTENCES
    · C / C++ / Objective C : standards ISO dont STL, standard POSIX, Boost (Smart pointers, regex, functional, un peu test et TR1), utilisation de différents toolkits graphiques (FLTK, Fox, GTK+ et gtkmm, Qt, *STEP)
    · SQL standard, avec une expertise sur PostgreSQL, bonne connaissance de MySQL 5 et de SQL Server, connaissance de surface de Sybase, de DB2 et d'Oracle et de son PL/SQL.
    · Programmation Linux user à noyau (portage de drivers depuis x86 vers x86_64, fonctionnement des I/O schedulers...). Pratique de la programmation C et UNIX au sens large depuis le début des années 90 (NeXTSTEP, 386BSD, puis Linux).
    · Programmation Java, maîtrise d'outils "classiques" comme Hibernate, et Struts, un peu Swing et JSP...
    · Multithreading, thread-safety, connaissance des primitives de synchronisation et de l'optimisation algorithmique ou orientée vers une plate-forme logicielle ou matérielle (Pratique de Windows, UNIX/Linux, Java et de plusieurs API)
    · Maîtrise des Design Patterns les plus fréquemment utilisés (Singleton, Fabrique Abstraite, Adaptateur...)
    · Sockets BSD et leurs variantes asynchrones (Winsock, sockets asynchrones FreeBSD, Linux).
    · Portabilité et écriture de code multi-plates-formes et performant en C ou C++ (niveaux matériel et logiciel, dont gestion de l'endianness, de l'alignement des données en RAM, de la taille de l'espace d'adressage, des plages d'adresses accessibles en DMA par le matériel, optimisation du parallélisme, techniques “zero copy”, limitation des passages inutiles de kernel barrier sur la gestion mémoire, la synchronisation, etc...).
    · XML en général (DTD, Schémas XSD et RNG, DOM, SAX, Xpath, XSL-T). Pratique des bibliothèques MSXML, libxml2 / libxml++ / libxslt, et (un peu) Xerces / Xalan Java et Xerces / Xalan C++.
    · Sécurité informatique : connaissance de surface de divers algorithmes cryptographiques (signature et chiffrement) et des normes liées (PKCS#*, X509, LDAP, algorithmes RSA, SHA, Elgamal, PGP, GPS...), et de plusieurs outils (certutil Microsoft, certtool GNUTLS, openssl).
    · Développement web : Linux/*BSD, Apache / Lighttpd, PHP / Python / Ruby on Rails / JSP + Beans, MySQL /PostgreSQL.
    · Utilisation habituelle et administration à un niveau raisonnable de différents UNIX et clones (Linux, *BSD,Solaris, HP-UX, AIX, OS X), en shell et via interface graphique. Utilisation professionnelle de Windows. Mes machines personnelles fonctionnent sous Gentoo Linux x86_64. Même le PC portable.
    · Utilisation de l'outil informatique depuis décembre 1984 (j'avais 7 ans). L'informatique m'est de ce fait “naturelle”.
    · Connaissance plus ou moins avancée du code source de plusieurs projets Libres : OpenOffice, Abiword,GLib/GTK+, Gimp, Linux (au niveau kernel, j'ai personnellement modifié les drivers pwc et uvc), GlibC, Firefox,
    Boost, Fox, FLTK, GNUStep, OpenLDAP, MIT-KRB5, Heimdal, GDAL, libECW, jpeglib.
    · Pratique minimale de l'administration d'un certain nombre d'outils serveurs : Apache, Samba, Sendmail, MITKRB5,OpenLDAP, Active Directory.
    · Maîtrise de plusieurs langages hors de ma base C/C++ : Objective C, PHP, Python, Perl, Java... quelques souvenirs lointains de Pascal, Lisp et ses variantes, Ocaml...
    · Quelques notions de traitement d'image programmé (utilisation limitée du mogrify d'ImageMagick, et de GDAL pour les données géographiques).
    · UML 2.0 "papier-crayon" ou à l'aide d'outils informatiques.
    · Culture informatique, culture générale, anglais et orthographe de très bon niveau.
    · Capacité à former et encadrer.
    · "Mode projet", et la capacité d'adaptation et d'implication au coup par coup qui va avec.
    · Un vrai "sens du service" orienté vers le client final.

    QUALIFICATIONS • Développeur/architecte technique/chef de projet, expert en C, C++, conception et programmation serveurs de haute
    disponibilité/hautes performances, compétences avancées en sécurité et en développement web. 10 ans d'expérience autour de développements informatiques. Maîtrise de différents environnements logiciels (propriétaires,
    UNIX) et de plusieurs langages.

D'autres freelances
Chef de projet C

Ces profils pourraient vous intéresser !
CV Développeur Web - Python / Django
Aurélien

Développeur Web - Python / Django

  • ARCUEIL
PYTHON DJANGO HTML5 JIRA JAVASCRIPT CSS C C++
CV Ingénieur/docteur développement FPGA et IA
Tarek

Ingénieur/docteur développement FPGA et IA

  • SAINT-OUEN-L'AUMÔNE
FPGA PYTHON C++ C
Disponible
CV Chef de projet MONETIQUE
Houssine

Chef de projet MONETIQUE

  • CLAMART
MONETIQUE SQL UNIX LINUX KANEST TUXEDO C C++ ORACLE JIRA
Disponible
CV Ingénieur logiciel
Stéphane

Ingénieur logiciel

  • SAINT-ROMAIN-LE-PUY
.NET C# WPF HTML5 ASP.NET C++ C Vue.js
CV Développeur JS+React+Next/Node & No-code
Arthur

Développeur JS+React+Next/Node & No-code

  • PARIS
BUBBLE JAVASCRIPT NODE.JS REACT.JS C PYTHON PHP Arduino POSTGRES SHELL UNIX
CV Consultant IT
Hugues

Consultant IT

  • MAREIL-MARLY
PYTHON C WINDOWS AGILE LINUX C# JAVA SQL AZURE JAVASCRIPT
CV Développeur PYTHON
Houmame

Développeur PYTHON

  • ÉPINAY-SUR-SEINE
PYTHON DJANGO HTML5 CSS C JAVASCRIPT MYSQL SQL SERVER SHELL UNIX SCRIPT SHELL
CV Développeur WEB/Mobile
Alexandre

Développeur WEB/Mobile

  • TOULOUSE
JAVASCRIPT JAVA SWIFT C++ Angular C TypeScript HTML CSS
CV Expert JAVA
Sami

Expert JAVA

  • LILLE
JAVA J2EE C SQL Angular AGILE CI/CD LEAD MANAGEMENT JAVASCRIPT POSTGRESQL
CV Ingénieur optique MATLAB
Abderrahim

Ingénieur optique MATLAB

  • ARLES
MATLAB CAO INVENTOR PACK OFFICE Altium C LABVIEW COMSOL MULTIPHYSICS