The Assembly Years - 1987 - 1997

My first steps on programming were on an Amstrad CPC 6128, at age 9. Soon I authored Z80 assembly games, and eventually published
Casio Fx-7500 games
as well as Saturn assembly games on
HP 48
via Dunod Edition's professional writer Loïc Fieux.

The Perl years - 1996 - 2000

While I studied C and Java at my engineering school in 1995, I learned Perl on my own as a more efficient way to program CGI scripts.

In 1999, I rewrote Bluedot Software's conference enterprise application from scratch using Perl, for our clients PeopleSoft and Cisco, from powerpoint screen mockups within three weeks.

The Java Years - 1999 - 2007

Also in 1999, I authored a
floorplan editor applet
, rewriting most of the JDK 1.1 that was unevenly supported by browsers at the time (right before Swing).

In 2000, I conceived and designed a Workflow Engine platform in Java to avoid reprogramming business logic for each new client's work flow.

Multiple event-related products were relased on this platform (which is still in use today): online trade-shows, conference and seminars, event registration, briefing centers, event portfolio management and
event task planning
.

The Ruby Years - 2008 - now

An opportunity to develop a
ruby on rails application
from scratch presented itself in 2008.
HivePals is a self-regulating social platform that facilitates the forming of new friendships thanks to real personality feedback.

Relational databases

I am versatile not only with programming languages but also with databases. I have DBA-level command of relational databases schema design (Sybase, MySQL, PostgreSQL, Oracle) and exposure to object-oriented databases (Objectstore).

Object-oriented design is a must (Hibernate, ActiveRecord), as well as test-driven development, RESTful design and generally segregation of functions as laid out in RoR's MVC design (fat model, skinny view/controller design). I am fluent with PL/SQL and pragmatic on a number of architecture decisions.

Key differentiators

Adherence to requirements, reliability, scalability and low-cost have been my main technology decision drivers. I am used to working on razor-thin budgets, startup-style deadlines and scope creep, and am very comfortable communicating with clients and staff that are not technically savvy.

Check the project management and the engineering direction tabs for more details!