Personal project
Cadence Club
A social fitness app for iOS and Android: live GPS tracking with pace, splits and elevation, weekly training plans generated from each runner's goal, a community feed, and route building on Mapbox. Supabase carries auth, data and storage; activities sync to Apple Health and Health Connect, and queue on the device when the signal drops.
- React Native
- Expo
- TypeScript
- Supabase
- Mapbox
- Zustand
Databases
A transit network you can actually run: tickets, wallet top-ups, live trip scheduling, fare promotions and admin analytics, on a PostgreSQL core with a Python REST API in front of it.
- PostgreSQL
- Python
- REST API
- JWT
- Docker
Operating systems
Hospital Emergency Simulator
A hospital emergency service simulated in C, where patients, triage and doctors are separate processes. Named pipes, message queues and shared memory carry the traffic; mutexes and condition variables keep it honest.
- C
- Linux / POSIX
- IPC
- Shared memory
- Multithreading
Computer networks
A distributed client–server system in C that runs classes and broadcasts news in real time. TCP handles control, UDP handles administration, IP multicast handles the stream, and pthreads keep it all concurrent.
- C
- TCP / UDP
- IP multicast
- Pthreads
- Sockets
Object-oriented programming
Invoice and client management in Java, designed from UML upward. The interesting part is the VAT engine — rates change by location and product type, so the rules had to stay separate from the objects that apply them.
- Java
- OOP
- UML
- Design patterns
Machine learning
An end-to-end pipeline that reads inertial sensor data and tells walking from sitting from climbing stairs. Feature engineering first, then PCA to cut the dimensions, then SMOTE to fix what the class balance broke.
- Python
- Scikit-Learn
- Pandas
- NumPy