Software Engineer - Systems (DFT Initiative)

Apple Inc.
Cupertino, CA, United States
3 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
7 years minimum
Compensation
$147,400.0 - $272,100.0
Working hours
Regular working hours
Job source

Tech stack

Clean Code Principles Artificial Intelligence Data Analysis Application Integration Architecture Software Applications Automation of Tests Boolean Algebra Profiling Code Review Databases Software Design Patterns Linux
+14 more
Inter-Process Communication Python (Programming Language) Lua (Scripting Language) Objective-C (Programming Language) Object-Oriented Software Development Signal Integrity Socket Programming Software Engineering Software Systems System Programming Encapsulation (Networking) Hardware Testing Solid Principles Objective C++

Job description

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.

ā€,ā€responsibilitiesā€:ā€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

Requirements

Do you have experience in System design?, 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

Minimum Qualifications

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

Benefits & conditions

4.14.1 out of 5 stars Cupertino, CA $147,400 - $272,100 a year, Pulled from the full job description

  • Employee stock purchase plan
  • Health insurance
  • Retirement plan
  • Dental insurance
  • RSU, At Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $147,400 and $272,100, and your base pay will depend on your skills, qualifications, experience, and location.

Apple employees also have the opportunity to become an Apple shareholder through participation in Apple’s discretionary employee stock programs. Apple employees are eligible for discretionary restricted stock unit awards, and can purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan. You’ll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at Apple, reimbursement for certain educational expenses - including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation. Learn more about Apple Benefits

Note: Apple benefit, compensation and employee stock programs are subject to eligibility requirements and other terms of the applicable plan or program.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on indeed.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

3:43 min

Designing a reliable technical hiring and interview process

Andreas Klinger Andreas Klinger +1 Ā· Coffee With Developers

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard Ā· WWC 2025

47 sec

Profiling native execution calls with async-profiler

Gonzalo Ortiz Jaureguizar Gonzalo Ortiz Jaureguizar Ā· WWC Europe 2026

3:04 min

Database evolution and the funding behind vector databases

Erik Bamberg Ā· LIVE

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 Ā· Coffee With Developers

2:39 min

Experiencing core Linux capabilities for DevOps administration

Michael Cade Ā· LIVE

Videos

See all

Related articles

See all