
Ingénieur logiciel "distingué" et membre de l'équipe fondatrice de LinkedIn
San Francisco Bay Area

Ingénieur logiciel "distingué" et membre de l'équipe fondatrice de LinkedIn
San Francisco Bay Area
Je travaille aux USA depuis 1998. J'ai essayé le management pendant une période mais j'ai réalisé que cela ne me plaisait guère. Je suis donc revenu sur une carrière plus technique, c'est ce qui me passionne vraiment: architecture, design, code... J'ai beaucoup d'expérience en technologies Orientées Objets. Cela fait 10 ans que j'utilise java essentiellement pour construire des applications web robustes supportant des millions d'utilisateurs. Je suis passionné par mon travail et je souhaiterais continuer dans cette voie. Au total, j'ai 25 ans d'expérience avec les ordinateurs (12 ans professionnelle) remontant a l'époque du TI-99/4A (mon 1er ordinateur).
Je suis à LinkedIn depuis les tous débuts de la société (début 2003) et j'ai participé à tous les aspects du design, architecture et développement du site web.
Voici une liste non exhaustive de mes projets préférés à travers ma carrière:
* Resource framework: un framework logiciel facilement extensible pour abstraire l'emplacement d'une ressource (fichier), indépendamment de son emplacement (sur la machine locale, dans un fichier jar local ou sur le réseau, dans le ServletContext, dans le classpath...)
* jsp20 / EL compilateur: une implémentation très performante de jsp20 et 'expression language' (intégré avec le 'Resource framework' pour accéder aux fichier jsp de façon transparente)
* LinkedIn Spring: construit au dessus de Spring Framework 2.5 pour gérer la notion de composants (voir ma présentation)
* Goback framework: un framework qui facilite la gestion de navigation en arrière dans une application web (après une série d'écrans, une action vous ramène où vous aviez démarré, peut importe l'endroit de départ)
* X.400: implémentation de la grammaire de récurrence X.400 (voir http://tools.ietf.org/html/draft-ietf-calsch-csct-00 section 3.3)
* Databus: un système de réplication de base de données supportant des millions de transactions et qui offre une interface à base d'événements.
Java (10 ans), OSGi, Spring, C++ (3 ans), C, Object Oriented technologies, Design Patterns, UML, Unix, J2EE, XML, SQL (Oracle, MySQL), Extreme programming, JMS, Corba, SOAP.
(Computer Software industry)
January 2009 — Present (1 year )
I founded pongasoft, a small software company, in early 2009 with the idea of creating a service which would be useful to java developpers. The service is called kiwidoc (http://www.kiwidoc.com) and has been launched, in its public website form, in late August 2009. This project has been a tremendous learning experience for me as I had to do essentially everything from backend coding (in java) to frontend (groovy/grails/css), including all the sysadmin tasks and deployment into the cloud.
(Privately Held; 201-500 employees; Internet industry)
May 2007 — Present (2 years 8 months)
Dans un passé plus récent, j'ai développé le 'resources framework' et j'ai adapté jsp20 et LinkedIn Spring pour qu'ils l'utilisent.
J'ai développé le serveur basé sur Jetty qui est utilisé pour les applications back-end.
J'ai travaillé sur la conception du serveur de média (photos des membres) et Captcha.
J'ai conçu et programmé la nouvelle version de la couche sécurité de LinkedIn entraînant la création de plusieurs serveurs.
J'ai participé à la conception et programmation d'une re-architecture massive de l'infrastructure des profils pour supporter la croissance du site et l'internationalisation.
Je travaille activement sur la nouvelle génération de l'infrastructure de LinkedIn qui est basée sur OSGi, un projet très ambitieux qui nécessite de fortes connaissances sur OSGi et le système actuellement en place.
Je suis le représentant de LinkedIn à l'alliance OSGi (groupe entreprise)
(Privately Held; 201-500 employees; Internet industry)
March 2005 — April 2007 (2 years 2 months)
Durant ces années, je me suis concentré sur la technologie bien que je sois quand même très impliqué avec les fonctions du site. J'ai travaillé à l'amélioration des performances du moteur de recherche (facteur 4-6 sur l'index de Lucene, index partagé entre RAM et disque). J'ai introduit Spring Framework et écrit plusieurs extensions qui sont aujourd'hui au coeur de notre infrastructure. J'ai conçu et programmé l'agent de paiement (introduction de JMS et Castor). J'ai participé à la conception et réalisation de la première version du Databus (technologie de réplication propriétaire de LinkedIn), qui est aujourd'hui la fondation de la performance du site. J'ai programmé un framework permettant permettant d'utiliser Ajax (avec DWR). J'ai également conçu et écrit un prototype de la première version du système de communication (LinkedIn Inbox).
(Privately Held; 201-500 employees; Internet industry)
March 2003 — March 2005 (2 years 1 month)
Les premières années... Avant même que LinkedIn soit officiellement une société, j'ai commencé à travailler sur la première itération du site web. Je suis le créateur du plusieurs frameworks qui ont été (et sont toujours) la fondation du site (structure du code, modèles, support pour transactions bases de données, framework graphique, framework de test, jsp20/el compilateur...). Mis à part ces fondations centrales, j'ai été très impliqué sur un grand de fonctions utilisateurs. J'ai conçu et créé le 'cloud' serveur (moteur de graphe et de recherche) en utilisant des méthodes Orientées Objets qui lui ont permis de traverser plusieurs années de changements sans encombres.
(Public Company; 10,001 or more employees; RTR.L; Financial Services industry)
July 2001 — February 2003 (1 year 8 months)
Ingénieur logiciel expérimenté à Reuters (autrefois TIBCO Finance) basé à Palo Alto (Californie). J'ai travaillé à un projet (PDS) qui permet de recevoir des alertes (nouvelles, bourse,...) sur n'importe quel type d'appareil (mobile, email, IM...). J'ai programmé la totalité de l'application web pour entrer les données dans le produit, en utilisant les technologies J2EE et la version de référence de SUN. Le produit supporte plusieurs représentations graphiques et plusieurs langages. Par la suite, j'ai ajouté une interface SOAP pour pouvoir rentrer les données directement depuis un client IM. J'ai travaillé à la conception et architecture de la nouvelle version du logiciel permettant d'agréger n'importe quel type de source dans les alertes (par exemple, agréger un bulletin météo et un résumé de portefeuille à la fermeture du marché). La génération de l'alerte utilise XSLT pour obtenir le résultat souhaité.
(Internet industry)
October 1998 — April 2001 (2 years 7 months)
Ingénieur logiciel à SocialNet Inc. basé à Mountain View (Californie). SocialNet créait un service de rencontres sur Internet. Les technologies utilisées étaient les suivantes: Java, Servlet, JSP et XML. Mon 1er projet était de programmer un moteur JSP qui devait être très performant et extensible (contrairement à l'implémentation de référence). D'autres projets auquel j'ai participés incluent un framework pour transaction/base de données, une bibliothèque XML et plusieurs sections critiques de l'application (par exemple, le système pour gérer les photos des utilisateurs qui devaient être sécurisé et facile à répliquer). J'ai participé à la migration du coeur de l'application de Java/RMI vers C++/JNI/RMI et finalement C++/CORBA. Mon dernier projet a consisté en la création d'un framework pour une application web à 3 tiers pouvant supporter plusieurs langages et versions graphiques.
(Privately Held; 51-200 employees; Computer Software industry)
June 1998 — September 1998 (4 months)
Ingénieur logiciel à Trema Laboratories, basé sur la côte d'azur. J'ai travaillé sur des projets internes ayant traits aux technologies web: Java, Servlets, CGI. Le projet principal auquel j'ai participé était de porter et d'améliorer une application interne de remboursement de frais, originellement écrite en CGI/perl, vers Java/Servlet. Le projet représente 30.000 lignes de code Java.
(Privately Held; 51-200 employees; Telecommunications industry)
January 1997 — May 1998 (1 year 5 months)
Ingénieur logiciel chez S.I.P. une société de logiciel dans le domaine de la finance, basé sur la côte d'azur. J'ai travaillé sur un outil de gestion de portefeuille: le client en Powervbuilder/WinNT, un serveur en C++/UNIX et une base de données SQL/Sybase. Je me suis concentré sur le serveur (UNIX) en utilisant des technologies orientées objet pour la conception et l'implémentation: cela représente environ 40.000 lignes de code C++ (110 classes).
(Privately Held; 1001-5000 employees; Research industry)
September 1995 — December 1996 (1 year 4 months)
Ingénieur logiciel au C.E.R.N., le centre de recherche nucléaire basé à Genève. J'ai travaillé dans une équipe responsable du logiciel de la salle de contrôle principale. J'ai programmé plusieurs interfaces utilisateur en utilisant X/Motif pour la salle de contrôle. J'ai utilisé les technologies orientées objet pour la conception et l'implémentation représentant environ 20.000 lignes de code C++ (environ 40 classes).
(Consumer Electronics industry)
July 1994 — December 1994 (6 months)
Stage ingénieur logiciel chez Thomson Consumer Electronics (maintenant OpenTV), basé à Los Angeles (Californie). J'ai programmé des logiciels pour la télévision interactive en C/UNIX.
Engineering diploma , Computer science , 1992 — 1995
Télécom Paris