LifePathz
ReleasedPersonal-growth app with journaling and goal planning.
From Chewy’s customer experience to video platforms at Pluto TV and Fox, I turn complex requirements into mobile products people use.
Engineer. Builder. Creator.
LifePathz
StreamingVids
Circlez
LovePathz
MoneyPath
Frontier Valley
FitCheck
Ecouta
IdeaValid
School of Purpose
JobEngine
First 100
Sentinel Trade
▶Video reflection, daily routines, and a 90-day path. Explore the architecture behind the experience.
Watch the walkthrough ↗
▶Live TV and media browsing with SwiftUI, AVPlayer, M3U playlists, and the TMDB API.
Watch playback ↗
▶Mobile app features, AI onboarding, and voice workflows. See the assistant interaction.
Watch the assistant ↗I’m looking for a role where I can lead through building—working closely with engineering, product, design, and QA.
Explore my experience ↗At Chewy, I investigated forward LRU caching, then pivoted to eagerly preparing the existing HybridWebViewController and WKWebView within the coordinator and regex router. I owned the implementation, gradual rollout, and Dynatrace monitoring. At LegalZoom, I architected and shipped the first mobile app from ideation through App Store launch.
My Chewy work includes a Swift 6 MainActor state machine, LRU caching with TTL, race-safe authentication sequencing, and thermal-aware preloading. LifePathz shows my approach to injectable dependencies, pure decision logic, and targeted regression tests.
Experience includes OAuth2, REST and GraphQL, Firebase, analytics with Segment / AppsFlyer / Braze, payment SDKs, notifications, video players, and third-party integrations.
At Pluto TV, I led seven engineers, established review and testing guidelines, coordinated releases, and personally shipped parental controls for Brazil’s deadline. At Chewy, I mentored engineers while delivering features and investigating performance issues.
B.S. Biology · UC San Diego
Alongside a B.S. in Game and Simulation Programming, my biology education brings a life-sciences perspective to consumer-health work.
Healthcare integration experience
At VoiceAssistLabs, I built healthcare voice assistants using Node.js, AWS, and OAuth2 integration with Athenahealth EHR. LifePathz adds hands-on work with personal reflections, consent, and local persistence.
Select a product to see its interface, capabilities, and technology stack. These are my product presentations; the engineering case study below goes deeper.

34 personal projects, from released products to active builds and early prototypes. Statuses reflect my project tracker; selected engineering work is detailed below.
Personal-growth app with journaling and goal planning.
Interactive 3D web experience and digital product showcase.
Relationship journeys and milestones.
Personal budgeting and wealth pathway tracking.
Health and wellness tracking with recommendations.
Story-to-song, storyboard, and synchronized video studio.
Career monitoring, job security, and market-risk tracking.
Live TV, movies, and series from public playlists.
Idea validation and user-feedback analysis.
Animated farm-management simulation.
Factory automation and resource management.
Purpose discovery and a learning ecosystem.
On-call incident response and alerting assistant.
Job scoring for employer fit and compensation transparency.
Trading-platform concept with risk controls and paper-trading work planned.
Inbound calls, appointments, leads, and live transcripts.
Home-services marketplace with matching and quotes.
Customer-acquisition assistant for early-stage businesses.
Internal lead discovery and approved personalized outreach.
Maintenance triage, repair documentation, and rental tracking.
Meal checkout-cost comparison across ordering options.
Product research and listing, advertising, and review analysis.
Bubble-blaster and rescue-game prototype.
Virtual clothing try-on, body scanning, and sizing.
Gamified language learning and conversation practice.
AI mock interviews and real-time feedback.
Prompt compression and API token optimization.
Interactive demonstration of conversational voice agents.
Marketing discovery and acquisition-channel validation.
Gamified coding-interview and systems preparation.
ADHD and emotional-regulation support concept.
Standalone WebView preloading and caching project.
Always-on-top floating notepad for macOS.
Standalone reference-architecture project for hybrid native containers.
No projects match this search.
A 90-day reflection and goal-setting app with video journals, daily logs, and mood-adaptive UI.
Original app built independently.
Later improvements assisted by AI.
State, persistence, media capture,
analysis, and testable boundaries.
View-model and use-case factories live in a main-actor dependency container. Several service dependencies are protocol-backed and injectable; others are concrete services with shared defaults. Pure decision engines sit apart from persistence and device APIs.
SwiftData holds local content. SyncService coordinates per-user Firestore backup and restore through RemoteStore; SyncEngine computes the reconciliation plan.
SyncService.swift · SyncEngine.swiftThe fusion engine combines language, voice, face, and posture signals using explicit weighting and missing-signal handling. Vision face landmarks are analyzed on-device.
EmotionFusionEngine.swift · FaceExpressionExtractor.swiftA versioned consent store tracks permission. The speech request entry point checks consent before sending text, so permission is enforced below the presentation layer.
AIConsentStore.swift · OpenAISpeechService.swiftConcrete handling visible in the implementation, with source and test references. These describe the current code—not a claim of production-scale validation.
Failure: An old view’s cleanup can arrive after another camera view has started recording.
Handling: AudioSessionCoordinator tracks recording owners by object identity. Each owner can release only its own slot; deactivation and conflicting intents are blocked while recording is active.
AudioSessionCoordinator.swift
AudioSessionCoordinatorTests.swift — stale owner / recording lockFailure: Capture can start with an audio category unsuitable for microphone input; background playback can also interfere.
Handling: VideoCapture configures play-and-record / video-recording before adding the microphone and starting the capture session. It disables automatic session configuration; the coordinator also manages recording intents and registered playback sources.
VideoCapture.swift · AudioSessionCoordinator.swiftFailure: Local and remote collections can contain duplicate identities or competing versions.
Handling: Reconciliation collapses duplicates to the newest timestamp, then computes push, apply, and delete operations. Equal timestamps are a no-op.
SyncEngine.swift · SyncEngineTests.swiftFailure: A recording may not contain enough usable audio or face information for every analysis channel.
Handling: Face extraction returns an absent signal for unreadable input or too few detected faces. Fusion renormalizes weights across available channels; missing voice is explicitly represented rather than invented.
FaceExpressionExtractor.swift · EmotionFusionEngine.swift
EmotionEngineTests.swift — missing voice / thin inputFailure: A fresh installation may be waiting on network or Firestore work while the UI is gated.
Handling: A ten-second watchdog drops the restore gate while sync continues. Returning users with local content sync in the background; local-only mode skips cloud access.
SyncService.swift — restoreOnLoginThe repository includes targeted regression suites. The examples below were reviewed in source; the iOS test suite was not executed for this portfolio review.
Local-only and remote-only records, newer writes, equal timestamps, mixed batches, duplicate IDs, and tombstone decisions.
SyncEngineTests.swiftIntent-to-configuration mapping, repeated requests, deactivation, recording locks, and stale-owner release behavior.
AudioSessionCoordinatorTests.swiftMissing voice, silent buffers, conflicting language and voice signals, derived tones, and low-confidence input.
EmotionEngineTests.swiftSyncEngine supports tombstones, but SyncService documents that delete propagation is not yet wired into the app’s delete paths. Its current backup/restore design assumes one active device. Last-write-wins is simple and testable, but does not merge concurrent edits field by field.
The reviewed face-analysis path uses Vision landmarks and geometric features; fusion uses explicit rules and weights. This case study does not claim a custom-trained model’s accuracy or clinical effectiveness. Training and evaluation results need separate evidence.
iOS job-search app combining document input and AI requests.
My personal portfolio spans 34 projects at different stages. I use AI tools to accelerate development, while retaining responsibility for implementation decisions, debugging, and validation.
Select a recording to watch. Use fullscreen for a closer look at the interface.
Desktop recording of the LifePathz simulator, showing the dashboard, task surfaces, and journal interface.
Open video in a new tab ↗Woodinville, WA · Open to Remote and Relocation
I began in biology because I wanted to understand people, but I was equally curious about how technology could improve their lives. That curiosity led me into software engineering. I enjoy finding unexpected solutions to difficult problems, sharing ideas, and building things that matter. Across 13+ years, I have shipped apps used by millions, worked through ambiguous requirements and demanding launches, and mentored engineers while staying hands-on.
LifePathz | I spent years refining an idea that connects personal growth with technology. I built a SwiftUI and Firebase app with AI-assisted emotional reflection, CBT-inspired prompts, video check-ins, daily journals, and a guided 90-day goal path. It helped me personally; its broader impact is a product goal, not a claimed clinical outcome. Built the app, backend integration, and release workflow through TestFlight and App Store submission.
Chewy eager loading | Hybrid Deals and Cart pages showed blank screens during navigation. I investigated forward LRU caching, then pivoted to eagerly preparing the existing HybridWebViewController and WKWebView before navigation, fitting the solution into the coordinator and regex router rather than replacing established flows. I used an NSCache-backed LRU/TTL pool, MainActor-controlled WebView lifecycle and concurrency-safe handoff, and guardrails for process, thermal, power, and network pressure. Feature flags, gradual rollout, and Dynatrace monitoring helped detect regressions on other pages. Result: approximately 90% faster loading for Deals and Cart.
Pluto TV startup | I separated coupled boot logic into staged initialization states behind a feature flag, modernizing asynchronous sequencing and making startup behavior easier to reason about, test, and extend. I also led delivery of Home Experience, Brazil Kids Mode, and regional authentication with a seven-engineer team.
I work from the problem outward, not from a favorite framework. I can take an unclear idea through architecture, implementation, testing, rollout, and monitoring; I bring product and engineering partners into the trade-offs early; and I find mentoring engineers toward their goals as rewarding as shipping the feature itself.
Owned App 2.0 WebView performance end to end: researched alternatives, designed and launched eager loading with safe cache eviction, concurrency controls and telemetry; reduced Deals and Cart load times ~90%.
Shipped 13 SwiftUI/UIKit features and a dynamic carousel using UIHostingController; paired dependency-injected tests and hands-on QA validation with staged delivery to reduce release risk.
Diagnosed device heating with Instruments and Safari Web Inspector and resolved GPU-driven thermal behavior; improved event reliability by fixing AppsFlyer purchase reporting and building a Segment/Braze/AppsFlyer debug console.
Built healthcare voice workflows in Node.js/AWS with OAuth2 and Athenahealth EHR integrations, supporting 300+ calls per day; developed Flutter app features and AI onboarding for CircleZapp.
Promoted to Lead in 2023 and led seven engineers through vague requirements, scoped delivery, reviews and launch coordination; shipped Home Experience, Kids Mode Brazil, and regional iOS/tvOS authentication.
Met Brazil parental-control deadlines by implementing a PIN-protected Kids Mode and isolated ReSwift session; standardized code reviews and unit-testing practices to support reliable team delivery.
Refactored startup into feature-flagged boot stages; contributed to Redux/ReSwift modernization, visionOS SwiftUI features, accessibility, automated testing, CI/CD and App Store releases.
Led a decoupled AVFoundation player architecture for FOX NOW and FOX Nation with consultants; delivered ad insertion, clickable ads, Chromecast and Picture-in-Picture for large-scale streaming applications.
Designed MVVM/Combine modernization to separate responsibilities and improve maintainability and testability.
Thrive Market — Senior iOS Engineer (2018–2019): REST/WebSocket and MVVM networking, custom shopping UI. | Beautycounter — Senior iOS Engineer (2018): payment SDK and GraphQL integrations. | LegalZoom — Senior iOS Engineer (2016–2018): architected and launched first mobile app, OAuth2/Core Data. | Fonality — Senior iOS Engineer (2015–2016): VoIP/messaging app, MVC-to-MVVM. | Age of Learning — iOS Engineer (2014–2015): ABCmouse architecture and media features. | Final Draft — Software Engineer (2013–2014): macOS Cocoa/AppKit and C++.
Swift, SwiftUI, UIKit, Objective-C, Flutter, iOS/tvOS/visionOS, AVFoundation, Combine, async/await, MainActor, MVVM, Redux/ReSwift, REST, GraphQL, OAuth2, Firebase, AWS Lambda, XCTest, XCUITest, CI/CD, GitHub Actions, Dynatrace, Instruments, AppsFlyer, Segment, Braze, Claude Code
DeVry University — B.S., Game and Simulation Programming, Cum Laude (3.95 GPA) | University of California, San Diego — B.S., Biology
Engineering notes on performance, state, and the decisions that make apps reliable.

A slow interaction is a starting point for measurement. The useful question is whether work is executing, waiting for actor access, or occupying the main thread.
Record the slow interaction in Instruments and inspect the Swift Tasks and Swift Actors tracks. Correlate the task’s lifetime with thread activity before deciding what to change.
Many tasks do not imply many threads. A long task lifetime can include suspension; it is not the same as continuous CPU work. Long synchronous work on the main actor can delay UI updates even when the surrounding function is asynchronous.
Trace the expensive work back to its isolation boundary. Keep UI state changes on the main actor, and make a deliberate plan for expensive computation. After a suspension point, check that the assumptions used to update state still hold.
Re-record the same interaction after the change. Compare the trace and responsiveness, rather than assuming that adding a task improved performance.
Reference: Apple — Visualize and optimize Swift concurrency ↗
A Boolean recording flag cannot distinguish a currently recording view from an older view finishing cleanup. LifePathz stores a set of owner identities. Beginning a recording adds the owner; ending removes only that owner. This keeps a stale cleanup from clearing another recording’s protection.
The regression suite explicitly includes a stale-owner scenario. The technique makes lifecycle ownership visible instead of relying on view dismissal order.
AudioSessionCoordinator.swift · AudioSessionCoordinatorTests.swiftSyncEngine accepts local and remote records and returns a plan: upload these records, apply these records, delete these IDs. It does not perform networking or SwiftData writes. This separation lets tests exercise conflict decisions using production DTOs without needing a device or Firestore connection.
The boundary also makes incomplete integration visible: tombstone decisions are implemented in the engine, while the service documents that end-to-end delete propagation remains future work.
SyncEngine.swift · SyncService.swift · SyncEngineTests.swiftAn unavailable face or silent voice should not be treated as a confident neutral measurement. The analysis pipeline uses absent-signal states; the fusion logic includes only available channels when calculating its weighted result.
This is a software behavior, not proof of emotion-recognition accuracy. Separating those claims keeps the technical explanation precise.
FaceExpressionExtractor.swift · EmotionFusionEngine.swift
I’m Arbi. When I’m not coding, I love skydiving, ice hiking, exploring dark caves, traveling, and fast cars. I also make time for drawing, reading books, and making music. My path started in biology and led to engineering—a way to turn curiosity into something people can use.
Music I made. A different side of what I love creating.
Press play to watch and listen.