I’m a Computer Science educator and Managing Senior Software Engineer specialising in building full stack Web Applications.
About · Contact · Selected work · Writing
For the frontend I love building reactive web applications using Sveltekit, or Vue.js & ASP.NET Core (MVC / Razor Pages). As for the backend, I work with ASP.NET Core WebAPIs and Node.js with TypeScript. I am a proponent of Docker containerisation and virtualisation, as well as automated testing within CI/CD workflows. For cloud computing my service of choice is Azure but I like AWS too.
My degree in English (with Creative Writing modules) led me to a deep appreciation for Prompt Engineering.
My roots as a Teach First Ambassador drive me to share knowledge freely and to encourage others to do the same.
The best way to reach me is by DM on LinkedIn.
Most Fun and Creative · August 2023
Pokemon Adventure ChatGPT Plugin — A ChatGPT plugin that allows the user to play an interactive Pokemon adventure game, taking actions in a 'choose your own adventure' style text-based adventure story.
December 2023
Interactive History Explorer ChatGPT Plugin — An interactive plugin that uses SK and GPT to create personalised, immersive journeys through different historical eras, complete with interactive dialogues and historical trivia.
View the hackathon submission
Verify the Credly credential
- Teaching: I'm a fully-qualified teacher and taught Computer Science in inner-London in schools in challenging circumstances.
- Building: I’m currently working on small web applications to save teachers time and effort and improve quality of teaching and assessing in the classroom.
- Learning: I’m currently learning how to train reinforcement learning models.
- Collaborating: I’m looking to collaborate on my open source projects.
- Ask me about: Tackling educational inequality, launching a tech startup (especially if you're a student), Discord bots, home labs/servers or modern web app development.
- Pronouns: He/Him
- Fun fact: I used to be ranked in the top 5% of players worldwide for Rocket League...but most of my friends were top 2% 🤦♂️
|
|
Technical Team Leadership (Online) University of Oxford – Oxford Lifelong Learning · Jul 2026 JSON · 🔗 Credential |
|
A declarative, self-hosted containerised tool for visualising and managing home lab and network architecture diagrams. TypeScript |
|
A web app to track completion of a living Pokédex. SvelteKit Node.js TypeScript Supabase MongoDB Netlify |
|
A web app to allow scrum teams to perform estimations quickly and without unnecessary effort. SvelteKit Node.js |
I like to share my knowledge freely, and when I have an idea for a project that might be useful to others I make it open source.
- SelectionWheel — A free web app with a fun and simple selection wheel. Enter a list of names to shuffle them, with a spinning wheel animation.
TypeScript · Webpack - YouTubeChannelDownloader — A docker container (can also be run as a Windows console app) to download all videos from a YouTube channel in the highest quality available, and move them via SFTP to another device for processing. This is ideal for Plex.
Built as a Dotnet Core console application and Dockerised to run on any host OS. Once fully complete it will be able to be run directly from an image on Docker Hub. - Creek.FileRepository — An easy way to hook up various file storage mechanisms, following the repository pattern with a factory. For example, SFTP.
Built as a Dotnet Standard 2.0 library to be used in others' projects as a NuGet package. - Creek.HelpfulExtensions — A package containing helpful extensions to either save time or cognitive load.
Built as a Dotnet Standard 2.0 library to be used in others' projects as a NuGet package. - MupBot — An open source Discord bot for helping coders gain experience working on open source projects.
Node.js · Discord.js · Docker - More repositories — Several other repositories can be found through the Repositories link above.
- Adding JSNLog to ASP .Net 6 with Serilog
- Creating a reactive SPA simply within an ASP.Net Core web app with Vue.js
- Docker Compose for ASP.Net Core with Postgres + S3 backups
- Docker Compose for S3 Backup and Restore of PostgreSQL
- Docker Compose for Elasticsearch and Kibana 7.9
Long-term aim: To run my own education software house 3 days a week, teaching Computer Science the other 2 days a week and inspiring the next generation of coders.
.NET .NET Core Vue.js Node.js Docker GitHub Bitbucket Git AWS Jira





