What mobile problems do you solve?
Modernise an ageing Android app, share business logic across Android and iOS, or add senior delivery capacity to your team. Each engagement leaves a codebase and decisions your team can own.
Senior engineering for the work your product team needs next: an Android migration, a shared Kotlin core, an AI feature or an experienced pair of hands.
Modernise an ageing Android app, share business logic across Android and iOS, or add senior delivery capacity to your team. Each engagement leaves a codebase and decisions your team can own.
Assistants and generation features grounded in your product’s data, with tool tests, guardrails and cost controls. My independent products provide the evidence: Paglipat, this site’s chat and ElTarot. Model training and MLOps remain outside this service.
A focused engagement or ongoing delivery inside your team. The scope follows your codebase, release commitments and engineering capacity.
Core service
Core service
Core engagement
Scope a contained AI feature or a measured native performance problem, on its own or alongside mobile delivery.
Specialist capability
A latency or CPU-bound mobile problem needs one reliable implementation across Android and iOS.
What I deliver: A focused Rust or native module with clean Kotlin and Swift APIs, tests, benchmarks, and documented ownership boundaries.
Specialist capability
The demo works. Now the feature needs reliable access to product data, predictable failure behaviour and a cost you can manage.
What I deliver: A scoped assistant or generation feature connected to your data and tools, with evaluation cases, rate limits, budget controls and documented failure behaviour.
See this work in my independent products: Paglipat’s tool-calling concierge, this site’s assistant and ElTarot’s reading feature.
Paglipat production concierge →This site’s AI assistant case study →ElTarot contained AI feature →
Map the codebase, constraints, risks, and the smallest valuable first move.
Work hands-on inside a fixed scope or alongside the team as an embedded senior engineer.
Leave decisions, tests, documentation, and enough context for the team to own the result.
Mobile flagship delivery, production applied AI, and shared native systems. Each case starts with contribution, then engineering context.
Led mobile engineering for Sky Go, combining hands-on delivery with ownership of team, architecture, modernisation, and release outcomes.
Engineering leadership on Sky Go across native mobile streaming, DRM-protected playback, offline downloads, and delivery for millions of subscribers.
Designed and built the multilingual platform, edge architecture, travel integrations, and production AI concierge.
An independent travel platform across 15 locales with edge delivery, a grounded tool-calling AI concierge, and a Flutter app on Google Play and the App Store.
Designed and built the shared Kotlin API, native platform backends, C++ DSP layer, publishing workflow, and documentation.
An open-source Kotlin Multiplatform audio SDK with native Android and Apple backends plus a shared C++ DSP core for real-time effects.
Share the product, the technical challenge and your timing. We can agree a useful starting point together.
Discuss a projectYes. I work remotely from London with European and US-East overlap. On-site visits can be arranged for kick-off or key milestones.
Both. Modernisation and KMP adoption often begin with a bounded discovery or pilot. Embedded delivery works better when the team needs ongoing senior capacity. Applied AI work is usually a fixed-scope feature or a clear first vertical slice.
When measurement shows a latency- or CPU-bound problem and one implementation across Android and iOS reduces risk. If a native layer does not earn its complexity, I will say so.
Contained product features such as tool calling, grounding, guardrails, cost controls, and evaluation. Evidence comes from products I shipped myself, not client AI work: the Paglipat production concierge on paglipat.com, the floating chat on this site as a live demo, and a smaller ElTarot reading feature. I do not present model training or MLOps as a service.
Ageing Android codebases that are slow to change, Android and iOS logic written twice, and product teams that need senior hands-on capacity without pausing the roadmap. Typical outcomes are Kotlin and Compose modernisation, incremental KMP adoption, and cleaner architecture the team can own.
Have a project in mind?
Mobile and applied AI engineering
Opening assistant…Reload the page or email David.