• Front End Development

  • Human Computer Interaction

  • Design solutions

Make it more human



Here is a list of organizations I have worked with so far. Click any item below for details on the type of work I have done for them.

Places I worked


Truly exciting times to create Web Apps! Immersive HTML5 Single Page Apps using MVVM pattern and RequireJS , High level of scalability and ease of maintenance with Behaviour driven design , High level of unit testability through Jasmine and PhantomJS , Responsive and context aware apps through feature detection, Polly fills and SCSS , Expressive, insightful and interactive data visualisations using D3 , Restful Front end data access with change tracking through BreezeJS , All delivered to the masses in one tiny, optimised, uglified package built with Grunt!


What's Inside

I do not have a favourite framework or tool I get used to, in fact I am against it. I choose what to me seems the right tool for the job today, but it may well change tomorrow. Workflows and tools change but aim is always to deliver more immersive, performant and reliable applications.


Responsive and context aware apps through feature detection, Polly fills and SCSS. Optimised, uglified package built using Grunt, serving the front end as only one small file.

Rich data

Rich and queryable client side data with change tracking, filters and validation with BreezeJS.


HTML5 Single Page Apps using MVVM pattern with knockoutJS and RequireJS accompanied by high level of unit testability through Jasmine and PhantomJS


My toys these days

I always try to improve the stack I use for development. Patiently reviewing frameworks and libraries released each month in order to keep a reliable stack that not only emphasizes forward thinking but also a set of tools a business can rely on for delivering enterprise applications.

  • Require.js
    AMD loader

    RequireJS is a JavaScript file and module loader. It is optimized for in-browser use, but it can be used in other JavaScript environments, like Rhino and Node.

  • Knockout.js
    MVVM Implementation

    Knockout is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model.

  • d3.js
    Data visualization

    D3.js is a JavaScript library for manipulating documents based on data. D3 helps you bring data to life using HTML, SVG and CSS. D3's emphasis on web standards.

  • Mongodb + mongoose
    NoSQL and js ODM

    MongoDB (from "humongous") is an open-source document database, and the leading NoSQL database. Written in C++.

  • Node + express.js
    Application framework

    Express is a minimal and flexible node.js web application framework, providing a robust set of features for building web applications.

  • Angular.js
    SPA Framework

    Built around the belief that declarative programming should be used for building UIs & wiring components, while imperative programming is good for business logic.

Don't follow a trend. Follow your heart.
But if you like to follow me on twitter that's ok too :)


Say hello!

Whether you have a new idea you like to discuss or need consultation or just want to comment on something drop me a line. I also accept pro bono work from non profit organizations so don't be shy to tell me about your cause!