I led development of the platform, managing two senior developers and overseeing architecture, technical direction and delivery. My work focused on cross-platform architecture, performance, reusable systems, UI implementation, and cloud-backed content management.
Technical Leadership & Project Management
Managed two senior developers using agile development practices, planning development work in Jira, creating schedules and assigning tasks. Translated complex requirements into development epics and actionable tasks. Worked with the developers to design suitable systems for each feature. Delivered a large scale project in tight time/resource constraints
Cross-Platform Architecture
Different platforms required different prefabs, settings and interaction models. I designed and built cross platform architecture using platform context and scriptable objects to store settings and prefab references selecting the correct values based on context. This allowed customisation across 3 main platforms XR, Desktop and Mobile and switching context in editor to run each platform speeding up development times.
Cross-Platform Performance
The platform needed to support the same 3D content across Quest, desktop and mobile, each with different performance constraints. I designed platform-specific optimisation and LOD systems to adapt content to the target hardware. I used the profiler, memory profiler and project auditor to further optimize the performance.
Designed an Azure-backed cloud-save architecture using entity references and local caching to efficiently retrieve reusable 3D content across experiences. Referenced entities are downloaded alongside experiences and cached locally, allowing content to be reused across multiple experiences.
Multiplatform Interaction
Built multi-platform interaction systems for placing, moving, rotating, scaling and inspecting 3D models across Desktop, XR, Mobile platforms. This ensures each platform has the best user experience across devices.
Created a reusable state-machine-driven UI framework with configurable themes, reusable components and object pooling. Minimizing duplicate code for views and menu items. This improved the speed of taking designs from Figma and reduced performance overheads when views required repeated use of menu items.