Embedded Software Engineer

Overview

On Site
$60 - $70
Accepts corp to corp applications
Contract - W2
Contract - Independent
Contract - 12 Month(s)

Skills

embedded
bsp
kernel
c++

Job Details

Role: Embedded Software Engineer, BSP/Kernel

Location: Sunnyvale CA (Onsite)

Performance Debugging & Java Script
Positions : 4

Job Description:

We're the VROS BSP Scale team focusing on super scale VR headset (1p) and OEM headset (3p) development. Ventura is the current 1p product we're supporting from low level stack including bootloader, device tree, kernel config, kernel driver and HAL etc. We also own device security and provision device side implementation. We work closely with SoC/component vendors, hardware, manufacturer engineering, infra, security, operations etc. The key success criteria of the team is

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.

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[1]latency and high bandwidth.

Own the definition of one or more work streams focused on hardware bring up, peripheral drivers and communication, silicon integration and power and performance management and optimization.

Debug complex, system-level, multi-component issues that typically span across multiple layers from kernel to application.

Profile performance problems and drive optimizations that span the entire software stack.

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:

Bachelor's or master s degree in computer science, Computer Engineering, relevant technical field, or equivalent practical experience.

6+ years' Software Engineering experience in the following: device driver development, embedded systems, or operating systems.

6+ years experience working on systems software in a large-scale C/C++ code base.

2+ years experience defining and driving technical work streams and providing technical leadership for software engineering teams.

Experience with Software Development processes including: source control, bug tracking, and design documentation.

Experience in hardware bringup using interfaces like ADC, GPIO, SPI, I2C, etc.

Experience in one or more of the following areas: BSP/Board Support Package, Operating Systems, Android OS, RTOS, Bootloader, Power Management, Linux, Graphics and Display Drivers, MCU (Microcontroller).

Experience developing, debugging, and shipping software products on large code bases that span platforms and tools.

Bachelor s degree in computer science, Computer Engineering, relevant technical field.

Preferred Qualifications

Deep specialized experience in two or more of the following areas: BSP/Board Support Package, Operating Systems, CoreOS, Kernel, Android Kernel, Bootloader, Power Management, RTOS, Linux, Graphics and Display Drivers, MCU (Microcontroller)

Demonstrated experience working collaboratively in cross-functional teams

Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.