Hi, I'm
Anthony
a Software Engineer
Software Engineer specialising in internal tooling with C# and Python. I’ve developed web servers for static analysis and compliance tools, enhancing scalability, automation, and defect awareness. Key projects include streamlining compliance with a Black Duck cache web server, deploying Coverity on Kubernetes, and developing Slack bots for team updates. Additionally mentored student groups, providing industry insights and hands-on experience.
Graduated with First Class Honours. Developed real-time rendering engines with C++, C#, and DirectX11, exploring rendering techniques, GUIs, networking, and multithreading. Projects included collision detection, rigid body dynamics, CPU optimisations, and compute shaders. These projects enabled me to develop my problem-solving, research, and technical writing skills through documentation and critical analysis of my work.
As part of the Sustained Engineering team, I worked to enhance the quality and stability of the Unity engine codebase. My contributions included fixing C++ engine bugs, writing C# automated tests, creating C++ models to reduce false positives in Coverity, and triaging backports and branch instability. I also developed minimal reproduction C++/C# samples to report Coverity defects to Synopsys.
Rooksy is a web app built with Next.js (React) and TypeScript, featuring daily chess-based puzzles where users aim to capture all pieces in the fewest moves. The app resets daily, creating a fun, recurring challenge. It is deployed on Vercel with a PostgreSQL database hosted on AWS, using Prisma as the ORM. Building this project strengthened my skills in React, full-stack development, database design, and deploying production-ready applications.
A fast-paced tower-defence game built in six weeks as part of a six-person programming team for my 'Technical Games Production' module. I led the development of the voxel terrain mechanics, prototyping in Unity before porting to C++ with DirectX11. My contributions included designing a voxel modelling tool, implementing voxel terrain generation with greedy meshing and texturing, and adding interactive features like screen-to-world raycasting, placing voxel models, and build mode GUI.
This project is a ray-marched rendering engine built using C++ and DirectX11, developed as part of a final-year Games Technology Research Project. The engine uses signed distance functions for object rendering and includes a GUI for interacting with scenes and applying visual effects. ImGui was employed for the GUI, and DirectXTK for window handling and helper libraries. The accompanying 15,000-word report covers the history of rendering techniques, ray marching features, project direction, implementation, and critical evaluation.
A 3D interactive scene rendered with DirectX 11 and C++, featuring a ship, water, land, and rocks. This project, part of my 'Further Game and Graphical Systems Development' module, marked my first exploration of programmable pipelines, including vertex and pixel shaders for effects like water rendering. Semester 1 focused on rendering and asset loading, including a hierarchical scene graph, water shaders, and advanced lighting techniques. Semester 2 introduced physics, incorporating realistic velocity, angular motion, collision detection, and a particle system. The result was a detailed and interactive scene combining visuals and physics seamlessly.
Street Dreams is a VR shooter, developed during the period following my internship at Unity and before my third year of university, and was released on Steam in September 2021. The game was made with Unity and tested using a Quest 2.
A remake of the 1983 Super Mario Bros. using SDL and C++, featuring side-scrolling, additional enemies, and a custom level editor. Developed for my 'Game Engine Creation' module, the project focused on perfecting the 2D collision system. Key features include a character controller, animation system, level saving/loading, and axis-aligned bounding box collision.
This project combines a C# and WinForms chat app with a 2D multiplayer racing game built using MonoGame. The chat supports messaging, image sharing, and game invites, while the game features mechanics like radius collision, checkpoint tracking, and player role persistence using TCP and UDP communication. Developing it introduced challenges in synchronising multiplayer interactions and ensuring accurate client updates.
Whether you're curious about my work, have a proposal, or simply want to connect, I'm all ears!
Reach out through either button below, and let's talk soon.