About me

I'm a programmer, software engineer and architect based in Cambridge, UK.

Right now Node.js and Go are the languages I use the most, since about 2013. These days I generally deliver and manage various projects as well as writing some code.

I get involved in data processing, software architecture, CI, deployments and cross-platform applications. I aim to deliver the best possible solutions to problems big and small, as well as to create the tools to facilitate that.

In short: I write code, I manage Linux servers, I build and deploy code and I try to learn something new every day. I try to automate everything and I create some hobby projects in the meantime.

I also write some cross-platform GUI apps, I created a binary delivery service for ffmpeg suite, I make some music every now and then, I try to play with Raspberry Pi but never have enough time. I follow the software news, with a bias towards Open Source, Free Software, networking and security.

Backstory

I started getting into web development around the year 2000.

I've developed a fondness for elegance, reliability, functionality and simplicity in code. To a large extent I am a perfectionist who cares about making the right choices and doing the job correctly (and sometimes you get the most value from prototypes that unblock more substantial work). I write lots of code. Some of it I contribute to Open Source, some of it I simply write for fun.

Through years of working on the client-side code I've learned nearly everything about HTML, CSS and JavaScript (although it's virtually impossible to keep up with it nowadays). I've used iframes in IE, I copy-pasted scripts in the early 2000s, I made Flash movies, I used MooTools, Prototype, jQuery, Bootstrap and Foundation. When all these frameworks really took off they allowed for significant reduction in the required front-end workload.

I started moving to the server-side. I've already picked up some fairly basic PHP a long time ago and I moved on to proper application development around 2009. After looking at various frameworks I started working with CodeIgniter as it was very well documented and had a great community. From 2013 my remaining PHP work revolved mostly around Laravel.

Skills and experience

  • HTML / XHTML
  • CSS
  • JavaScript
  • Node.js
  • Go
  • PHP
  • CodeIgniter, Laravel
  • Bootstrap, Foundation
  • Photoshop and the Adobe suite
  • LESS & SASS
  • MySQL, Active Record, ORM
  • MongoDB
  • Design patterns
  • Unit testing
  • Search Engine Optimisation (SEO)
  • Version Control (Git, SVN)
  • Agile, Scrum, Kanban workflow
  • Visualising data
  • End-to-end application design
  • Amazon Web Services
  • Design and development of User Interface and Experience & back-end
  • Coding for accessibility and responsiveness
  • RESTful APIs
  • Network infrastructure and architecture
  • Linux administration
  • Service integration, Online payments, PCI Compliance
  • Continous Integration

Some experience with

  • Web Components/Polymer
  • AngularJS, Backbone
  • D3.js
  • Python
  • Perl
  • C++
  • Data indexing
  • Data extraction
  • Natural language processing (NLP)