Emulation Development Engineer

Santa Clara Valley (Cupertino), California, United States


Role Number:200165647
Imagine what you could do here. At Apple, new ideas have a way of becoming extraordinary products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. Dynamic, smart people and inspiring, innovative technologies are the norm here. The people who work here have reinvented entire industries with all Apple Hardware products. The same real passion for innovation that goes into our products also applies to our practices strengthening our commitment to leave the world better than we found it. Join us to help deliver the next groundbreaking Apple product. Are you passionate about changing the world? We have a critical impact on getting high quality functional products to millions of customers quickly, and we are hiring all levels from junior to senior engineers to join our prototyping team.

Key Qualifications

  • Strengths in C/C++ development, high and/or low level software architecture, code development and debug
  • Advanced knowledge of SOC architecture, SOC programming, or high performance/low latency coding preferred
  • Experience with digital logic design, Verilog, System Verilog, UVM verification environments
  • Experience with Emulation system/tool flows (Palladium, Zebu, Veloce) is a plus
  • Strong analytical skills, creative demeanor and enthusiastic team player
  • Excellent communication skills and demonstrate the desire to tackle diverse challenges
  • Experience in scripting/programming - ideally Unix, perl, python, or tcl


As an Emulation Development Engineer you will be responsible for developing and enhancing the frameworks, tools, and processes for emulating and debugging complex SOCs. Developing C/C++ monitors and transactors to give our customers total visibility and control Developing and deploying multi-threaded frameworks to enable scalability and improve performance for complex emulation environments Exposure to multiple Emulation environments using the latest emulation techniques SoC bringup on emulation, root cause failing SoC/Processor tests using the C/C++ monitors developed by the team, and related emulator environment issues Role requires close collaboration with Design, DV, Silicon Validation, Performance, and Software teams. Strong debug, communication and collaboration skills are essential Work with the top tier emulation vendors to debug issues

Education & Experience

MS (EE or CS) required with over 3+ years proven experience.

Additional Requirements