SoC Embedded Software Engineer
Santa Clara Valley (Cupertino), California, United States
Do you love creating elegant solutions to highly complex challenges? Do you intrinsically see the importance in every detail? As part of our Silicon Technologies group, you’ll help design and manufacture our next-generation, high-performance, power-efficient processor, system-on-chip (SoC). You’ll ensure Apple products and services can seamlessly and efficiently handle the tasks that make them beloved by millions. Joining this group means you’ll be responsible for crafting and building the technology that fuels Apple’s devices. Together, you and your team will enable our customers to do all the things they love with their devices. Responsible for designing and implementing embedded software for System on a Chip (SoC) bring up and test. You will work closely with the Software Engineering team ensuring the quality of their firmware for manufacturability.
- 5+ years of embedded software design experience
- 3+ years of industry experience in ARM based ASIC / SoC Design Verification (DV)
- Knowledgeable of Object Oriented programming, data structures, and algorithms
- Requires SoC bring up experience
- Expert embedded C programmer
- Experienced RISC assembly programmer RTOS Embedded kernel, BSP and applications experience is helpful
- Experience writing device drivers Scripting experience with one or more of Perl, Tcl, Lua
- Experience using laboratory equipment (e.g., logic analyzer, digital oscilloscope)
- Experience reading and working from complex schematics Experience working with simulators such as VCS, ModelSim, or NCSIM a plus.
- Experience working with emulator such as Palladium is a plus. Willingness to travel is a plus
- Design and implementation of firmware for SoC bring up, test and validation. - Improving and maintaining the development and debug environments, tools and methodologies. - Support of functional test environment for device characterization, failure analysis, and mass production. - Generating post-silicon directed diagnostic and stress test cases and debugging failure cases using multiple HW and low level SW platforms. - Using and porting design verification and silicon validation tests to enable improved test coverage of IP in silicon test. - Developing software to prove that the silicon behaves as architected under the various supported modes. - Developing targeted functional tests to screen failures identified during the product lifecycle failures.
Education & Experience
BSCS, BSEE, BSCE, or proven equivalent experience.…