On getting out of my technical comfort zone

31 Oct 2013 09:56 electric-imp

I’ve been working for electric imp for about three months now, and I’ve been planning to articulate why I made the change, or more specifically, how it meant getting way out of my technical and working comfort zone.

I’ve been messing around with computers for the last 30 years or so, and I’ve made a career out of it for the last 18. In that time, I’ve been, basically, a Windows developer, starting with C and C++, moving into C#. In parallel with that, I’ve developed for every version of Windows from 3.0 to 8.1, and I’ve used SQL Server from version 6.0 to 2012.

In short, I lived my day job in Visual Studio.

Most recently, I was applying these skills at Trayport, in London; but after about 3 years at Trayport, I decided that it was time for a change.

While looking for something new, I ended up having a chat with Hugo Fiennes, the founder of electric imp, who I’ve known since University, and who I’d previously worked with/for at empeg, and we talked about me joining electric imp.

Why would that have meant getting out of my comfort zone?

Short answer

electric imp doesn’t use Windows.

Long answer

electric imp doesn’t use Windows, which meant that every technology that I’d spent the last 18 years learning about would be irrelevant.

Yes, the embedded side of the shop uses C++, which – although I’ve not used it in anger for a couple of years – I’m still pretty proficient at, and could pick back up quickly enough, I suspect.

But I’m not on the embedded side, I’m working on the backend, which means a massive shift in tools, platforms and technology:

  • Mac OS X or Linux instead of Windows on the desktop.
  • Linux instead of Windows on the server.
  • node.js instead of C# and .NET.
  • PostgreSQL and MySQL instead of SQL Server.

These are the obvious ones, but there are a heap of small differences which add up as well:

  • bash instead of PowerShell.
  • git instead of Perforce (at Trayport) or Subversion (at 1E).
  • Makefiles and scons instead of MSBuild.
  • vim instead of Visual Studio. Sure, others in electric imp use emacs, but they’re just plain wrong ;-).
  • chef and fabric instead of System Center and Octopus.
  • redis
  • RabbitMQ
  • Python

In fact, the number of new tools and technologies is so large, I’ve probably forgotten some of them.

Oh, and working from home

There are also the personal changes as well. I’ve spent the last 18 years working in various offices, with all the pros and cons that that implies. For electric imp, I’m almost entirely working from home, with the rest of my team in two other timezones, with all the pros and cons that that implies.


It was time to make a change. I’m learning a bunch of new things every day, and I’m working with a group of the most passionate, committed and intelligent people I’ve ever met. I’m enjoying myself immensely.

I’m glad I made the decision to take a massive leap out of my technical comfort zone.