Overview
Skills
Job Details
Job Description: Firmware Software Engineer V
REQUEST HIGHLIGHTS:
- Our team is at the front end of the firmware/software development cycle, so we are always innovating and charting new territories in the Augmented Reality world. We build prototypes and dev-vehicles that help XFN teams develop and validate solutions.
- Additionally, we also provide fw/sw solutions that improve code stability/quality for e.g. enabling CI (Continuous Integration) on hardware devices in lab.
- As a member on our team, there will be opportunities to work on the entire sw stack from host applications, system software and drivers, and firmware.
Must-Have Hard Skills:
- Experience with software design and programming in C/C++ for development, debugging, testing, and performance analysis.
- Experience with firmware development for embedded systems and/or systems software
- Experience with peripherals such as USB, SPI, MIPI CSI/DSI, I2C, UART, GPIO
Nice-to-Have Skills:
- Experience with scripting languages like Python, Bash, etc.
- Experience with embedded RTOSes such as FreeRTOS, Zephyr, uCOS, etc.
Experience with CPU architectures like ARM, RISC-V, etc
Summary:
We aim to bring together the brightest cross-disciplinary minds in one place to deliver on our mission: build tools that help people feel connected, anytime, anywhere. We have an exciting opportunity for a Firmware Engineer to join our team of experts that deliver key AR/VR firmware and software solutions. As a Firmware Engineer you will apply the principles of computer science and mathematical analysis to the design, development, and testing of AR/VR devices and prototypes.
Job Responsibilities:
- Architect, design, implement, and test firmware/software enabling customers to meet their goals.
- Gather requirements from customers and break into tasks for execution.
- Create unit-tests to ensure software is always meeting quality needs.
- Collaborate with Electrical, Firmware, Software, and Hardware engineers to deliver solutions.
Minimum Qualifications:
- Experience with software design and programming in C/C++ for development, debugging, testing, and performance analysis.
- Experience with scripting languages like Python, Bash, etc.
- Experience with embedded RTOSes such as FreeRTOS, Zephyr, uCOS, etc.
- Experience with CPU architectures like ARM. RISC-V, etc.
- Experience with peripherals such as USB, SPI, MIPI CSI/DSI, I2C, UART, GPIO etc.
- Experience producing production quality, fail-safe firmware for low-power real-time systems..
- Verbal and written communication skills, problem solving skills, customer service and interpersonal skills.
Desired Qualifications:
- Experience with wireless and wired communication protocols, including USB, TCP/IP, Ethernet, Bluetooth and 802.11.
- Experience with embedded DSP and graphics development.
- Experience with instrumentation like oscilloscopes, logic/protocol analyzers for debugging embedded systems at HW level.
- Experience with FPGA and vendor specific hardware evaluation boards.
Education/Experience:
- Bachelor's degree in computer science, electrical engineering or relevant field required.