Skills
Java, SpringBoot, Python, ReactJS, ReactNative, C, with hands-on experience in backend engineering, testing, observability and CI/CD.
Projects
TrainTrack Live - Real-Time UK Train Information Platform
TrainTrack Live is a production-grade mobile app and web platform for tracking live UK rail services. Powered by official National Rail data, it delivers real-time departures, arrivals, delay updates, and service progress with a fast, minimal interface.
I architected and built the full stack system end-to-end: a React Native mobile app, an Express.js backend, a Kafka-consumer service composition pipeline, a OpenStreetMap + PostGIS-powered route visualisation engine for real-time train positioning, and more!
Features include:
- Real-time departures & arrivals for every UK station.
- Stop-by-stop service tracking with live delay updates.
- Push Notification-based journey alerts and saved frequent routes.
- Track a service banner and iOS Live Activities integration.
- Dynamic route visualisation with estimated live train position.
- Up to date station facilities and accessibility information, and first/last services.
- Ad-free, privacy first, performance focused design.
Visit traintrack.live for more information and to download on the App and Play Stores.




Research
During my time at university amongst other things, I studied large-scale digital platforms, network dynamics, and emergent behaviour in socio-technical systems. My work combines computational modelling, spatial analysis, and AI experimentation.
Crisis Mapping on OpenStreetMap (MEng Dissertation)
I conducted a large-scale quantitative analysis of 51M+ OpenStreetMap edits across 16 disasters to study how volunteer mapping behaviour evolves throughout crisis lifecycles. My results showed a sharp surge in post-disaster activity, primarily the creation of new elements, followed by longer-term enrichment and maintenance, with mapping intensity shaped by pre-disaster completeness and disaster type.
Explore the findings through my interactive visualisation platform.

Percentage differences in mapping change counts from pre to post-disaster. Red indicates increase; green indicates decrease.

Variation of OSM element types created and edited across disaster phases. Some element types like hospitals show clear surges in the immediate and post-disaster periods.
Political Bias in LLMs
We developed a structured multi-agent debate framework to examine political bias and interaction dynamics across a variety of LLMs by employing agents with personas and LLM-as-a-Judge. Contrary to prior work, we show that LLM agents can form echo chambers — reinforcing and intensifying shared beliefs over time — particularly when demographic cues such as gender are introduced.

Two Female Democrat and one Female Neutral agent debating illegal immigration: all agents informed of each other's gender. We observed the strongest echo chamber in this configuration; all agents intensified away from neutrality.
Airbnb & Platform Dynamics
We analysed large-scale Airbnb data and applied Prophet forecasting, preferential attachment modelling, Gini-based inequality metrics, and sentiment analysis to quantify how the platform adjusted during and post COVID-19. Our results showed a structural move toward private accommodation and measurable changes in spatial concentration and guest behaviour.

Graphs of the number of monthly reviews (solid lines) in 6 example cities for entire rental and shared-use properties, including prophet modelling (dashed lines). A clear preference towards private accomodation is evident.
