• Senior 3D graphics and engine programmer with 20 years games industry experience.
• Strong experience of renderer design, low-level graphics APIs, GPU architecture, graphics techniques and optimisation for GPU, CPU and memory on multiple generations of consoles (PS4, Xbox360, PS3, PS Vita, Xbox, GameCube, PS2, PS1) and Windows PC (DX 5 to DX 10).
• Speaker at Develop 2013 and Sony DevStation 2013 conferences.
• Articles and a monthly column on 3D graphics and game development published in consumer and industry press.
• Past recipient of Microsoft MVP (Most Valuable Professional) award for sharing Direct3D knowledge with development community.
Work History
Expert Programming Architect / Technical Lead
Reflections
July 2012 - December 2015
Newcastle upon Tyne, United Kingdom
The last project I worked on at Ubisoft was The Division as an Expert Programmer, in particular I worked on engine and PS4 specific optimisations to the Snowdrop engine. I also managed a small feature team within the project.
Before that I was Technical Lead for the PS4 version of The Crew. Working closely with lead studio Ivory Tower, my team we had complete ownership of the PS4 version, including porting and re-building the engine. We had very early access to the platform which was both exciting and challenging.
I've been involved in a wide range of things in this role, from low-level engine programming to recruitment (permanent and contractor), from giving talks at developer conferences (Sony DevStation and Develop) to task scheduling, from engine architecture planning to managing outsource ports to last-gen platforms.
Senior Renderer Programmer
Ubisoft
2006 - November 2011
Contributing to the design and implementation of the in-house renderer and game graphics for Xbox360, PS3 and PC; porting other engine components; profiling and optimisation of engine, content and game; assisting with porting and optimisation of Ubisoft titles for PS Vita
Projects:
* Lumines : Electronic Symphony - PS Vita
* Rayman Origins - PS Vita
* Driver : San Francisco - Xbox360, PS3, PC
* Driver : Parallel Lines - PC
Senior Renderer Programmer
Reflections
November 2004 - April 2006
Newcastle upon Tyne, United Kingdom
Contributing to the design and implementation of the in-house renderer and game graphics for Xbox and PC; porting other engine components; planning for next-gen
Projects:
* Driver Parallel Lines - Xbox
* Driv3r - PC
Programmer
Acclaim Entertainment
January 2003 - September 2004
Manchester, United Kingdom
Developing the camera and effects systems for a 3rd person shooter. Acclaim filed for chapter 11 bankruptcy before I got to finish my work on the project.
Projects:
* Interview with a Made Man - Xbox, PS2
Senior Programmer
Creative Asylum
March 1998 - March 2003
Designed and implemented the renderer and art toolchain parts of the in-house engine (Paradox Engine); worked on graphics effect code, engine demos and some game code.
Creative Asylum took on a number of work for hire contracts so this role included a lot of on-site collaboration with partners and customers such as Warthog, Magnetic Fields and Europress
Projects:
* Battlebots - PS2, GameCube - [THQ, canned]
* Quiz Show - PS1, PC [Eon Digital]
* Pac-Man : Adventures in Time - PC - [Hasbro]
* Rally Championship - PC [Acualize/EA]
* Rough Terrain - PS1 - [Europress, canned]
* Get Ready for School - PC [Europress]
* Starting to Read - PC [Europres]
* Vector OEM Games Compendium - PC [Vector OEM]
* Paradox - PC/PS1 - [canned]
Programmer
Europress Software
March 1997 - March 1998
Working in collaboration with LEGO, often working on site at their R&D facilities in Billund, Denmark. My team was contracted to work on the software side of their computerised LEGO/robotics entertainment and educational products.
My work included development and design of the (2D) graphics engine, UI code, communication between the game and the robotics driver, gameplay/AI and robot control code (running locally on PC and remotely on the programmable brick).
Projects:
* LEGO Technic Cybermaster - PC
* LEGO Mindstorms - PC [some consultation work]
Programmer
Micro Librarian Systems
1994 - 1996
The company developed and sold library automation database systems & peripherals designed for schools and colleges.
The MD of the company was responsible for design and development of the main system, so my role covered "everything else" so work was quite varied and included areas such as: researching data compression algorithms, porting to other platforms, writing device drivers for barcode scanners and digital cameras, writing image capture and manipulation software. Due to the tiny size of the company, the role also included technical support and some on-site installation work.