Apply

Ready to go for it?

AI Apply speeds things up—apply directly if you prefer.

FREE ACCESS
5,000–10,000 jobs/day
JobTailor Logo

See all jobs on JobTailor

Search thousands of fresh jobs every day.

Discover
  • Fresh listings
  • Fast filters
  • No subscription required
Create a free account and start exploring right away.
General Motors

Senior Android Software Engineer – In-Vehicle Infotainment, OTA

General Motors

. Design, develop, build, and maintain IVI apps and services on AAOS / embedded Android .

Posted 4/21/2026full-timeWarren • Missouri • 🇺🇸 United StatesSeniorWebsite

Tech Stack

Tools & technologies
AndroidGRPCJavaJUnitKotlinMockito

About the role

Key responsibilities & impact
  • Design, develop, build, and maintain IVI apps and services on AAOS / embedded Android
  • Own UX and interaction flows for key scenarios (e.g., media, navigation integrations, app‑store experiences, messaging)
  • Drive performance on constrained hardware to optimize startup/resume times, frame rate, animation smoothness
  • Integrate apps with vehicle properties, VHAL, navigation, media, voice assistants, and back‑office services via AAOS APIs and IPC (AIDL, gRPC or similar)
  • Define and collaborate on unit, integration, UI, and bench/in‑vehicle test coverage
  • Apply and evolve clean, modular Android architectures (e.g., MVVM + Jetpack)
  • Diagnose and fix issues across app, framework, and system layers
  • Contribute to architectural decisions on system services, permissions, and security models
  • Build and maintain test automation for emulators and on‑bench environments
  • Provide technical leadership and mentorship to mid‑level and junior engineers

Requirements

What you’ll need
  • Bachelor’s degree in CS, Software Engineering, EE/CE, or related field, or equivalent experience
  • 5+ years of Android development with production Android apps or Android‑based embedded software
  • Proven experience on AAOS or deeply embedded Android platforms
  • Expert Kotlin skills; strong proficiency in Kotlin and/or Java, Android SDK, and modern Android patterns (coroutines/Flow, Jetpack, MVVM or similar)
  • Deep understanding of App/activity lifecycles, Background limits, scheduling, background work, Coroutines/Flow, concurrency, configuration changes, Memory management, profiling, and performance tuning, Android permissions, security, and system services
  • Track record of designing, implementing, and shipping complex features end‑to‑end in large codebases with strong debugging skills
  • Demonstrated performance optimization on resource‑constrained devices (UI, networking, I/O, rendering), with measurable improvements
  • Strong grounding in software quality with experience automated testing, code reviews, defensive and secure coding
  • Experience writing and maintaining: Unit tests (JUnit, MockK/Mockito), UI tests (Espresso, UI Automator), System/integration tests
  • Hands‑on experience with CI/CD pipelines, automated builds, and Git workflows in multi‑team environments
  • Effective cross‑functional collaboration with UX, product, validation/QA, and platform/system engineers
  • Clear written and verbal communication, able to drive decisions and explain complex topics to varied audiences
  • Demonstrated use of advanced Android concepts (DI, background work, concurrency, profiling) in new features, bug fixes, and refactoring

Benefits

Comp & perks
  • Non-Discrimination and Equal Employment Opportunities
  • Accommodations for individuals with disabilities

ATS Keywords

✓ Tailor your resume
Applicant Tracking System Keywords

Tip: use these terms in your resume and cover letter to boost ATS matches.

Hard Skills & Tools
Android developmentKotlinJavaAndroid SDKMVVMJetpackCoroutinesAIDLgRPCautomated testing
Soft Skills
technical leadershipmentorshipcross-functional collaborationclear communicationproblem-solvingdebuggingperformance optimizationdefensive codingsecure codingdecision-making
Certifications
Bachelor’s degree in Computer ScienceBachelor’s degree in Software EngineeringBachelor’s degree in Electrical EngineeringBachelor’s degree in Computer Engineering