Hi, I'm Matthew Lockhart
A 1st Class BSc (Hons) Computer Scientist
Professional Experience
Undisclosed
Graduate Systems Engineer - Starting January 2025

Projects
GitHub Repo's available upon request
Purple background with the text Identify in the foreground
Python SQL Flask Jinja NLP Web-Scraper

A project based upon the goal: Identifying illegal wildlife trade through Twitter using Data Scraping and Machine Learning. The project is deployed to a website built using Flask and Jinja 2, incorporating a user account system through an SQL Database and hosting a Machine Learning Model built using Natural Language Processing.

A top-down overview of the game showcasing the map, ai and entities.
C# .NET OpenGL OpenTK GLSL

This project has two main sections, the game engine is built using OpenGL and utilises an entity component system to promote modularity and reusability. The engine boasts a variety of systems, components and managers to be applicable to multiple game types. 'Meat-Man' was built to prove the efficacy of the engine and is a Pac-Man clone, reimagined.

A soft body physics simulation.
Rust Rust C++ CUDA OpenGL

This Cloth Physics Simulation was created in both Rust and CUDA hosted from C++ to demonstrate the ability of implementing a multi-threaded project on both the CPU and GPU. The simulation is esentially a 2D array of points, each point having information relevant for the simulation physics such as: spring coefficient, dampening coefficient, mass, velocity, and neighbor nodes. The distance between each point is rendered as a line.

Black background with an image of a sudoku puzzle in the middle with the text 'Sudoku Solver' in the foreground
C++

A project using C++ that solves valid sudoku problems programatically. This project solves 9x9 sudoku's in around 20 Microseconds. The program ingests a CSV with a valid Sudoku Puzzle and solves it whilst measuring metrics of the program such as candidates, solved cells and amount of passes as a means of measuring the efficiency and areas of improvement regarding the solving algorithm.

Comma seperated value file in the background with arbitrary data, 'Keyword Identifier' in the foreground
C# .NET

A small, personal project to be used for my E-Commerce company. My Company has a variety of branded products and concurrently runs advertising campaigns using Amazon's PPC System on numerous listings. To identify poorly performing keywords, I developed a program that takes in a CSV of keywords and their data then using criteria inputted by the user, analyses keywords that are poorly performing.

A Unity game in the background showcasing local multiplayer, Capture the flag text in the foreground
C# Unity

A group project developed using Unity and managed using Agile methodology. I was responsible for all the game programming and created a local multiplayer 2D Capture the Flag game with a map based upon the University of Hull campus. A variety of features take place within the game such as the scoring, damaging, dynamic obstacles such as rotating cubes and win conditions with different menu screens.

A simple logo for a leetcode program.
C# .NET

A project I've been working on as a way of showing my LeetCode solutions in C# categorised into: Easy, Medium and Hard any LeetCode I have done is uploaded on this repo, see my GitHub for more.

Game Dev Projects
Click images for Gallery
An image of the 'Enter the Dungeon' map.
Lua

A project focused on creating an engaging, multiplayer obstacle course game using Lua scripting for game logic including a variety of obstacles, persistent player data, player controllers and more. The project uses high-quality 3D models and carefully considered world design to deliver a good looking game within the low-poly artstyle.