Available for work

Software
Developer.

2 years of experience in Microsoft's Power Platform and experience coding and maintaining full-stack business software solutions.

About

Building practical software for real businesses.

I'm a software developer with hands-on experience delivering business solutions on Microsoft's Power Platform โ€” Power Apps, Power Automate and Power BI โ€” alongside full-stack web development with the MERN stack (MongoDB, Express, React, Node.js). From real-time chat applications and secure authentication services to immersive AR/VR experiences built in Unity and low-level systems programming in C โ€” virtual machines, networking and concurrency โ€” I enjoy turning ideas into polished, working products.

2+

years of professional
experience

Skills

Tools & Technologies

CC
PythonPython
FlaskFlask
GoGo
HTML5HTML5
CSS3CSS3
JavaScriptJavaScript
SQLSQL
Power AppsPower Apps
Power BIPower BI
Power AutomateAutomate
Node.jsNode.js
ReactReact
MongoDBMongoDB
GitGit

Portfolio

Featured Projects

Unity ยท AR / VR

Spatial Augmented Reality Spray Painting (SAR Spray)

The sensation of spray painting the environment around you, without the mess! Using the spatial tracking of the HTC VIVE Virtual Reality kit and projection mapping with a projector, the environment around you becomes the canvas. A custom controller makes spraying feel natural โ€” move your arm closer or further away for the desired spray, with a tactile button held while painting.

C#UnityHTC VIVE

MERN ยท Real-Time

๐Ÿ’ฌ Real-Time Chat App

A real-time chat application built with the MERN stack and Socket.IO for instant messaging between users, with JWT authentication and secure login/logout.

  • Instant messaging powered by Socket.IO with live online/offline user status
  • Secure registration and login with JWT, bcrypt-hashed passwords and protected routes
  • Message persistence in MongoDB with auto-scroll and timestamps
  • Input sanitisation, CORS protection and JWT verification middleware
MongoDBExpressReactNode.jsSocket.IO
View Code โ†’

MERN ยท Security

๐Ÿ” Advanced Authentication Service

A secure, production-ready authentication service built on the MERN stack, demonstrating the advanced authentication flows used in real-world systems.

  • JWT authentication with access & refresh tokens and secure token rotation
  • Email verification on registration via Mailtrap โ€” unverified accounts can't log in
  • Forgot/reset password flow with expiring one-time secure tokens
  • bcrypt password hashing, CORS and Helmet protection
MongoDBExpressReactNode.jsJWT
View Code โ†’

MERN ยท Full-Stack

๐Ÿง  LinkedIn Clone

A full-stack professional networking application that mimics the core functionality of LinkedIn โ€” connect, share insights and build a professional presence.

  • Dynamic news feed โ€” create, edit and delete posts with text and image support
  • Real-time like and comment interactions, plus connection requests
  • Detailed profile pages with experience, education and skills
  • Zustand state management, Multer/Cloudinary image handling, fully responsive UI
MongoDBExpressReactNode.jsZustand
View Code โ†’

React Native ยท Mobile

โœ… React Native Todo App

A modern React Native todo application powered by Convex for real-time data synchronisation, with full CRUD functionality and live updates.

  • Full CRUD with instant sync โ€” no manual refresh thanks to Convex reactive queries
  • Settings page with live task statistics aggregated via Convex queries
  • Light and dark mode with a clean, component-based architecture
  • Built with Expo, Convex hooks (useQuery / useMutation) and Tailwind styling
React NativeExpoConvexTailwind
View Code โ†’

Low-Level

Systems Programming in C

A collection of low-level projects exploring memory, networking, concurrency and hardware concepts โ€” written in C with no frameworks, just the standard library and POSIX APIs.

Virtual Machine

๐Ÿ–ฅ๏ธ LC-3 Virtual Machine

A virtual machine that emulates the LC-3 architecture โ€” 65,536 memory locations, a full register set, condition flags and an instruction decode loop, with terminal I/O handled through raw POSIX termios. Runs real LC-3 programs.

Networking ยท Concurrency

๐Ÿ“ก Circular Telemetry Logger

A UDP telemetry pipeline that streams flight-style packets โ€” altitude, GPS coordinates, pitch/roll/yaw and system status โ€” from a sender to a receiver, buffering them in a circular ring buffer. Modular design with separate telemetry, sender and receiver components.

CUDP SocketsRing Buffer
View Code โ†’

Concurrency

๐Ÿ”„ Atomic Ring Buffer

Two ring buffer implementations: a standard pointer-based buffer with automatic wrap-around, and a lock-free, thread-safe variant built on <stdatomic.h> that prevents race conditions during concurrent reads and writes.

CAtomicsLock-Free
View Code โ†’

Embedded Concepts

๐Ÿšฉ Bitwise Flag System

A bitwise flag system modelling the status registers found in embedded and defence software. READY, ARMED and FAULT flags each occupy a unique bit in a uint8_t register, manipulated with set, clear, toggle and check operations.

CBitwise OpsEmbedded
View Code โ†’

Networking

๐Ÿ“จ UDP Packet Sender & Receiver

A connectionless UDP sender and receiver pair built directly on the sockets API. The receiver listens on a chosen port while the sender fires messages at any IP and port โ€” exploring how datagrams move without a pre-existing connection.

CSocketsUDP
View Code โ†’

Graphics

๐Ÿ•’ Analog Clock

A real-time analog clock rendered with raylib. Hour, minute and second hands and all sixty minute markers are positioned with trigonometry from the system clock, drawn each frame in a 600ร—600 window.

CraylibTrigonometry
View Code โ†’