Computer science student · Trinity College, Dublin

Curious mindThoughtful solutionsHands-on builder

I’m a Computer Science undergraduate at Trinity College Dublin. I build software, explore how systems work, and turn creative ideas into things people can use.

A builder’s mindset

From code to a
working system

Software, interfaces and low-level systems — explored through hands-on projects.

See the projects
01 / Selected work

Ideas, put into practice

A selection of projects I’ve built

Android & cloud services01

InternTrack internship tracker

Built a native Java Android app to organise internship applications and manage CVs, with a serverless AWS backend, status filters, private document storage and an AI-assisted CV-tailoring workflow.

  • Java
  • Android
  • AWS
  • DynamoDB
  • OpenAI integration
Project details

Developed an Android dashboard for adding, editing and filtering internship applications, including company, role, job link, application date, status, notes and attached CVs. A document library manages uploaded CV versions. A separate offline demo stores applications and imported CVs on the device without requiring cloud setup.

The cloud build uses Cognito authentication, API Gateway, Java 21 Lambda functions and DynamoDB, with private S3 storage and time-limited upload and download links. An asynchronous worker integrates OpenAI for job-specific CV tailoring, with editable DOCX output, preview and attachment to applications. CloudFront delivers public application tips.

Systems & architecture02

Building a processor from the ground up

Designed, integrated and tested a working CPU in Vivado, bringing digital logic and computer architecture into one complete system.

  • Vivado
Project details

Designed and implemented a fully functional CPU in Vivado, applying computer architecture and digital logic concepts to develop, integrate and test key processor components. The project involved translating theoretical hardware design principles into a complete working system, connecting individual components into a functioning processor architecture, and validating its behaviour through simulation and practical implementation.

Data & visualisation03

Making complex flight data readable

Built an interactive view of airport activity, organising schedules, delays and overnight flights into a clear visual application.

  • Processing / Java
Project details

Built an interactive airport flight simulator that turned raw flight data into a clear visual representation of airport activity. Developed the system responsible for organising flight and airport information, tracking scheduled and actual departure and arrival times. The simulator also identified delays and handled overnight flights. The project demonstrated the ability to transform large amounts of real-world data into a structured, user-friendly application that made complex flight operations easier to understand.

Web, gameplay & cloud persistence04

The Final Turn-Based Battle

Built a browser-based RPG with party selection, strategic combat and persistent saves. Connected the HTML, CSS and JavaScript frontend to AWS Lambda and Aurora DSQL for saved battles, inventory and combat history.

  • HTML
  • CSS
  • JavaScript
  • AWS Lambda
  • Aurora DSQL
Project details

Created a turn-based RPG where players choose three of five supporting characters to join Niko Himura. The game combines character abilities, items, status effects and multi-phase combat with dialogue and animations.

Added five manual save slots and an opening autosave, restoring battles at a prepared player-turn boundary. AWS Lambda and Amazon Aurora DSQL store snapshots, inventory and combat history, including branches created by loading earlier saves. Amazon S3 and CloudFront serve the game assets; local development uses PGlite, a PostgreSQL engine.

Client group project05

Independent players One shared track

Contributed multiplayer functionality to TORCS in an IBM client group project, configuring players and customising vehicle behaviour.

  • Java
Project details

Worked on an IBM client group project that introduced multiplayer functionality into TORCS, an open-source racing simulator. Configured multiple independent players so they could participate in the same simulation simultaneously. Customised the driving behaviour of different cars by adjusting their speed, steering, braking, cornering and traction characteristics, contributing to a multiplayer racing environment where each participant could operate independently and exhibit different driving behaviour.

Mathematical computing06

Small tools Useful answers

Programmed a suite of TI-84 utilities for equations, number conversion, trigonometry and mathematical exploration.

  • TI-BASIC
Project details

Developed a collection of programs using the TI-84 programming language to explore mathematical computation, number conversion and calculator-based automation. Projects included a Gamma Function Calculator, Quadratic Equation Solver, Pythagorean Triple Generator and Polar-to-Rectangular Converter. Also built a Binary-to-Decimal Converter, calculators for hyperbolic sine, cosine, tangent, cotangent, cosecant and secant, plus a simple idle animation using print statements to demonstrate basic graphical and interface capabilities.

02 / The journey so far

Learning by doing

Desoft

Completed a 1-month internship.

Verisis, Ankara

Assisted with development and testing for a forensic document analysis system.

Collaborative software projects

Coordinated with teams on a Morse code game, TORCS multiplayer work, a terminal flight hub and an ARM assembly Simon Says game on an STM32F3 processor.

Trinity College Dublin

Computer Science undergraduate student.

03 / My toolkit

Built on solid foundations

Languages and tools

  • Python
  • Ren'Py
  • Java
  • C
  • ARM assembly
  • Processing
  • XML
  • UML
  • Vivado
  • TI-84 programming

Computer science

  • Hash maps
  • Linked lists
  • Queues
  • Min-priority heaps
  • Binary search trees
  • Sorting algorithms
  • Shortest paths
  • CPU design

Project strengths

  • Analytical thinking
  • Problem-solving
  • Computer literacy
  • Testing
  • Creative systems
  • Debugging

Collaboration

  • Teamwork
  • Communication
  • Group delivery
  • Client-style projects
  • Project coordination
04 / What’s next?

Let’s build something

Up to 4,800 characters. Your message is sent securely by email.

Quick verification Enter the answer to confirm that the form is being completed by a person.

All fields and CAPTCHA verification are required.

Interactive terminal

A little personality behind the portfolio. Try a command, explore a game, or just say help.