Tech Palette

I’m an iOS Engineer with over 7 years of experience designing and building high-quality native applications using Swift and SwiftUI. I specialise in creating scalable, performant, and maintainable software, with Xcode at the centre of my development workflow. On a daily basis, I work with tools such as Instruments, GitHub, Jira, Azure, Slack, and Miro to deliver robust solutions while collaborating effectively across cross-functional teams.

SwiftUI is a particular passion of mine. Its declarative approach enables rapid prototyping, cleaner architecture, and a more efficient development process. My latest App Store release, Pocket Fusion, was built entirely with SwiftUI.

Alongside native iOS development, I’ve expanded my experience into other areas of software development through languages such as C# and JavaScript, as well as game development using Unity. This has broadened my understanding of interactive applications and different development platforms. I enjoy exploring new technologies and continuously expanding my technical skill set. Outside of iOS, I’m currently developing a 3D third-person adventure game in Unity.

Below, you’ll find a selection of the technologies I work with, together with projects that demonstrate my experience, technical expertise, and continued passion for building great software.

Github & Employment

Current Employment:

Music Tribe
iOS Engineer

I lead the iOS development of HDMix, an iPad application providing real-time, bi-directional communication with the Midas HD96 Console. The application operates in a highly performance-sensitive environment where reliability, low latency, and stability are essential.

Responsibilities

  • Technical Leadership: Own the iOS implementation, driving new features, technical improvements, performance optimisation, and long-term maintainability.
  • Release Management: Deliver regular releases by prioritising bug fixes, technical debt, platform improvements, and product enhancements.
  • DevOps & CI/CD: Design and maintain build pipelines for automated validation, testing, and release processes, improving development efficiency and release confidence.
  • Cross-functional Collaboration: Work closely with engineers across multiple platforms and disciplines to deliver consistent functionality and shared technical solutions.

Key Projects

  • Library Modernisation: Led the effort to upgrade SwiftyZeroMQ, enabling compatibility with the latest Apple Silicon ARM64 simulators and ensuring continued support for modern Xcode releases.
  • Performance & Developer Tooling: Delivered significant improvements to console synchronisation, memory usage, leak detection, and internal debugging tools, improving both application performance and the development workflow across the team.
  • KMP Effects Library: Integrated a cross-platform Kotlin Multiplatform library containing 50+ professional audio effects into the iOS application, working closely with cross-platform engineers to ensure seamless interoperability.



Previous Employment:


WOLF (Palringo)
iOS Engineer

Worked within an agile product team delivering new features and platform improvements to one of the world’s largest live social entertainment applications.

Responsibilities

  • Feature Delivery: Delivered production-ready features, bug fixes, and technical improvements across multiple releases.
  • Collaborative Development: Worked closely with designers, backend engineers, Android developers, QA, and product owners to deliver high-quality user experiences.
  • Code Reviews: Regularly participated in peer reviews, maintaining code quality while sharing knowledge and encouraging technical discussion across the team.
  • Pair Programming: Frequently collaborated through pair programming to solve complex problems, accelerate delivery, and mentor teammates through shared development.

Key Projects

  • Follow Mechanism: Collaborated within a cross-functional squad to design and implement the feature allowing users to follow creators and WOLFstar Pros across the platform.
  • WOLF DJ: Took ownership of the iOS implementation for the WOLF DJ feature, coordinating with multiple teams to successfully deliver the functionality into production.
  • SwiftUI Migration: Contributed to the migration of UIKit-based functionality to SwiftUI, including the migration of the application’s Lists feature, helping modernise the codebase.



SiHealth Ltd
iOS Developer / Front-End Manager

At SiHealth Ltd, I worked across both greenfield and existing healthcare applications focused on UV exposure, skin health, and medical research, combining native iOS development with frontend leadership responsibilities.

Key Projects

  • SiSkin: Helped develop SiSkin, an image-processing application leveraging machine learning to identify potential skin conditions associated with excessive UV exposure.
  • Medical Research Applications: Contributed to applications supporting medical trials across the UK and Spain, including projects delivered in partnership with the NHS and international healthcare organisations. These applications incorporated localisation and supported research into innovative healthcare solutions.

You’ll find a collection of side projects and sample apps on my GitHub, showcasing my work with Swift, SwiftUI, and modern iOS development.

Check it out below!

App Releases

Pocket Fusion

Generative AI Art 

I’ve always been captivated by the possibilities of generative AI, which led me to create Pocket Fusion, a text-to-image app that allows users to turn their creative ideas into stunning visuals.

– Language: Swift
– Development Time: On-going
– Design: All UI/UX design were created by myself. 
– Indie/Team: Indie development effort

Tech Stack:
SwiftUI | CoreML | StoreKit | Firebase | Photoshop

Status: Online

Eggsplode

Easter 2020 Egg Hunt Game

I have always been fascinated with Apple’s iOS ARKit framework, which inspired me to create a fun egg hunt game for Easter 2020. Here are the project details:

– Language: Swift
– Development Time: 2 months, dedicating 2-3 hours of coding per day around my full-time iOS job.
– Design: All UI/UX design and 3D objects were created by myself. While it may not be my best UI work, it rekindled my interest in using old design tools.
– Development: Solo development effort

Tech Stack:
Swift | StoreKit | ARKit | AdMob | Photoshop | Blender

Status: Offline

Featured on:

Game Development

'Elementor - Trials of Zeus'

Sep 2020 - Jan 2021

Made with Buildbox

I have always wanted to create a survival-type game, so I embarked on a project to experiment with FBX animations and implement third-person controls and camera movements. Using Buildbox, which offers great out-of-the-box features ideal for beginners, I was able to get started easily. However, to achieve the advanced features I envisioned, I had to dive deeper.

I began coding custom JavaScript nodes to meet my specific game requirements. Some notable implementations included:

– Live Enemy Map: Applied to any object, enemy, or character, handling multiple enemies simultaneously.
– Health & Power-Up Systems: Designed to enhance gameplay and player experience.
– Storage Systems: Ensured persistent game state and data management.
– Level Builder/Waves: Created an endless wave system for continuous challenges.
– AI Movement & Attacking: Developed intelligent enemy behaviors and combat mechanics.

This project took around 3-5 months to complete alongside my full-time job, including all the artwork (UI created using Photoshop) and character 3D skins and animations from Mixamo. While this may be my last Buildbox project as I transition to continue learning Unity and C#, I thoroughly enjoyed the process and participated in Buildbox Game Jams, which you can check out below.

Overall, using Buildbox was a fantastic experience that allowed me to bring my game development ideas to life and has prepared me for the next level with Unity and C#.

GameJams

'Spincola'

Feb 21st 2021

Theme: Attraction

This marked my second participation in a game jam, with a total allocated time of one week. Despite facing busy personal and work commitments, I managed to dedicate a mere 2 days to development, significantly less than the allocated 7 days.

Nonetheless, over the weekend, I was determined to participate and push out a game using Buildbox/Javascript, which I then exported to iOS and Android platforms.

'Sneaky Mouse'

July 31 - Aug 2 2020

Theme: Prototype

This marked my very first participation in a game jam, with a total allocated time of 72 hours. I found myself comfortable working with Buildbox, utilising its capabilities to construct the game. Advanced features were seamlessly implemented using JavaScript nodes. The experience was not only great but also insightful.

Participating in this fast-paced project taught me to prioritise my work more effectively, leveraging technical debt and emphasising the importance of laying down key foundations and structures of a project first.

Shopping Basket