Check out my Portfolio for details on individual projects I’ve worked on
Skills
- Generalist with a passion for cutting edge tech and making the most of new platforms. Shipped titles for Oculus Quest 1 + 2, Rift, iOS, tvOS, Android, GearVR, Mac, PC, Web and more.
- Long term experience in code architecture and systems development, taking pragmatic approaches to serve immediate business needs while maintaining a long term vision for software. Thorough experience planning, estimating and delivering large features rapidly.
- 12 years in industry, 10 years of Unity experience, as well as considerable experience at game creation with in-house engines and directly with rendering API’s such as DirectX, OpenGL and XNA.
- Worked with most areas of Unity, such as DOTS, animation, physics, URP, Timeline, various profilers, UPM, editor scripting, etc.
- Expertise and demonstrated skills at programming in a range of programming languages, including C#, C++, CG/GLSL/HLSL, Java, Lua, JavaScript, MAXScript, Python, PHP, Perl, Objective-C, VB, AppleScript, Bash/Shell, Groovy and others.
- Console experience developing on PS4 and Nintendo Switch.
- Significant experience at all areas of 3D game creation, including 3D graphics, AI (behaviour trees, state machines, path finding, perception), physics, animation (skeletal, spline based, morphs, facecap, ragdolls etc). Long term experience solving complex 3D problems, such as creating CSG tools for building levels.
- Experience working with Facebook, Twitter, various analytics and advert platforms, IAPs, native integrations as well as developing native Unity plugins for both iOS/Android to leverage otherwise unavailable device specific features.
- Highly skilled at optimising workflows, spotting bottlenecks and building/improving tooling to speed up development. I’m passionate about closing iteration time and enabling developers to build and create rapidly.
- Very strong understanding of various areas of maths and physics theory, and substantial experience applying theory as practical solutions to solving problems in computer games, software and simulations.
- Experience at using a number of programming environments including Visual Studio, Rider, XCode and MonoDevelop.
- Long term skill at creating web solutions using a mixture of technologies including PHP, JS, Python, various databases like MySQL, MongoDB, Couchbase, CDNs such as Rackspace Cloud Files and Amazon S3. Creation of web sites and tools through XHTML, PHP and CSS, XML/JSON
- Extensive use of version control software (Git, SVN, Perforce)
- Technical artist capabilities – 12 years experience at technical Photoshop usage as well as interface design, basic skills at modelling in 3DS Max and using MaxScript, unwrapping in 3DS Max and UV Layout and texturing in Photoshop. Experience at supporting and streamlining the art production pipeline through custom tools and scripts.
- Strong experience of working with binary files, reverse engineering undocumented formats to create specifications and tools to modify the files, as well as optimising critical formats right down to the bit level to ensure minimal bandwidth costs.
Experience
Studio Technical Director at Soul Assembly
Computer Games industry
May 2022 – Present
Principal Programmer at Pixel Toys
Computer Games industry
April 2018 – March 2022 ( 4 years)
Worked on all areas of game development, including on various launch titles. For full details see here.
Director of Sabresaurus Ltd.
Computer Games industry
December 2014 – Present
Development of tools and software primarily for the Unity3D game engine
Contracted game services
Team Leader / Programmer at Kwalee
Computer Games industry
September 2012 – December 2014 (2 years 4 months)
Lead designer and lead programmer on Wave Champions for iOS
Also worked on Farm Fighters and Time Monkeys
Games Programmer at Neon Play
Computer Games industry
September 2011 – August 2012 (1 year)
Lead programmer on the first person shooter Bravo Force: Last Stand for iOS, I wrote the entire gameplay code – including weapons, ballistics, physics, AI, graphics etc. I was also was heavily involved in the level design, blocking out the levels, placing enemies and creating the final animation splines and curves. In addition I created every cut scene.
Developed the multiplayer code for racing game Mobil 1 Track Challenge
Extensive Unity3D extension work
Minor graphics work and the mission system for Traffic Panic London (iOS/Google Play/Amazon) in addition to similar work on two other titles
A number of game proof of concept prototypes
Programmer on Draw Story (iOS, Android)
Self Employed Games Programmer at 13IG
Computer Games industry
August 2011 (1 month)
While waiting to start my job at Neon Play, I spent a month developing a Facebook game Dodge Foot in Unity3D with two former colleagues from Canalside Studios.
Junior Programmer at Four Door Lemon Ltd
Computer Games industry
August 2010 – October 2010 and May 2011 – July 2011 (Total 6 months)
Ported the iPhone game QuizQuizQuiz to be a launch title for Windows Phone 7
Worked on an iPhone/iPad/Mac port of an existing PC title
Games Programmer at Canalside Studios
Computer Games industry
June 2009 – July 2010 (1 year and 2 months)
Designed and developed the in-house engine
Built a number of tools to support the designers, artists and programmers
Worked with the artists to optimise and further feature the art production pipeline
Carried out the bulk of graphics programming
Worked as lead programmer on several projects
Carried out R&D on two projects ahead of development proper
Component Sales Technical Assistant at Shorts Lifts, Ltd.
Civil Engineering industry
July 2008 – March 2009 (9 months) with some subsequent part-time work
Liasing with group offices
Work on online website
Database solution programming
Education
BSc Computer Games Programming – First Class, Honours
The University of Huddersfield (2007 – 2011, including year in industry)