I am currently a Full Stack Developer at Songkick / Warner Media Group. Songkick's role is to provide near real-time information and pricing for live music event tickets from a broad network of ticketing suppliers. Songkick is a regional team, with the headquarters based in London, but with people working from Spain, Turkey, Wales and Scotland. I have experience with Ruby on Rails, Node.js, and Kubernetes due to a microservice architecture. Worked with BigQuery for large scale data analysis from our Export Transform Load jobs. React, Embedded Ruby (ERB), JavaScript (some TypeScript), CSS and HTML on the frontend. ERB is the Ruby Templating System which allows reusing and embedding of Ruby (and Javascript) code into HTML documents. Passed my AWS CLF-C02 Exam on Friday 24th July 2026, after revising for over half a year.
I led the new search modal work on Songkick. Additionally, I had a large input into the design of the React work for the search carousel and results retrieval on the website. The core search functionality was based on Elasticsearch and I built the React component to interface with that platform. This meant communicating with the Design team to implement desktop and mobile Figma designs, ensuring the modal's reactivity with the backend API, while maintaining brand consistency, while meeting accessibility (a11y) standards.
Experience
Full Stack Developer - Songkick / Warner Media Group: October 2022 to Present
Integrated data feeds from a broad network of ticketing suppliers and partners, ensuring support with our systems.
React.js frontend. Iterating, developing and designing the search modal, integrating Figma designs and QA feedback.
Agile development, with standups, Kanban Boards (Shortcut), sprints, and retrospectives.
Wrote Investigation Documents, Product Requirement Documents, Engineering Design Docs, and Documentation around existing code. Reviewed by Songkick and Warner teams.
Used Cucumber for end-to-end BDD testing and Rspec for BDD unit testing.
Implemented dynamic frontend components that work with API's to ensure Asynchronous State Handling during loading, error, and success states
Used BigQuery usage in order to check bugs with certain data, metrics, and specific client requests
Benchmarked and optimized critical backend functions, reducing execution time by 90% (7.1s → 0.73s). Combination of Pagination Changes and Association Mapping / Caching via Preloading.
Software Engineering Apprentice - Google UK: September 2020 to 2022
Worked on backend database features, improving my skills in PostgreSQL, and Java for Android Development
Worked on patches to Google Fit App for Android and Android Wear. Fixing accessibility and UI issues
Implemented Timezone Calculation Optimisations for Android Health Connect
Experience with migrations to new libraries
Writing clear and concise documentation for coworkers with regard to testing
Organised headline talkers at TransConf 2021 at Google
The Melbourn Community Hub App: July 2019 - March 2020
The Hub Android App - GML for Mobile Development
Designed and implemented a rewards system, including password hashing and encryption of saved reward values
Communicated with clients, stakeholders and testers to assess software requirements
Kept in contact with stakeholders during the development process, including feedback for prototypes
Wrote planning and other development documents
Personal Projects
Home Dashboard (2023-Present)
HomeAssistant, Python, and custom integrations
Control Panel with physical buttons and dials connected to a Raspberry Pi Zero W running my custom Python Server to run automations
Monitoring and controlling lights and plug sockets across my home
Currently working on surfacing my DIY Home Solar Setup’s Data on my dashboard with full battery detection for my e-bike
Integrates temperature sensors from Raspberry Pi Zero W for real time room temperature tracking. Replacement of temperature sensors needed as the margin of error for temperature is too wide.
Minecraft Trainline Website (2022)
Uses Spring Boot for the API
Raw HTML and CSS for frontend
On Error, Loading, and Success states for the frontend
Lua with a Minecraft Mod in order for me to send data to my API
Realtime web viewable updates on in-game train locations
Education
A-Levels
The Oakes College, Cambridge
Maths: A
IT: Distinction Star (A*)
Media: Distinction Star (A*)
Personal Interests
Playing Dungeons and Dragons as the Dungeon Master and as a player
Programming games for Game Jams
Playing VR games and animations using Oculus Rift/Quest
Meeting up with friends to play boardgames including “One Night Ultimate Werewolf”, “Settlers of Catan” and “Betrayal at House on the Hill”