Embedded Software Engineer IV

Duration:  12 Months

Pay Rate: 75-80/HR. on W2

  • Our team is responsible for rapidly building and iterating high-fidelity prototype hardware and development platforms that bring new ideas to life by expressing design intent, user experience and enabling key early technology decisions - using the best and most appropriate tools and techniques for the task. We are seeking an embedded software engineer who has a passion for working across disciplines to turn early cutting-edge concepts and technologies into reality.
  • As an Embedded Software Engineer, you will be an integral member of the team, responsible for Firmware design and optimization. This person will also be involved in developing a solid platform while working on a variety of domains, architect, design, build and test firmware/software systems for future systems architecture, design of new concepts, technologies and product feature development.
  • You must be able to work with minimal guidance, demonstrate a high attention to detail, be partnership-oriented and possess strong problem-solving skills. You must be a self-starter, well-organized and have excellent communication skills.

Responsibilities:

  • Design and implement components at all layers of the system, e.g., kernel, synchronization primitives, resource allocators, memory management, security, I/O systems, persistence, etc for prototyping projects.
  • Design and implement drivers and services that operate efficiently in a constrained environment yet when pressed can efficiently deliver large volumes of data with low-latency and high-bandwidth.
  • Debug complex, system-level, multi-component issues that typically span across multiple layers from kernel to application.
  • Bring up new devices and lead debugging and performance tuning exercises that span multiple hardware/firmware/software teams.
  • Understand software components from multiple partner teams, lead the integration of those components into the unified product code base, and drive their continued development.

Minimum Qualifications:

  • 8+ years' Firmware Engineering experience in the following: device driver development, embedded systems, or operating systems.
  • 5+ years' experience working on systems software in a large-scale C/C++ code base.
  • Demonstrated experience defining and driving technical work streams and providing technical leadership for software engineering teams.
  • Proficiency in C and C++
  • 3+ experience on Android AOSP, Init, System Services, Build system, Android Architecture, Android Subsystems.
  • Experience with one or more of the following technical domains: Graphics, Vulkan, OpenGL, OpenCL, Camera, video and audio systems.
  • Experience in hardware bring-up using interfaces like ADC, GPIO, SPI, I2C, etc.
  • Experience developing, debugging, and shipping software products on large code bases that span platforms and tools.
  • Experience with Software Development processes including source control, bug tracking, and design documentation.
  • Bachelor’s degree in computer science, Computer Engineering, relevant technical field, or equivalent practical experience.

Preferred Qualifications:

  • Have demonstrated expertise in a few areas of AOSP, be able to navigate the various layers of AOSP: framework, system services, HAL, kernel, bootloader.
  • Experience in Android frameworks and HAL adaptation.
  • Experience with developing application and platform services on Android operating systems for VR/AR systems
  • Demonstrated experience working collaboratively in cross-functional teams.