Cyril Rohr
Cyril Rohr.

About me


Hello, my name is Cyril Rohr, and I’m currently working as a Freelance in France. I do Ruby and Node.js development, using frameworks such as RubyOnRails, Sinatra, Goliath, and Express. I’m also interested in information retrieval, machine learning techniques, distributed software architectures, cloud computing, REST and HTTP APIs, and web development in general.

The good thing about me is that I’m a full stack engineer, meaning I can handle everything from architecture design, development, and deployment in production. If it looks like I may help you with your projects, please contact me.

Work Experience

Freelance

Working independently since April 2012.

INRIA - National Research Institute

From Oct. 2008 to Mar. 2012, I worked as a R&D Engineer at the INRIA national research institute in Rennes, France.

I originally started to work on the Grid’5000 project, an infrastructure distributed in 9 sites around France for research in large-scale parallel and distributed systems. In Aug. 2010 I also joined the EU founded BonFIRE project to work on a multi-site cloud facility.

I was mainly in charge of designing, implementing and operating a distributed software architecture based on RESTful APIs. I also built web interfaces and visualizations using standard and lightweight technologies such as HTML5, Javascript, CSS.

My day-to-day work usually involved me writing code using a mix of Ruby, Javascript, HTML and CSS; pushing and pulling with Git; messing with DEB and RPM packages; cooking some Puppet recipes to configure and deploy two dozens of servers; and trying to bend big-old Apache and Squid to my will.

Queensland University of Technology

From Jan. to Jul. 2008, I was a Research Intern at the Queensland Institute of Technology in Brisbane, Australia, where I worked on Cross-Media summarization and Video processing.

My research project consisted in designing and building a solution to crawl, index and process media content (text, videos and images) from hundreds of online news sources to provide an aggregated view of the day-to-day news information flow. A (then) innovative browser-based interface was also built for browsing and filtering the resulting news events (see Publications).

I also participated in the international TRECVid workshop sponsored by the National Institute of Standards and Technology (NIST), devoted to research in automatic segmentation, indexing, and content-based retrieval of digital video (see Publications).

Kalistick - Startup

In 2007, I worked for 3 months as a Software Engineer Intern for the Kalistick startup (Agile quality for continuous delivery) in Lyon, France.

This internship brought me a lot of knowledge about software quality, testing, and best-practices. I mainly worked with Java, code analyzers, rules engines and business intelligence tools.

Les Bains de l’Opéra - Small business

In 2006, I worked for 2 months as a Software Developer Intern for Les Bains de l’Opéra in Lyon, France, where I developed a web intranet application to replace their invoicing and customer management tool. At that time, I mainly worked with PHP5, HTML and what was called AJAX.

Education

In 2008, I obtained my MSc in Computer Science with high honours from the Institut National des Sciences Appliquées (INSA), a French engineering Grande École in Lyon, France.

I had a great time doing my final year of education and a bit of research at the Queensland University of Technology (QUT) in Brisbane, Australia.

Publications

I had a brief but fulfilling research experience during the last 6 months of my education. Below are the two articles I (co)-authored:

And below is an article I co-authored while at Inria:

  • Eugen Feller, Cyril Rohr, David Margery, and Christine Morin. Energy Management in IaaS Clouds: A Holistic Approach. The 5th IEEE International Conference on Cloud Computing (CLOUD), Honolulu, Hawaii, USA, June 2012.

Code

Here is some software I’ve written in my spare time or that my previous employers allowed me to publicly release.

  • pkgr - Easily package your Rails app into deb or rpm packages. After a few months of dealing with the various intricacies of packaging Ruby apps for debian or centos, here is a gem that does everything for you.

  • restfully - A Ruby client for RESTful APIs.

  • rest-client-components - Rack should not be limited to HTTP servers, it’s also a very good client-side abstraction for pluggable middleware!

  • g5k-campaign - A tool to launch experiment campaigns on Grid’5000, based on the concept of extensible campaign engines.

  • syslogger - Finally a proper syslog library for Ruby. Can be used as a drop-in replacement for the standard Logger library.

  • toggl-notifier - Hack! Update your Adium status with the description of your current task in Toggl (Mac only).

You can find more on my Github account.