Algorithm Training


I offer personalized coaching & training programs for software interviews, programming contests, career progression and self-improvement. My students come from many different backgrounds and have varying goals, but all share one common desire: to improve their programming, algorithm and data structure skills. And I love helping them with that!

Training Sessions

I can work out a personalized training program for you that takes into account your goals, strengths and timescale. Generally my students are interested in sharpening their skills for:

  • Software interviews (programming and/or system design interviews)
  • Programming contests (Code Jam, Hash Code, ACM-ICPC, Topcoder, Hackerrank, etc)
  • Programming courses for high school or university
I am happy to accommodate any of these, as well as other related goals you may have. We can discuss in the first (completely free, no-commitment) intro session.


Schedule time with me

Existing Students

Already a student, but looking for your personal training dashboard? Click the link below.

Existing Student Log in

About me

I started my programming journey about 20 years ago. Since then I have worked at software companies small and large and have sat on both sides of the interview table hundreds of times. Most recently I served as staff / principal software engineer at Skyscanner, Wayve and Fastly. I am based near London, UK, but remote training sessions can accommodate any timezone.

Funnily enough, my fascination with programming really started when I discovered you can set your Windows 98 desktop background to an HTML page and animate it using Javascript. This led to hours of fun for me building my own desktop switcher with controls, animations and many easter eggs. The exposure also led to launching some small startups out of high school and, ultimately, a satisfying career in software engineering.

When it comes to programming contests, my first exposure was when I placed 7th in a national algorithm programming contest in my final year of high school. In university my team won the national contest for three years in a row. I also competed in, or was shortlisted for, the finals of Google Hash Code four times so far, and since 2009 I've only missed one Code Jam--usually I end up falling out in the third round. But as I encourage my students, I am always working on improving and trying to keep my skills sharp!


Book a free intro session

Does having a personal trainer for data structures & algorithms sounds interesting to you? If so, feel free to book a free introductory session with me so we can explore your goals together. If you choose to continue after the first session, I will work out a personalized training program for you and together we will make sure you make steady progress towards your goals.


Schedule time with me