Software Engineer, Embedded
Snap Inc is a technology company that focuses on enhancing communication through camera and augmented reality technologies. The Specs team, a wholly‑owned subsidiary, develops advanced eyewear that integrates digital experiences into the physical world.
Software Engineer (Embedded)
Responsibilities
- Participate in designing, developing and maintaining the firmware running on our system‑on‑chip and its software components at all layers, such as drivers, bootloader, memory management, I/O system, low power management and application software stack.
- Participate in designing, developing and maintaining the software SoC validation test suite at both stages; pre and post tape out.
- Collaborate with cross‑functional teams to define requirements, design architecture, implement software, and perform testing to ensure high‑quality deliverables.
- Contribute to the continuous improvement of development processes.
Knowledge, Skills & Abilities
- Proficiency in embedded C/C++ programming languages.
- Strong understanding of embedded systems architecture.
- Experience with real‑time operating systems (RTOS) and bare‑metal development.
- Knowledge of communication protocols such as UART, SPI, I2C, I3C.
- Familiarity with debugging tools like JTAG/SWD and logic analyzers.
- Ability to work with hardware schematics and datasheets.
- Experience with version control systems and issue tracking tools.
- Strong problem‑solving and analytical skills.
- Excellent communication and teamwork abilities.
- Ability to manage multiple tasks and prioritize effectively in a fast‑paced environment.
Minimum Qualifications
- Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field.
- 5+ years of experience in embedded software development.
- Demonstrated expertise in C/C++ programming for embedded systems.
- Experience with embedded development tools and environments.
Preferred Qualifications
- Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field.
- Experience with ARM Cortex‑M/R/A architectures.
- Experience running code on FPGA or emulator platforms (e.g., Cadence, Siemens, Synopsys).
- Experience with continuous integration and continuous deployment (CI/CD) pipelines (e.g., GitLab, TeamCity).
Equal Employment Opportunity
Snap is an equal opportunity employer, committed to providing employment opportunities regardless of race, religious creed, color, national origin, ancestry, physical disability, mental disability, medical condition, genetic information, marital status, sex, gender, gender identity, gender expression, pregnancy, childbirth, breastfeeding, age, sexual orientation, military or veteran status, or any other protected classification, in accordance with applicable federal, state, and local laws. EOE, including disability/vets.
#J-18808-Ljbffr