Participate in designing, developing and maintaining the firmware running on our system-on-chip and its software components at all layers of the system such as drivers, bootloader, memory management, I/O system, low power management, application software stack, etc.
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.
Requirements
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.
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).
If you have a disability or special need that requires accommodation, please don't be shy and provide us some information .
Benefits
Health insuranceParental leave
Additional Information
Snap Inc is a technology company. We believe the camera presents the greatest opportunity to improve the way people live and communicate. Snap contributes to human progress by empowering people to express themselves, live in the moment, learn about the world, and have fun together. The Company's three core products are Snapchat , a visual messaging app that enhances your relationships with friends, family, and the world; Lens Studio , an augmented reality platform that powers AR across Snapchat and other services; and its AR glasses, Spectacles .
Specs Inc. is a wholly-owned subsidiary of Snap Inc. dedicated to making computing more human. The company develops Specs, advanced eyewear that seamlessly integrates digital experiences into the physical world.
Specs feature see-through lenses that place digital objects directly into three-dimensional space, powered by Snap OS, a proprietary, context-aware operating system designed for natural interaction with your hands and voice.
Specs Inc. also provides Lens Studio, a full suite of advanced developer tools that powers immersive augmented reality experiences across Specs, Snapchat, and other services
We are looking for a Software Engineer (Embedded) with a comprehensive knowledge of SoC architecture and embedded software development to join our Specs team.