Senior Software Engineer (Android Automotive)
Posted Updated
- We are seeking an experienced Android System Software Engineer to join our team in developing the In-Vehicle Infotainment (IVI) platform for our next-generation, in-house System-on-Chip (SOC)
- System Bring-up & Integration: Implement and integrate low-level software, including bootloader configuration, device trees, and kernel porting during the initial hardware bring-up phase
- OS/Kernel Development & Optimization: Customize, optimize, and debug the Linux Kernel and relevant parts of the Android Open Source Project (AOSP) for the partner SOC, ensuring robust and efficient operation
- Hardware Abstraction Layer (HAL) Implementation: Develop and maintain reliable Vendor HALs to interface the unique in-house hardware IP (e.g., security modules, power management units, display controllers) with the Android framework
- Performance Engineering: Drive system-level performance optimization, including boot time reduction, scheduling tuning, thermal management, and power efficiency based on the SOC’s specific architecture
- Ambiguity Resolution: Proactively manage and clarify technical requirements for features that are still actively being defined internally, rapidly documenting and stabilizing interfaces for the broader software team
Benefits
- Medical, dental, and vision insurance for employees and dependents
- Employee assistance programs focused on mental health
- Personalized workplace adjustments for diverse needs and abilities, including physical, mental, and neurodivergent considerations
- Access to mental health apps
- Onsite wellness centers
- Counseling services
- Second medical opinion for you and your loved ones
- Support programs including menopause benefit
- Medical advocacy program for transgender employees
- Competitive compensation
- Regular bonus and equity performance grant opportunities
- Generous 401(k) and regional retirement plans
- Annual cross-company compensation review and pay equity analysis
- 1-on-1 financial coaching
- Fertility and growing family assistance
- Parental leave and baby bonding leave
- Backup childcare
- Survivor income benefit
- Elder care and support
- Caregiver leave
- Paid time off, including vacation, bereavement, sick leave, parental leave, disability, and holidays
- Jury duty leave
- Military leave
- Hybrid work model with remote work opportunities also available
- Educational reimbursement
- Peer learning and coaching platform
- Donation matching programs
- Volunteer hours
- Employee resource groups
- Internal community groups and local culture clubs
- Inspiring spaces to work, recharge, and collaborate with fellow Waymonauts
- On-site meals and snacks
- Fitness centers, massage programs, and ergonomic support
- On-demand fitness, wellbeing, and cooking classes
- Commuter benefits
- This role requires a strong foundation in low-level OS fundamentals, embedded software, and a proactive approach to validating and ensuring the hardware meets critical software performance requirements
- Proficiency in C/C++ is essential, along with experience in scripting languages (Python/Shell) for tooling and automation
- Adaptability and Initiative: Demonstrated ability to thrive in an environment where technical specifications are evolving, requiring proactive problem-solving and definition of solutions
- Minimum 3+ years of professional software development experience, with a focus on embedded systems, low-level Android, or OS development
- Education: Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, or a closely related technical field
- Experience Interfacing with Hardware Teams: Proven ability to read hardware specifications (datasheets, block diagrams) and effectively communicate software requirements, providing constructive technical feedback on hardware design choices
- Deep expertise in OS Fundamentals: Strong working knowledge of the Linux Kernel (e.g., device drivers, memory management, IPC, scheduling) and embedded operating systems concepts
- Solid understanding of Android System Development: Hands-on experience modifying, debugging, and building AOSP, including familiarity with Android HALs, Treble/VNDK, and system debugging tools
- Experience with system security fundamentals, particularly implementing or debugging secure boot and trusted execution environments (TEEs)
- Direct experience developing or integrating systems using Android Automotive OS or Android for embedded/IVI environments
- Experience with system-level virtualization technologies (e.g., KVM, hypervisors, secure separation) for embedded or automotive platforms
- Experience with audio stacks (e.g., ALSA, Audio HAL, Android AudioFlinger) or visual/graphics stacks (e.g., SurfaceFlinger, V-sync, display pipelines)
