I'm a South African software developer currently living in Munich, Germany.

I lived for 8 years in Stellenbosch, where I studied and then later worked at Upfront Systems. In 2009 I moved to Munich, Germany where I worked for Syslab.

In the middle of 2010 I left Germany to go traveling through South America for 4.5 months with my girlfriend (now wife) before moving back to Cape Town, South Africa where I started a company, Opkode CC.

Since July 2014 I'm back in Munich and working as a freelancer and consultant.

Technical background

I have an engineering degree from the University of Stellenbosch (B.EngSci, Computer Systems), with a final year focus on Applied Mathematics and Digital Image Processing.

I've been working as a web developer since 2005, mainly in Python, frameworks such as Zope, Grok, Pyramid and with the Plone content management system. I've done core development on Zope and Plone and have contributed numerous add-ons.

Recently I've been focusing more on real-time communication and interaction via XMPP and have been doing a lot of development in Javascript. I'm the author of converse.js, a popular, web-based chat client, as well as a maintainer of strophe.js, the well-known Javascript XMPP library.

I'm a maintainer and developer of Patternslib, a front-end library that enables designers to create rich, interactive prototypes without having to know or write any Javascript.

I've also done significant work in backbone.js and angular.js.

I often help companies to integrate instant messaging into their websites and intranets, for example live helpdesk and customer support or social networking and group chat.

Please contact me if you'd like to know more. I look forward to hearing from you.