In charge of the Parallel Processing department in the team that develops the Xilopix search engine's core.
Developed from scratch a distributed computing framework and a distributed web crawler/scraper.
• Xilopix:
Founded in 2008, Xilopix is an innovation driven company, specialized in multimedia search engines, media objects analysis and semantic technologies.
Xilopix Labs are developping a search engine technology which enables users to find images and any multimedia objects quicker and with unrivaled precision, without the need of text typing.
It encompasses automatic and consistent multimedia content indexing with knwowledge graph/thesaurus, (web)semantic and visual content analysis & recognition, for web and mobile access.
• Keywords: Distributed computing framework, Web crawling/scraping, HPC, Build&release manager
• Technologies: Ruby, RabbitMQ, MongoDB, Redis, Docker, Parallel programming, Test Units, REST API, Packaging, libvirt, Gerrit, Puppet, Jenkins
Worked in a team that deals with High Performance Computing, administrate and improve the Grid'5000 platform (www.grid5000.fr).
• Grid'5000:
Scientific instrument designed to support experiment-driven research in all areas of computer science related to parallel, large-scale or distributed computing and networking.
The infrastructure of Grid'5000 is geographically distributed on different sites hosting the instrument (10 in 2011). It is composed of more than one thousand machines dispatched on about 30 clusters.
• Keywords: HPC Administration, Large scale and parallel experimentation, Virtualization
• Technologies: Ruby, Puppet, Cluster management, Capistrano, Xen/KVM/libvirt, Debian packaging, Rubygems
Worked on the Kadeploy3 software in a team that deals with High Performance Computing and in collaboration with the Grid'5000 (www.grid5000.fr) administration team.
Continued the development of the software that is used in production on the Grid'5000 platform.
• Kadeploy3:
Deployment solution for cluster and grid computing. Set of tools for cloning, configuring and managing cluster nodes. Deploying systems on hundreds of nodes in a few minutes without any intervention of the system administrator.
• Keywords: Deployment solution, Netboot, Disk cloning
• Technologies: Ruby, Parallel programming, Test Units, REST, PXE netboot, Linux KVM, Gerrit, Jenkins
Worked on the Distem software in a team that deals with High Performance Computing.
Developed from scratch the software that is controlled through a web API (REST).
• Distem:
Transformation of an homogeneous cluster into an experimental platform where nodes have different performances and are linked together through a complex network topology. Breaking down physical resources performances.
• Keywords: Cloud computing, Software emulation, Traffic shaping
• Technologies: Ruby, Sinatra, C, LXC, Linux Kernel, tc, cpufreq
Reinforcement learning of a complex task by splitting it into several sub-tasks. Simultaneous improvement of motion and sensing skills of the agent. Practical application and testing on a robot.
• Technologies: C++, Urbi
Needs analysis, conception and development of a generic training management tool for professional sportsmen.
• Technologies: PHP, MySQL, CakePHP, HTML, CSS, Javascript
Total reforging of a of a billing software package. Design of a new database, duplicate fields detection, migration script (tens of thousands refs).
• Technologies: PHP, MySQL, HTML, CSS, Javascript
Build a firewall rules migration system: firewall files parsing, common abstract syntax tree representation, rules integrity checking, rules simplification, firewall file generation.
• Technologies: Java, Gom/Tom, netfilter/iptables, packet filter
Setting up a secure networking infrastructure (web services, mail, LDAP) using free softwares. Benchmarks and comparison with a proprietary-software based solution.
• Technologies: iptables/netfilter, spache2, postfix, LDAP, ASP.Net
Distributed computing, Web crawling/scraping, Web indexing, Search engine
Disk cloning, OS deployment, network boot (GNU/Linux command line tool)
Cloud computing, emulation, traffic shaping, CPU throttling (GNU/Linux command line tool)
Parsing, filtering raw network data (GNU/Linux command line tool)
Web, Mobile (Web application)
Parallelized benchmarking (GNU/Linux command line tool)
Usenix ;login:, February 2013, Volume 38, Number 1, Pages 38-44
Usenix, The Advanced Computing Systems Association (more)
Euromicro International Conference on Parallel, Distributed and Network-Based Processing
PDP'2012, Belfast, Northern Ireland (more)
Inria technical report
Inria research report
Finals of SCALE challenge
CCGRID'2012, Ottawa, Canada (more)
Conférence d'Apprentissage
CAP'2011, Chambéry, France (more)