Word (.doc) - Thomas Randall: Home

advertisement
T HOMAS R ANDALL
Email: me@tom-randall.com Web: tom-randall.com
More contact details available upon request.
P E RSO N A L
S T AT E M EN T
An experienced developer with a proven track record wanting to enter into the games industry. Has taken a leading
role in the development of numerous projects including a high profile public sector web application and a multiplayer
game framework. With a strong emphasis on AI for computer games, I have the ability to add considerable value to
the games industry as a game programmer.
S K I L LS
Development Experience: 4 Years (C++ 3 years).
Key Development Skills: C++, C#, Java, Object Orientated, Multithreading, UML, XML, SQL (MySQL), HTML (XHTML),
Lua, C, JavaScript, PHP, Pascal, AS3 Script.
E XP ERI EN C E
August 2009 – Present
Skyreach Media Ltd. Lead Developer.

Worked on financial education software created by Interactive Learning called ‘Adding up to a Lifetime’ which
was rolled out to over 2000 secondary schools. Responsibilities included creating games/quizzes to keep students
engaged whilst testing their understanding of the subjects taught. As the target group for this product was minors
in an educational environment, rigorous constraints and checks were in place.

Responsible for managing the testing and bug tracking throughout the product life cycle, including delivery of the
final product to the client.

Created an automated build system to generate and package the different versions of products for the clients
[Inno Setup, Pascal & LUA].

Updated and maintained a high-profile online application software created by Interactive Learning [PHP,
JavaScript, CSS, MySQL & XHTML]. This included liaising between various members of a large institute ranging
from the project sponsors to their technical department.

Responsible for developing a wide range of bespoke websites for educational clients [PHP, JavaScript, CSS,
MySQL, & XHTML].
2008 – Present
OW Games, Game Programmer/Architect.

Lead architect/programmer for the client in a 3D, online, client/server game framework. The project was split into
two parts between the client and the server/networking with other team members responsible for the server and
asset creation [OGRE & C++].

Architected and delivered an asset management system to dynamically load, replace or remove assets from the
scene graph for a library that does not natively offer this facility (OGRE). This allowed for content (models, sounds
etc.) to be updated during runtime eliminating load screens, reducing the client’s download size and allowing
content to be updated without restarting the game; this feature is not available in many commercial engines.

Architected and delivered a job-based multithreading system for inter-component load balancing. With thread
affinity for components, such as OpenGL or DirectX, and the facility to run the whole client single threaded,
provided a very flexible solution for libraries, game code and hardware.

Designed and delivered an ad-hoc component model to ease the creation, replacement or removal of different
components of the engine (e.g. sound system, graphics engine). This allowed for complete separation of the
engines’ subsystems and allowed components to be loaded as external libraries.

A basic working multiplayer team-based game was created as a tech demo of the client/server process. This is
available for demonstration and code review.

Worked on prototype games including a zombie apocalypse game and a fishing game [Flixel, AS3 Script]. It was
decided to peruse the fishing game first and a full version is currently in development for the iPhone with other
mobile platforms to follow [C++].
P.T.O.
2004 – 2005, 2008 – April 2009
Interactive Learning Ltd. Lead Developer.

Worked at Interactive Learning as a placement year during my degree. I then later came back to work at
Interactive Learning and was offered a lead developer role, having previously worked with the company as a
technical support officer; this included managing a team of 4 people.

Designed and delivered parts of various educational software packages. Responsibilities included creating
engaging games to test students’ understanding in a fun way. An example included a ‘Space Invaders’ style game
[VB Script & proprietary language].

Developed a DRM system to limit schools’ access to educational software to the duration of their subscription
[PHP, MySQL & proprietary language].

Architect and lead developer in a team of 4 in the creation of a high profile online application software [PHP,
JavaScript, CSS, MySQL & XHTML]. This included integrating the web application into the client’s SSO system,
which required liaising with the client’s project team, management and technical department.

Supported the design team with bug-tracking throughout various products’ lifecycle.

Delivered the gold master distributions and patches along with their installation packages [InstallShield Express,
ClickTeam Patch Maker & NSIS].
E DU C AT I O N
2006 – 2008
University of Bradford. Further Studies.

Studied neural networks and Evolutionary Algorithms (EAs) to a high level focusing on their use in computer
games.

Whilst my work focused on neural networks, a particular interest was Dynamic Scripting, a potentially useful
academic Artificial Intelligence (AI) technique that I believe would be useful to the games industry.

Whilst studying at postgraduate level at the university in AI for computer games I was responsible for teaching
parts of the AI for games module to third year undergraduates; the module included best-first search (i.e. A*),
types of finite state-machines (FSMs) and strategies related to the students’ coursework.

Taught in the AI for games labs for both third-year undergraduate students and masters students. The MSc
students were also taught more advanced AI techniques such as opponent modelling, neural networks, fuzzy logic
and evolutionary algorithms.

I was a Microsoft student partner with responsibility for representing Microsoft at the University and for
promoting Imagine Cup.

Took part in the 2006-2007 Imagine Cup in the AI for games tournament and successfully made it into the second
round.
2001 – 2006
University of Bradford. BSc (Hons) Cybernetics & Virtual Systems (1st Class).

Studied Cybernetics & Virtual Systems which encompassed a range of subjects including signal analysis, AI,
robotics, programming (primarily Java), virtual reality, game programming (primarily 2D Direct Draw) and
interaction design.

A subject of particular interest was the double module in ‘AI for Computer Games’ encompassing many
techniques. Different search methods were covered with optimisation techniques from mini-max search with
alpha-beta pruning to A*. Optimisations for A* were also covered such as hierarchical A* for vast distances.

Finished in the top few in the ‘AI for Games’ module leader board.

Final year project based on the evolution of virtual creatures living in a virtual environment written in Java. The
creatures used a subsumption architecture where the different behaviours’ priorities were evolved. The virtual
environment was used as the fitness function.

During my second and third year I also taught Java to first year Cybernetics students in the labs.
I N T E R EST S
Computer games (RPG, Strategy, Adventure, Indie), Artificial Intelligence, Archery (Compound Bow).
R E F E RE N C E S
Available on request.
Download