Core stack14+ years of iOSAI on iOS
Core stack.
From Objective-C in 2012 to Swift 6 and AI today. The tools I use to build, test and ship apps.
- Swift
- SwiftUI
- SwiftData
- Combine
- Objective-C
01 AI in my stack
I’ve shipped AI in production for companies, I use it in my own apps, and I build every app with AI agents.
On-device ML
Models that run on the phone: medical image recognition, photo restoration, face detection and photo analysis.
- Core ML
- Vision
- Create ML
- Model evaluation
Generative AI
Photorealistic AI avatars generated through an API, and virtual try-on of real fashion, in an app with 100K+ downloads.
- AI avatar APIs
- Virtual try-on
- Image generation
AI-assisted engineering
AI agents in my daily workflow, with project rules in every repo and custom skills that automate releases, ASO and Apple Ads.
- Cursor
- Claude Code
- Agent rules
- Custom agent skills
- Xcode MCP
02 Apple frameworks in my apps
What powers the six apps I build and ship under skylarks.io, and where each framework is used.
Core ML, Vision & Create ML
On-device models for photo restoration, face detection and finding similar photos. Nothing leaves the device.
SwiftUI & Observation
Every screen across iPhone, iPad, Mac and Apple Watch, with state built on the Observation framework.
Swift 6 concurrency
Strict concurrency checking with async/await and actors, keeping heavy work off the main thread.
Core Image, ImageIO & AVFoundation
Image and video pipelines with full-resolution export, frame-accurate video editing and untouched audio.
PhotoKit
Reading and saving to the photo library safely, with nothing changed until the user decides.
StoreKit 2 & RevenueCat
Subscriptions, lifetime unlocks and one-time purchases with honest, clear paywalls.
HealthKit, WatchKit & WatchConnectivity
A standalone Apple Watch workout timer with haptics and heart rate, synced with iPhone and saved to Health.
WidgetKit, ActivityKit & App Intents
Live Activities in the Dynamic Island, Lock Screen widgets, Control Center and Siri shortcuts.
GameKit & Core Haptics
Turn-based Game Center duels and custom haptic patterns tuned to every move.
MapKit & Core Location
Photos grouped into places and trips on a map in VOID, and ride navigation in the Harley-Davidson app.
User Notifications
Timed reminders for every step of a bake plan and daily workout nudges.
AppKit & Mac
Native Mac versions alongside iPhone and iPad.
03 Stack behind professional products
What I built with at companies, from GenAI and medical machine learning to motorcycles and drones. See the products
Doji
Founding iOS Engineer · 2024–2025
First commit to App Store in 6 months: AI avatars generated through an API, virtual try-on and shopping. 100K+ downloads.
- GenAI avatar APIs
- Virtual try-on
- Shopping
- iOS from zero
Orthogonal
Tech Lead · 2023–2026
Two medical apps: on-device ML that recognizes throat conditions from the camera, and the SPRINT PNS nerve stimulation app connected over Bluetooth.
- On-device ML
- Image recognition
- Bluetooth LE
- Security
- Regulated software
Harley-Davidson
Senior iOS Engineer · 2020–2023
Bluetooth connectivity with the motorcycle, navigation and tests in the official app, rated 4.8★ by 39K+ riders.
- Bluetooth
- MapKit
- HERE Maps SDK
- Testing
SkyeBrowse
Mobile Lead · 2019–2023
The DJI and Autel flight app that captures aerial video for 3D mapping, used by 1,200+ agencies including the NTSB.
- DJI SDK
- Autel SDK
- Aerial video
- Architecture
- Gigster2016–2020ScalabilitySecurityLive translation for GlaxoSmithKlineCanon · GlaxoSmithKline · NikeNASDAQ · Prudential · Bobbi Brown
- Swish Labs2017–2019Team leadCode qualityFintech
- skylarks.io agency2016–2019Backend to appClient projects
- NaviExpert2014–2017OpenGLNetworkingNavigation
04 How I ship
The pipeline behind my own apps, from the first build to growth after launch.
Build
- Xcode & Swift 6
- XcodeGen projects
- Swift Package Manager
- AI agents: Cursor & Claude Code
Test
- Swift Testing
- XCTest & UI tests
- SwiftLint
- Automated screenshots
Ship
- fastlane
- TestFlight
- App Store Connect API
- GitHub Actions
Grow
- RevenueCat
- Mixpanel
- Apple Search Ads
- AdMob with consent
05 Across my career
AI in production
- On-device ML
- Image recognition
- AI avatar APIs
- Virtual try-on
Architecture & SDKs
- MVVM
- Coordinators
- RxSwift
- RxCocoa
- Core Bluetooth
- Core Data
- Realm
- Alamofire
- PromiseKit
- SnapKit
- Cartography
- Charts
- MapBox
- HERE Maps
- DJI SDK
- Autel SDK
Quality & CI/CD
- KIF
- Nimble
- SwiftLint
- Fastlane
- GitHub Actions
- Bitrise
- Jenkins
- CircleCI
- Codeship
Languages & frameworks
- C
- C#
- Kotlin
- Java
- Dart
- Python
- React Native
- JSON
- XML
Tooling
- Xcode
- Claude Code
- Cursor
- Git
- SPM
- CocoaPods
- Carthage
- SwiftGen
- Flutter
- Xamarin
- Visual Studio
- WebStorm
- Figma
- Final Cut Pro
Product & analytics
- Jira
- Linear
- Pivotal Tracker
- Firebase
- Crashlytics
- App Center
- Google Analytics