Designs by Duhart ← All work
Rank
23 of 28
Tier
Tier C  54 of 120

11 — Multiplatform Clients

Rank 23 of 28 · Tier C · IOS/, Android/, app/web-platform Stack: SwiftUI + Swift Concurrency; Kotlin + Jetpack Compose + Gradle; Next.js + TypeScript + Playwright + vitest

Why this ranks here. It is a large body of real work and it proves range — but a distributed-systems loop does not hire on it. Lead with the backend; use this to answer "have you owned a product end to end?" (yes, on three platforms).


iOS — 611,426 lines of Swift, 1,200 files

Thirteen product modes in one app:

Mode Files Lines
Dating 147 90,161
Array 122 90,017
Billboard 128 57,669
Main 160 37,714
BoxOffice 45 20,407
Universal 26 17,530
Global 110 17,246
OpenHouse 57 9,294
Identity 51 8,051
Registration 13 6,072
Vitals 14 2,582
Login 5 1,427
Storefront 5 820

Notable engineering: BillboardAudioEngine with an AudioEngineActor over AVPlayer (Swift actors for audio-thread safety), a JamzAudioEngine doing vDSP FFT constellation matching on-device, gRPC-generated gateways from the shared protobufs, and WebRTC via stasel/WebRTC 147.

Android — 19 modules, Kotlin/Compose

A port of the iOS app to Kotlin + Compose. Toolchain installed, builds green.

core/     network · persistence · proto · security · universal
feature/  array · billboard · boxoffice · dating · globalchat · identity
          login · mating · openhouse · shell · solomon · storefront · vitals

Convention-plugin Gradle setup (build-logic/) — the correct way to keep 19 modules consistent.

The valuable part is what was not done: seven pre-existing iOS defects were found during translation and reproduced deliberately rather than silently fixed, so the two platforms stay behaviorally identical and the bugs get fixed once, on purpose, in both. That restraint is a strong engineering signal.

Web — Next.js platform

app/web-platform — Next.js App Router covering every product mode (array, auth, billboard, billing, bizz, blog, boxoffice, careers, dashboard, dating, globalchat, identity, login, mating, openhouse, storefront, plus legal/press/ privacy/promo surfaces). Playwright e2e + vitest, buf-generated TypeScript clients from the same protobufs the backend serves.

Interview surface this opens