Chris's corner

Career Profile

iOS engineer with a focus on mobile infrastructure — CI/CD, build systems, and developer tooling. Proven track record across end-to-end testing solutions, project build time optimization, and platform engineering at scale. I care as much about how we build things as what we build.

Work Experience

OKX · Singapore
Jun 2024 – Nov 2024
Staff Engineer (iOS)

Mobile Infrastructure: CI/CD, developer tools and developer experience.

  • Enhanced E2E test stability by resolving infrastructure-level errors; developed features for the in-house E2E server (Appium logs, WebDriverAgent, screenshots).
  • Maintained device farm availability via service watchers and recovery logic; monitored real devices and resolved issues proactively.
  • Reduced test execution time through parallelized pipelines, dynamically allocating resources based on farm availability and task priority.
  • Designed flakiness mitigation strategies: auto-detect flaky tests, skip in critical runs, benchmark for analysis.
  • Migrated single-step Jenkins jobs to multi-stage pipelines with parallel execution and stage retries.
Grab · Singapore
Feb 2018 – Jun 2022
Senior Software Engineer (iOS)

Grab Driver — ride-hailing app for Southeast Asian drivers.

  • Spearheaded E2E testing solution using Appium and Python — write once, run on both iOS and Android; assisted QA adoption.
  • Introduced test quarantine logic to isolate flaky tests and improved reliability of the UI testing infrastructure.
  • Achieved 3× reduction in test execution time via horizontal scaling on CI.
  • Developed and maintained open-source cocoapods-binary-cache — reduced project build time by 55% (18m → under 8m on average).
  • Orchestrated ingestion of Crashlytics data into the company data lake; managed critical CI/CD initiatives end-to-end.
Misfit · Fossil · Vietnam
Feb 2016 – Mar 2017
Software Engineer (iOS)

Portfolio apps — branded apps for Bluetooth wearables, supporting ~20 languages.

  • Built core modules from scratch; led Activity, Sleep, Goal Tracking, and Client-Server Data Sync features.
  • Modularized the codebase into 17 development pods — one project powering 7 different apps (Kate Spade, Michael Kors, Emporio Armani, Skagen, and others).
  • Pioneered MVVM adoption and integrated ReactiveCocoa for cleaner asynchronous logic.
  • Introduced Quick/Nimble, MockingJay, Cuckoo for unit testing; wrote initial test coverage for the core.
Ticketbox · Vietnam
Jun 2015 – Jan 2016
Software Engineer (iOS)

Ticketbox — event discovery, ticket booking and management.

  • Built and shipped the app within 2.5 months with a 3-person team (1 iOS, 1 Android, 1 Designer); maintained through v1.0.8.
  • Partially adopted functional programming; stacks: MVVM, ReactiveCocoa, Realm.
  • Enhanced data sync performance and unified codebases across the user app and Event Manager app.

Side Projects & Writing