Minimum qualifications:

  • Bachelor's degree in Computer Science, Computer Engineering, a related technical field, or equivalent practical experience.
  • 5 years of experience working in embedded and/or operating systems software.
  • Experience with coding in C/C++.
  • Experience with development within embedded systems/firmware design.

Preferred qualifications:

  • Master's degree or PhD in Computer Science, Computer Engineering, Electrical Engineering, or related field.
  • 2 years of experience with Linux kernel development, and software/hardware architecture.
  • Experience in development of Android OS.
  • Knowledge of Advanced RISC Machine (ARM)-based platforms.
  • Knowledge of paravirtualization.


  • Design and develop multi-platform, open source standards, and APIs.
  • Write frameworks for multiple subsystems, including video, cameras, graphics, networking, virtualization, memory management, and others, and on general OS development across the stack.
  • Work on open source Linux kernel and middleware, Chrome browser, Android frameworks, Linux system, and virtualization.
  • Collaborate with internal and external, software and hardware, teams and partners, as well as open source communities.