My Projects

A mix of coursework, personal projects, and the platform I'm currently building at Teleagriculture. Source is on GitHub for anything that isn't still private.

Featured Work

In Development

Teleagriculture Sensor Cloud Platform

Jul 2026 - Present

A cloud-based web application that ingests and manages data from teleagriculture sensors. I joined as Programmer RA and lead the technical direction. Still early, more to come as it develops.

Tech Stack
Cloud ArchitectureWeb ApplicationIoT / Sensor Data
Key Highlights
  • Leading architecture and technical direction as Programmer RA / Technical Lead
  • Designing the cloud service that ingests and stores live sensor data
  • Building the web application layer end to end

Role: Programmer RA / Technical Lead

Secure Journaling Application

Oct 2025 - May 2026

A secure journaling application developed as part of a 4-person Agile team, with a strong focus on maintainable engineering and data privacy.

Tech Stack
JavaGitJUnitLangChain4jMVC Architecture
Key Highlights
  • Designed and delivered a secure journaling app built to hold up as the codebase grows
  • Enforced a Git pull-and-merge workflow and automated backend unit testing with JUnit
  • Architected a decoupled MVC backend with an integrated NLP model (LangChain4j) for semantic topic analysis
  • Kept sensitive user entries encrypted and access-controlled throughout

Role: SCRUM Master / Backend Engineer (4-person Agile team)

Java Online Messaging App

Summer 2025

A collaborative multi-threaded real-time messaging application using Java Sockets and Concurrency.

Tech Stack
JavaJava SocketsConcurrencyOOP Design PatternsGit/GitHub
Key Highlights
  • Architected multi-threaded real-time messaging application with Java Sockets
  • Handled simultaneous user connections with robust concurrency patterns
  • Implemented scalable client-server architecture with OOP design patterns
  • Managed version control with feature branches and pull requests

Role: Collaborative Developer with fellow student

Password Manager

Personal Project

A secure credential storage solution with encryption and authentication.

Tech Stack
PythonSQLPyQtAES-256SHA-256 Hashing
Key Highlights
  • Implemented AES-256 encryption and salted hashing (SHA-256) for data security
  • Engineered responsive GUI using PyQt with focus on UX and security flows
  • Built intuitive CRUD operations for credential management
  • Demonstrated full-stack development with Python backend and database integration

Role: Full-Stack Developer

Maths Revision Game

A-Level Coursework, 2022

A client-server Python application for student progress tracking and revision.

Tech Stack
PythonSQLClient-Server Architecture
Key Highlights
  • Built full-stack client-server Python application with database integration
  • Implemented progress tracking and high score persistence
  • Collaborated with stakeholders to gather requirements and feedback
  • Demonstrated effectiveness as a revision tool with positive student feedback

Role: Solo Developer

Additional Projects

Movie-Rankings

Movie-Rankings preview

This project is a movie ranking game that uses the ELO rating system to rank movies based on user opinions during match-ups. This is used to find a user's favourite movies!

Calculator

Calculator preview

A simple calculator application built using PyQt5, a library for creating desktop applications with Python. Qt Designer, a GUI layout and forms designer, was used for creating the calculator's interface.

Password-Manager

Password-Manager preview

This is a Python program that allows you to securely store and retrieve your passwords. It uses encryption to protect your passwords and has a user-friendly interface for adding, viewing, and editing them.

A-Level-Maths-Revision-Game

A-Level-Maths-Revision-Game preview

This project is my A-level computer science coursework, in which I developed an interactive Maths Integration and Differentiation revision game. The application uses a combination of client and server-side Python programs, as well as a central server database to store user data and questions.