Craig Court
Lead Tools Engineer at Splash Damage- Claim this Profile
Click to upgrade to our gold package
for the full feature experience.
Topline Score
Bio
Experience
-
Splash Damage
-
United Kingdom
-
Computer Games
-
300 - 400 Employee
-
Lead Tools Engineer
-
Feb 2023 - Present
-
-
-
Rebellion
-
United Kingdom
-
Computer Games
-
300 - 400 Employee
-
-
Apr 2022 - Feb 2023
Continuing to manage and grow a team of programmers, to deliver tools and features for project teams.- Maintenance and development of both user-facing tools and a framework used by other teams to create their own tools.- Managing current tasks using agile.- Working with product owners to plan their backlogs with stakeholders, and then scheduling work into a roadmap based on the team's capacity.- Reviewing and developing team members using a 360 review process.- Reviewing technical design documents to ensure we have captured stakeholder requirements and produced a design that is extensible, maintainable and robust. Show less
-
-
-
Jan 2020 - Mar 2022
Leading a team of six programmers developing gameplay systems and an in-house application for editing game assets - Communicating and planning priorities on 11 feature backlogs covering tools, audio, GUI and input with stakeholders - Working with game team producers to schedule high priority tasks on a 6-month roadmapLed the design and implementation of an extensible data export system in C++ - Used a technical design document process to develop and communicate requirements, designs and tasks - Created a system that encapsulates data transformation logic with the data definitions and scopes data so duplicates can be promoted to higher scopes Produced a career development matrix to use with the 360 review processCreated a testing strategy document outlining how we will apply different types of tests to implement a suite of maintainable, meaningful testsContinued to work with programmers across the company to implement data editors using the data management framework and Model-View-Presenter patterns Show less
-
-
-
Sep 2017 - Jan 2020
Designed and led the implementation of a data management framework which generates source files from a data schema and guarantees that all data supports reflection and change notifications. This was built on with systems to record and replay data transactions, flag data assets as modified and report data relationships.Designed and implemented a Model-View-Presenter pattern for presenting and editing data through a UI. This included a command pattern for propagating user intent so that it can be handled consistently by common handlers. A suite of reusable presenters was created using this pattern, such as trees, tables, node graphs, and generic property interfaces using reflection.Took ownership of tools and runtime aspects of a GUI system used in our games. Refactored the classes used for representing properties so that they could be bound to animations, designer created bindings or mapped to values from code. Implemented other features and created a roadmap for planning that was regularly reviewed with stakeholders. Show less
-
-
-
Electronic Arts (EA)
-
United States
-
Entertainment Providers
-
700 & Above Employee
-
-
Aug 2014 - Sep 2017
Drove an effort to create and implement good patterns for editor development - Started bi-weekly community meetings to discuss editor design patterns - Refactored code to be more robust, maintainable and testable - Conducted lessons and training in WPF for engineers in the groupImproved workflows and editor code quality - Product owner for a backlog of editor bugs and tasks - Pioneered a modularisation effort to isolate code for independent features - Documented API changes required to separate code into modules - Developed new process to identify and measure coverage of automated tests - Collaborated with other engineers to implement a suite of automated testsWorked with teams to develop deformation and destruction simulation systems - Iterated with users to the customize editor to their preferred workflows - Modified import pipeline to accommodate lattice representations - Collaborated on design of new, extensible data representations - Created tool to apply forces during gameplay to facilitate testing - Implemented proof-of-concept automated tests for gameplay featuresCreated Maya prototype for texture mapping using megatexturesDeveloped prototype 3D editor with improved efficiency and flexibilityWorked mostly in a large C# and WPF codebase of around one million lines Show less
-
-
-
Dec 2012 - Aug 2014
Designed and implemented a cable tool to improve workflow of authoring cables - Created editor components allowing artists to quickly author cables - Produced procedural generation system to output runtime assets - Implemented analytical anti-aliasing in shaders to improve visual qualityProvided support to a team of artists using a procedural road tool - Added data verification checks and markers to indicate broken data - Extended editor and geometry generation to support vertex coloursDesigned and implemented a new procedural road tool - Met regularly with artists and programmers to iterate design features - Created a design that addressed key requirements, including reusable components, improved collaboration workflow and better performance - Produced technical design briefs and a delivery plan - Implemented key features of tool as a shared editor extension Show less
-
-
-
May 2012 - Dec 2012
Provided an end-to-end solution for platform specific geometry - Conducted meetings with key stakeholders to ascertain requirements - Modified asset import workflow, editor components and build pipelineImplemented runtime debug geometry to assist artists when placing special effectsCreated live performance graph to show CPU and GPU usage statisticsCollaborated with artists to create a new curve editorAdded to asset management API to support new changelist filtering features Show less
-
-
Education
-
Imperial College London
Doctor of Philosophy (PhD), Computer Architecture -
University of Bristol
Master of Engineering (MEng), Computer Science