Welcome to my portfolio

Hi I'm Ryan, a Full Stack Software Developer based in Manchester

githublinkedin

About me

Passionate Learner

I'm always eager to learn and solve complex technical problems. Whether it’s mastering a new programming language or exploring new technology, I love diving deep and expanding my skillset.

Collaborative Problem Solver

I thrive when working with others. Sharing ideas and solving problems as a team is something I enjoy, as it allows me to see perspectives I might not have thought of.

Disciplined Athlete

I've competed in athletics, participating in events like shot putt and high jump. Now I work out regularly, which has taught me goal-setting and self-discipline that I apply to every part of my life.

Love for Games

Gaming is a big part of who I am. Whether it's strategy games or competitive shooters, I love honing my skills and coordinating with teammates to achieve success.

Bilingual Communicator

Fluent in both Welsh and English, I have strong interpersonal skills and enjoy connecting with people through clear and effective communication.

MSc Computer Science Student

Currently completing my MSc in Computer Science at Lancaster University, where I’ve been developing my passion for technology and innovation.

Creative Problem-Solver

I love finding creative solutions to technical problems and always aim to think outside the box. My experience with programming has taught me how to approach challenges from multiple angles.

Mentor and Guide

I take pride in helping others learn and grow. Whether it's through teaching assistant roles or supporting my peers, I enjoy guiding people and sharing knowledge.

Driven by Curiosity

Curiosity fuels everything I do. From exploring new technologies to diving into personal projects, I am always driven to discover how things work and how I can make them better.

Skills

Java
C#
C
Typescript
Python
AWS
Azure DevOps
React
.Net Core
Git
SQL Server
Spigot/Bukkit
MATLAB
Linux development
Playwright

A small selection of recent projects

tello-rust

Tello-rust was my first small to medium sized project in Rust. It is a wrapper for controlling a DJITello drone using the Ryze Tello sdk. The library works as a wrapper for this SDK and works over a UDP port. The aim of it was to translate DJITelloPy from Python to Rust as a way of learning a bit about a new language. I uploaded version 1.0 of the library to crates.io (the rust community's crate registry) on the 14th of September 2024 and by the 19th it had garnered over 350 downloads.
Creating this Rust library to interact with the Tello drone has taught me several important concepts. I've gained a deeper understanding of Rust's ownership and borrowing model, particularly when using Arc and Mutex to safely share state across threads. I've also become more proficient in handling errors and optional values through Rust's Result and Option types. Additionally, managing state using HashMap and custom enums like StateValue has helped me appreciate Rust's ability to build safe, performant, and reliable systems.

tello-rust

Beesprite

Beesprite is a pixel painter application I collaborated on in my second year of University. Each group had to draft up a design report and a timeline which we could then use as a basis for our projects. I took a leading role in organising the tasks and deadlines for every member of the group and we managed to turn in a successfully completed project with expected functionality including undo/redo, import/export feature for a couple of different image types and fully customisable theme colours.
Working on this project taught me good leadership and communication. It also helped build good version control practises where we would work on each new feature as its own feature branch, and then peer review eachothers code before accepting any pull request. This project also gave me the chance to improve my Java programming. If I were to remake this project, one thing I would definitely change is our codebase. As we were fairly new to semi large Java programs, our directory management was not ideal.

Beesprite

Education and Work Experience

Junior Software Developer

(Dec 2025 - Present)

Chillblast

Fullstack software developer responsible for maintaining and active development of both the Chillblast and CCL Computers' websites. As part of a 3 man dev team we released a fresh new version of the CCLOnline website utilising C#'s MVC pattern and a CQRS architectural pattern for data queries. I've worked on updating legacy .Net Framework code to .Net Core, ensuring that any updated features are tested and continue to work as they used to on the old site. Currently we're working on creating a new in-house CMS using React Typescript to make content management on the sites easier for our teams.

Junior API Developer

(Aug 2024 - June 2025)

Lancaster University

Worked on various applications for different departments and researchers at the University. Aiding in development and debugging of both front and back-end applications in React, Typescript and AWS. Worked in an agile environment with stand ups every morning, making use of Git and Azure DevOps to continually improve applications.

Industrial Placement Student

(Jan 2025 - March 2025)

Microsoft Research

Participated in the full software-development cycle where I designed and built an open-source music teaching tool for the Micro:bit, which I later based my dissertation on. The application was built using Typescript and C++. Discovered bug in Micro:bit's audio mixer pipeline and got it fixed.

Teaching Assistant

(Oct 2022 - January 2025)

Lancaster University

Mentored students in Java and C, assisting with debugging and conceptual understanding. Improved my communication skills through actively interacting with the students and working them through whatever issues or questions they had with lab or coursework.

Lancaster University

(Oct 2021 - July 2025)

Integrated MSci (Hons)

Computer Science with Industrial Experience

First Class (1st)


Ysgol Gyfun Gymraeg Bro Myrddin

(Sept 2019 - August 2021)

A-Levels

MathsFurther MathsChemistryPhysics

A+A+AA