SW developer for Simulation team

Herzliya, Israel
Software and Services


Role Number:200413518
At Apple, you'll accomplish truly extraordinary things. Our group is building the state of the art, fastest and most efficient SSD, used on the iPhone, the iPad, Apple Watch and the new Apple Silicon Macs. If you are an expert software engineer, with a passion for real time systems, embedded storage solutions and simulations, have excellent attention to detail, and are dedicated to improving customer experience, please join us! The Storage Simulation team builds our SSD simulator which runs firmware, analyzes and produces insights, and profiles realistic workloads over many thousands of cores. We are a high-pace and high-functioning team of FW engineers, Backend engineers and Data Scientists that use the latest simulation technologies to tackle sophisticated, large-scale problems. We work collaboratively to make impact that changes people's lives.

Key Qualifications

  • Programming skills in C/C++ and Python
  • Experience with simulating event driven systems
  • Deep knowledge of data structures and algorithms
  • Source Control Management with svn or git


You will architect and develop our storage simulation, improve integration with the storage sub-system and debug storage related issues across software and hardware. You will be applying cloud processing solutions, data analytics techniques and visualization tools. You will work cross-functionally with partners in SSD FTL team, backend team, and driver and application teams.

Education & Experience

Bsc/Msc degree in Computer Science, Electrical Engineering or related fields.

Additional Requirements

  • Advantage:
  • Proven understanding of SSD software architecture and FW (e.g. NAND flash commands and media management algorithms)
  • Experience with applying cloud processing technologies (e.g. Kubernetes, AWS )
  • Experience with data processing and visualization tools
  • Strong interpersonal skills; the ability to understand business requirements and naturally explain complex technical topics to everyone
  • Detail-oriented, can identify and fix own bugs, and write code that runs efficiently
  • Self-starter and ability to multitask
  • Proactive and demonstrates creative and critical thinking capabilities