Experience

since november 2012 Senior Software Engineer for XandR (was AppNexus)

Working on the core software components of the company to ensure scalability, stability and low latency in a constantly growing ecosystem.

Primarily focusing on performance in terms of CPU usage, latency and memory usage, on a low-level, multithreaded C codebase using lock-free datastructures.

july 2011 to august 2012 Python Software Developer for NYSE Euronext

Implementation of a Python-based framework to automate the compilation, packaging (in RPM format) and deployment of the many (300+) C/C++/Java applications developed internally and used by stock exchanges around the world, within a Linux-based (Red Hat) technical environment.

This tool also allows to run Coverity reports, optionally signs RPM packages using a PGP key, can deploy on classical yum repositories or RHN Satellite servers, generates diffs in PDF format, and distributes the builds across many build hosts depending on the requirements.

february 2011 to july 2011 C Software Developer for VeriFone (was Gemalto)

Maintenance of the company's EMV implementation for POS equipments, running on the MagIC3 range of terminals (Linux / Atmel / ARM based): modifications to account for the peculiarities of the INTERAC Canadian standard as well as for the Popular Bank of China, implementation of the latest Specification Bulletins from EMVCo, and correction of various bugs.

Maintenance of internal tools written in C++.

april 2010 to january 2011 Perl Software Developer for Mutuelle Nationale Territoriale

Development of tools written in Perl to ease data extraction (from various sources, and in different formats) in order to generate documents to be sent to clients.

Rendering of those documents in the PDF format using LaTeX (from the TeX Live distribution).

Implementation of the Tem'post constraints (standard from the french postal service), permitting very significant savings both for printing and shipping costs (several millions of pages per year), using either the PostgreSQL or the Oracle RDBMS.

Splitting and indexing of the documents using the pdftk tool, in order to feed the Docubase document management system.

april 2008 to march 2010 C Software Developer for Société Générale

Aesthetic and usability improvements to the clients bank account management website using the prototype.js library.

Rewrite of the JavaScript virtual keyboard allowing customers to enter their secret code in a secure way.

C development using the NSAPI environment with the Zeus web server.

Development of proxies allowing interoperation of the C/NSAPI website with external applications (Java/Weblogic, Vignette) with HMAC-SHA-1 authentication.

Development of Perl scripts used to automate many VCS-related tasks under the ClearCase environment.

december 2006 to april 2008 UNIX Systems Engineer for Oxado

Administration of the whole Oxado platform, broadcasting more than 393 millions of ads per month on over 42 000 websites. The technical environment was exclusively using the FreeBSD (5.x & 6.x) operating system running PostgreSQL with Slony-1 replication, Apache with mod_perl, Pound (HTTP load-balancer) and memcached.

Maintenance of a Cricket-based solution allowing the monitoring of the platform, with RRDtool graphing capabilities.

Development of Perl scripts for various system administration tasks (database maintenance, log analysis...).

june 2006 to december 2006 UNIX Systems Engineer for Mediactive

Deployment of a Nagios-based monitoring platform for the clients of the company (Publicis, Dassault Systèmes, Renault, Hachette Collections...)

Installation and maintenance of FreeBSD and Linux systems.

Development of administration scripts in Perl and /bin/sh.

september 2004 to december 2005 Developer for Cegetel

Development of applications in Perl and C, within a Debian Linux, Apache, MySQL and FreeRADIUS environment on the platform that provides the Internet services to all our customers.

Integration and development of many projects on a test platform simulating the production platform with the help of UML (User Mode Linux) virtual machines.

august 2003 to september 2004 Developer and System Administrator for Qualigaz

Administration of UNIX systems (Linux Debian/RedHat, FreeBSD, OpenBSD) and development of applications designed for internal use in various languages (VC++ MFC, C# .NET, PowerBuilder, C) for Windows clients.

Administration of Oracle 8 and 9 SQL databases.

september 2002 to october 2002 Software Engineer for XandMail

Two months mission working on the company's webmail, written in C under Linux and Solaris systems. Major companies (Orange, Tiscali, La Poste, Noos...) were using this product at the time.

Implementation of new features, cleaning/rewriting of source code and documentation of the APIs, bug fixing.

march 2001 to march 2002 Security Engineer in the R&D team of Qualys Technologies

Development of a modular multithreaded online vulnerability scanner running under UNIX and coded in C.

Creation of a module that detects the applicative protocol on a given port at the UDP level (RPC, DNS, TFTP...).

Creation of an OS fingerprinting module able to detect the operating system running on a remote machine using the same method as nmap but significantly faster.

Creation of many other modules to detect various vulnerabilities.

july 2000 to august 2000 Intern for Qualys Technologies

Creation of a module that detects the applicative protocol on a given port at the TCP level (HTTP, FTP, SMTP, POP2, POP3, IMAP, RLOGIN, RSH, REXEC, SSH, TELNET, AUTH, NETBIOS, LDAP, MYSQL, CVS, X11, RPC, DNS, ORACLE...) whether there is an SSL encryption layer or not.

Education

Skills

Miscellaneous