About Me

I'm a truly passionate programmer who aspires to one day work in the video games industry. I like to dabble in all areas of programming be it desktop, mobile, database, or web development, using all kinds of technologies. In my free time I'll usually be working on game development projects or expanding my knowledge of modern software and game development technologies.

I always take great pride in the code I write and I'm constantly looking to learn new ways to better my skills as a programmer.

CV: view in browser or download the PDF file (489kb)

ProjectsContact MeDev Blog


Here are some projects I've worked on in my spare time. I would be more than happy to talk about any of my work in more detail if you'd like to get in touch.

Space Game 2000 | C#

Written in C# using Microsoft's XNA framework. All assets are my own excluding the music.

Space game 2000 is a project I'm really proud of because it was the first full game I finished. Amongst other things, it features pixel-perfect collision, a bunch of interesting powerups + upgrades purchasable from the store, game state management, animated sprites, and spaceship movement based on velocity and acceleration.

Itch.io page

Wave Cave | UE Blueprints

Programmed with Unreal Engine's visual scripting system; Blueprints.

I implemented the procedural level generator, moving platforms, and destructable meshes for the breakable platforms.

This is a pseudo-3D platformer my team and I made during a 24 hour society-held game jam. The theme was 'Out of the Blue'.

Itch.io page

A* Pathfinding | JavaScript

Written in JavaScript, using the HTML Document Object Model for displaying and interacting with the grid.

I've written an in-depth breakdown of my algorithm which you can read here.


Reflection/Refraction Shaders | C++, GLSL

Written in C++ and GLSL, using the OpenGL API for graphics rendering.

This project demonstrates two shader programs I've written. On the left you can see the reflection shader being used to make the teapot appear with a chromatic surface. On the right the teapot is being rendered with the refraction shader and appears as solid glass.

These two shaders sample the scene's environment via cubemapping which I also implemented.

Other Projects

I would be more than happy to discuss any of my previous or current work so please contact me if you have any questions or would like to know more about a specific project. Some other past projects I have worked on include:

  • For my final year project at Unviersity I've been writing a scene renderer in C++ using OpenGL. It's a large project which focusses on efficient rendering and the different effects which can be achieved via shader programming. Due to University regulations I'm unable to showcase this project until post-graduation. I would be happy to speak to potential employers about the project in more detail.
  • A Pong replica written in C# using Microsoft's XNA framework.
  • An infographic generator written in JavaScript. Depicts how many days you have lived out of a 90-year life span.
  • A working Suduko game implemented in JavaScript.
  • An idle clicker prototype inspired by the game A Dark Room. Written in JavaScript, HTML, and CSS.
  • This website: this website's JavaScript, HTML, and CSS is entirely written by me.

Say Hello

If you want to get in touch you can use this contact form, tweet me, or drop me an email. When using the form make sure to leave your email in the box below if you'd like me to get back to you!

0 / 0


Here are some things I personally have found helpful or interesting on the internet:

  • The AI Revolution - Part 1 - A fantastic article about why human-level AI might not be as far away as you think and why we should all be talking about it.

  • Game Mechanic Explorer - A collection of concrete examples for various game mechanics, algorithms, and effects.

  • PICO-8 - A self-contained game development environment - with code, sprite, level, and music editors - for creating games written in Lua. The "cartridges" you make the games in to are very small in size so while at first it seems you are being quite limited in what you can fit in to a game, it's a good challenge. Here are some examples.

  • Coolors.co - A really neat and useful colour pallete generator.

  • Learn OpenGL - A good set of easy-to-understand tutorials for anyone wanting to get into 3D graphics programming with OpenGL. I would personally recommend reading some more technical material on the side to supplement these tutorials and better understand the technical aspects briefly explained within.