I am a highly motivated Video Games Developer and Software Engineer seeking the opportunity to work alongside passionate developers and deliver great value to your company!

BSc Graduate of Video Games Development, 1st Class, with 3 years’ industry experience in Agile Software Development. Experience working at all stages of the Software Development Life Cycle.Collaboration and Communication skills with experience leading and taking an active role in Agile seminars and meetings.


Summary

Games Development GraduateExperienced ProgrammerVersed in Industry ToolsAgile and Communication Skills
Liverpool John Moores Graduate (2023) with a 1st class degree with honors. My games experience primarily lies in Unreal Engine, working mostly with Artificial Intelligence and Gameplay Systems. I am familiar with producing and working with Game Design and Technical Design Documents.Actively programming Object-Oriented applications for more than 6 years, with 3 years direct industry experience in Software Engineering, CD/CI and Cloud Engineering. Past experience working with C#, Python and Ruby with current active use of C++ for Video Game applications.Strong experience with common industry tools such as Git, Perforce, JIRA, Confluence, Visio, Jenkins, Docker, Kubernetes and many common IDEs such as Visual Studio and Eclipse. Qualified in Azure Fundementals with experience in both CLI and GUI applications, alongside familiarity with AWS equivalent systems.BCs Foundation Certification in Agile with 3 years experience working in Scrum and Scaled Agile Framework. Experience leading a variety of Agile Seminars, communicating with stakeholders and presenting work in both technical and non-technical contexts.

Video Game Projects

Need-Based AI Agents

Unreal Engine 5

This Project was my University Final-Year Project. I aimed to show the processes involved in implementing a Sims-style AI, as well as evaluate its place in the video games industry.This project allowed me to explore the complexities of AI navigation, state management and task prioritization, as well as how similar systems are implemented in modern video games.Although the UE5 project failed to showcase the final AI solution, the preliminary research and design work involved overall improved my understanding of the complexities of advanced AI implementation in Unreal Engine.

Truck Off

Unreal Engine 4

Truck Off was a competitive 2-player Arcade Party game primarily exploring the implementation of full controller support, extensible levels and polymorphic game modes in Unreal Engine.The game experimented with a static camera angle to allow 2 or more players to remain in visual focus, as well as a variety of polymorphic Hazards. In addition, UI and Billboard elements were utilized, with the aim to improve visual clarity and provide responsive feedback.UMG elements were modified to allow controller interaction, meaning the game can be played from begging to end without a mouse and keyboard present.In the final version, 2 game-modes were implemented including BombTag and RaceMode, with several more planned to be implemented within the TDD.

Hex on the Beach

Unreal Engine 4

Hex on the Beach was a collaborative project to create a VR bartending game with fantastical elements. This project allowed me to explore the fundamentals of XR design as well as tactile and immersive VR interaction systems.The game allowed the players to directly interact with common objects such as corked-bottles, glasses and raw ingredients to assemble 'cocktails' in an intuitive and immersive way. The cocktails could then be served and verified by customers, each requesting a specific drink.Ingredients were planned to have puzzle-like elements, including a variety of strange and magical effects such as unusual physics properties like reverse-gravity, ingredients that flee from the player and possible explosive combinations.

Flocking AI and Ballistics

Unreal Engine 4

This project was an unnamed simulation of Flocking AI and Ballistic Physics, as well as a final combined simulation.The flocking demonstration showcased a series of Boids that would seek and steer together to maintain coherency, whilst a simulated predator would attempt to hunt them as they try to flee.The physics demonstration showcased the implementation of bespoke F=Ma interactions as well as predictive firing arc ballistics. This allowed me to determine the correct angle of incidence and force required for a projectile to hit a static target.The Flocking AI was later combined with the ballistics to enable an autonomous opponent to seek out a desired firing zone, allowing them to navigate and fire at a moving target with decent accuracy.

Passbreak

Visual Studio 2017 (C#)

Passbreak was a project completed at the Ministry of Defense to act as an engagement tool for youth-outreach programs. The project explored large dataset interaction, internet API connectivity and local read/write operations.The game gives the player a minute to input as many bad passwords as they can think of into an entry box, and scores them based on how often it appears in the "have i been pwned" password breach dataset. This originally utilized a local download of all 27GB of raw password hash-data that was stored in a pre-compiled bucket-sort, and was later improved with the use of the API provided.The player would then be recorded in a leaderboard and ranked amongst recent participants. The leaderboard system had a suite of controls to allow for the reading/writing of many different leaderboards so that they could be made separate for different events.

What Could Possibly Go Wrong? (WCPGW)

SFML Framework (C++)

WCPGW was a small game prototype to explore the creation of my own Video Game Engine (personally dubbed the "CholiaEngine") in C++ based on the SFML framework.It was based on an original demo-game of my own making in Game Maker, with the idea to replicate its features fully from the ground up in C++. The engine itself was extended a university project with the intent to re-imagine much of it for my own personal use. Gameplay and Engine objects were created and kept separate to allow for repeated use of common elements without creating rigid and specific implementations. An internal context provider was used to serve up specific singleton resources to allow access to assets across the entirety of the application without creating cyclic dependencies on engine functionality.Although the game was never made complete, and the engine eventually dropped in lieu of other projects, WCPGW served as a great learning experience for the underlying principles of a game engine and allowed me to explore a variety of mechanisms present in them.Video footage of both the GameMaker original and SFML recreation have been provided below.


SFML Project:

GameMaker Original:


Skills, Qualifications, Achievements and Hobbies