Cadillac Celestiq Display

Staff Software Developer - Infotainment Apps

Jan 2021 - Jun 2025

General Motors of Canada | January 2021 - June 2025 | Toronto, ON

Overview

As a Staff Software Developer at General Motors, I led the development of Android applications for Cadillac, Chevy, Buick, GMC, and BrightDrop brands — delivering a single build image across 40+ infotainment applications and vehicle programs including the LYRIQ, Hummer EV, Escalade IQ, and Silverado EV, with software reaching millions of vehicles.

Tech Lead Scope

Owned end-to-end technical direction for a fleet of 40+ infotainment applications spanning Cadillac, Chevy, Buick, GMC, and BrightDrop. Delivered a single build image that targets all brands and vehicle programs — including the LYRIQ, Hummer EV, Escalade IQ, and Silverado EV — and shipped to millions of production vehicles across GM’s North American lineup.

Architecture & GMCore SDK

Owned the GMCore SDK — the shared internal library originally designed during the Senior Software Developer role — and evolved it to serve the full 40+ app portfolio. Applied Clean Architecture, Kotlin, Dependency Injection, and reactive streams as consistent standards across all teams.

The SDK encapsulates the VHAL/CarPropertyManager abstraction (see the earlier Senior entry for the original design), shielding app teams from vehicle-HAL complexity and enabling feature development without direct CAN or VHAL knowledge.

Multi-Brand Theming on RROs

Designed and maintained a brand→model→trim overlay hierarchy using Android Runtime Resource Overlays (RROs). Built Gradle tooling and CI pipelines to automate overlay generation and validation across every vehicle program, reducing manual theming errors and accelerating brand adoption. Supported app teams directly through the overlay onboarding process and delegated overlay maintenance to per-brand owners.

Android OS Migrations (11 → 12 → 12L → 14)

Led the Android 11 → 12 → 12L → 14 migration path for the infotainment app portfolio. Managed GM downstream patches to AOSP, diagnosed and repaired Car API breakage introduced into GMCore on each OS step, and worked directly with Google engineers via Buganizer on RRO framework regressions and CarUiLib compatibility issues.

Cluster App & RTOS → Android Migration

Designed and developed Telltale components for the instrument Cluster using the Qt/QML framework and C++, establishing GitHub Actions CI for the Cluster build to align with the broader infotainment pipeline.

Led the migration of Virtual Controls (VC) and Smart Controls from RTOS to Android, maintaining functionality parity and industry-standard test coverage throughout. Coordinated remotely with a 15-person US team across both the Cluster and migration workstreams.

SDV Exploration

Contributed to several software-defined vehicle explorations ahead of future GM programs:

  • Display Strategy — co-designed a per-brand × model × trim display configuration approach, constrained by VCU plant-programming requirements.
  • HVAC → Ultifi — evaluated migrating HVAC controls to the Ultifi platform’s URI-addressed service model using protobuf, RPC, and pub/sub patterns aligned with the Eclipse uProtocol specification.
  • Trailering — co-architected the Trailering feature integration approach.
  • Google SDV impact assessment — assessed the impact of the Google SDV initiative across Android and RTOS stacks.

Apps Dev Forum & Mentorship

Founded and ran the Apps Dev Forum, a cross-team knowledge-sharing session that averaged 100+ developers per session. Mentored technical leads on Runtime Resource Overlays (RROs), Jetpack Compose migration patterns, and the Filament 3D rendering engine.

Technical Stack

Languages
KotlinJavaC++QML
Frameworks
AndroidQtJetpack ComposeUltifi SDK
Tools
GitHub ActionsCI/CD pipelinesGradleBuganizer
Technologies
AOSPAAOSRROsprotobuf
Vehicle Integration
VHALCarPropertyManager
Methodologies
AgileScrumSAFe

Challenges and Solutions

Challenge 01 Managing Android OS migrations (11→12→12L→14) across 40+ apps without regression
Solution
Owned GM downstream AOSP patches and resolved Car API breakage per OS step; escalated RRO and CarUiLib issues directly to Google via Buganizer
Challenge 02 Scaling RRO-based theming across five brands and dozens of vehicle programs
Solution
Built Gradle + CI tooling to automate overlay generation and validation; mentored per-brand owners to delegate maintenance
Challenge 03 Coordinating RTOS-to-Android migrations with a remote 15-person US team
Solution
Established shared CI pipelines and coding standards; led virtual knowledge-sharing sessions across time zones

Impact

  • Software shipped to millions of production vehicles across GM’s North American lineup
  • Unified architecture and GMCore SDK adopted by 40+ applications across five brands
  • Android OS migration (11 → 14) completed for the full app portfolio with direct Google Buganizer collaboration
  • Apps Dev Forum delivered sustained technical alignment across 100+ developers per session