Freelance developer, specializing in distributed RESTful architectures, APIs, Ruby & Node.js development (both frontend and backend), and DevOps consulting. I can make your software development process more reliable, and improve your tooling to deliver high quality software. You can see my recommendations on LinkedIn (http://www.linkedin.com/in/cyrilrohr), and my open-source contributions on Github (https://github.com/crohr).
Since 2014: Founder of Packager.io, the easiest way to get debian or rpm packages out of your Ruby / NodeJS / Go app.
Since 2012: Working as a Ruby & Rails freelance developer, and doing DevOps consulting. Clients include:
NowFashion - Finished/Restarted the development of central features of the website (Rails4) in two weeks, in time for the Fashion Week events, after it was delayed for more than a year by an outsourced team. Real-time updates (WebSockets / Pusher), simplified administration (ActiveAdmin), batch upload and photo processing (Sidekiq), hosted on Amazon EC2 and S3.
Dexem SA (8 months) - Designed and implementated new features for the company’s RubyOnRails projects. Improved the development process of the team: new bug tracker, switch from SVN to Git, addition of unit, integration, and acceptance tests to the main application (IVR management), installation of a Jenkins server for continuous integration and deployment. Migration of legacy Rails apps (Rails2.0.2, Ruby1.8.6) to more recent versions of Rails and Ruby. Ruby 1.8.6/1.8.7/1.9.3, Rails 2.0.2/2.3.x/3.x, MySQL, jQuery, Bootstrap, RSpec, Capybara, Selenium, Vagrant, Puppet, Jenkins.
ReverbHQ (3 months) - Consulting work for various clients of the Agency. Developed a shopping website for one of the main school photographers in Canada (thousands of clients). Ruby, Rails 3.x, PostgreSQL, jQuery, Resque, ImageMagick.
Dimelo SA (1.5 month) - Implemented the Badgeville gamification features for an in-house CRM tool, comprising of three different interconnected apps. Ruby, Rails 2.3.x, MySQL, jQuery, Badgeville API.
Groupe ACP - 2 weeks training of a technical drawer to use the Sketch’Up Ruby API to automate common tasks in construction design.
2008-2012: Research engineer at Inria (http://www.inria.fr) in Rennes, France.
Led the work on RESTful API design, User Interface design (jQuery, jQuery
Mobile, d3.js), Core Ruby backends (RubyOnRails/Sinatra), user monitoring, identity management and federation (LDAP), and client tool
developments for Grid’5000 and BonFIRE cloud APIs. Also contributed major parts of
the user and technical documentation. Grid’5000 is the leading research platform in
parallel and distributed systems in France and Europe. BonFIRE is a European
project aimed at building a federation of cloud computing providers over
You can see screencasts of my work at https://vimeo.com/36507035 and https://vimeo.com/39257324.
2008: Six-months research project at the Queensland University of Technology in Brisbane, Australia.
Worked on cross-media summarization and video processing. Built a working prototype of a news aggregation engine (text, images, videos) in RubyOnRails, and participated in the TrecVID (http://trecvid.nist.gov/) challenge, devoted to research in automatic segmentation, indexing, and content-based retrieval of digital video. Published two articles.
I can speak and write French (native), and English (fluent).
I had a brief but fulfilling research experience during the last 6 months of my education. Below are some of the articles I (co)-authored:
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.
Cyril Rohr and Dian Tjondronegoro. 2008. Aggregated cross-media news visualization and personalization. In Proceeding of the 1st ACM international conference on Multimedia information retrieval (MIR ‘08). ACM, New York, NY, USA, 371-378.
Johannes Sasongko, Cyril Rohr, and Dian Tjondronegoro. 2008. Efficient generation of pleasant video summaries. In Proceedings of the 2nd ACM TRECVid Video Summarization Workshop (TVS ‘08). ACM, New York, NY, USA, 119-123.
Chess player. Juggler. Loves skiing & reading.
Side-projects: http://chunk.io (Node.js).
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 Ruby (Rails, Sinatra, etc.) / NodeJS / Go 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.
syslogger - Finally a proper
syslog library for Ruby. Can be
used as a drop-in replacement for the standard
You can find more on my Github account: http://github.com/crohr.