Software Engineer - Systems (DFT Initiative)
Apple
Software Engineering
Cupertino, CA, USA
USD 181,100-318,400 / year + Equity
Posted on Feb 20, 2026
Are you interested in working on tools and software that directly enable hardware validation? Our Hardware Test Engineering team is evolving our Design for Test (DFT) methodology, and we're building the software infrastructure to support it effectively.
This is an opportunity to develop software tools that control and automate hardware testing. You'll work on designing & building maintainable software that directly interfaces with test hardware and equipment. This isn't high-level application software—it's hands-on software engineering focused on creating tools that manage the actual execution of hardware tests. If you enjoy hands-on software development with clear real-world impact, and you're interested in the intersection of software and hardware testing, this role offers meaningful work with tangible results.
- Developing software components that manage testing workflows, test scheduling, result tracking, and data analysis
- Writing clean, maintainable code using solid design principles and best practices
- Working with data models that represent test configurations, results, and metadata, ensuring correctness and reasonable performance
- Building or integrating APIs that connect DFT systems with other engineering tools
- Creating scripts and configuration interfaces using Lua that allow test engineers to define and modify test scenarios
- Collaborating with hardware engineers and test specialists to understand requirements and implement effective solutions
- Contributing to code reviews and sharing knowledge with team members
- BS EE or CS
- 7+ years experience
- Understanding of software design principles including design patterns, separation of concerns, and writing maintainable code
- Proficiency in C++ for systems-level development and integration
- Proficiency in one higher-level programming language such as Python or similar for application-level development
- Proficiency in one scripting language (Lua preferred)
- Experience in designing databases
- Solid grasp of object-oriented design principles including encapsulation, polymorphism, inheritance hierarchies
- Ability to read and interpret schematics to understand circuit behavior and identify relevant test points
- Understanding of server-client architecture and socket programming for building networked test systems
- Basic understanding of electrical engineering concepts including voltage, current, digital logic fundamentals, and signal integrity—enough to understand hardware constraints and test requirements
- Ability to read and interpret schematics to understand circuit behavior and identify relevant test points
- Practical familiarity with Objective-C code, able to read and work with existing Objective-C implementations
- Familiarity with Linux user space applications, including system calls, process management, inter-process communication, and performance profiling
- Strong problem-solving skills with an ability to decompose complex systems into manageable components
- Quickly adapting to different code bases and technologies to identify and implement effective software solutions across our testing infrastructure
- Experience with test automation or testing frameworks
- Knowledge of hardware-software co-design considerations
- Interest in exploring AI applications in testing and automation
Apple is an equal opportunity employer that is committed to inclusion and diversity. We seek to promote equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.