Software Development Engineer in Test - Charging & Inductive Power
What you'll need to apply
What this employer's standard application typically asks
Company-specific questions
- Have you previously worked at Apple?
About this role
Employer-provided description, formatted for easier reading.
The Core OS Charging & Inductive Power organization is looking for a highly motivated, self-driven, and passionate software development engineer to join the quality engineering team.
As a critical member of the team, you will be working daily with software developers on peak power management technologies, dynamic power budgeting, transient current mitigation, battery state-of-health/impedance interactions, and brownout protection across multiple platforms.
Your responsibilities will span across all phases of software delivery process of Apple’s products, from early silicon design to product launch and beyond. Through ownership of the overall software quality of these technology areas, you’ll be required to become very familiar with the underlying SW/FW and its algorithms, control loops, dynamic power clamping mechanisms, and hardware/kernel interfaces.
You will take on responsibilities of working with many cross-functional teams to solve large scale complex problems, fully automated test plan development and execution, building internal frameworks and tools, SW unit testing with mocks/stubs, multiple forms of process automation, systems engineering, and influencing design decisions in production SW/FW with a focus on quality in a technology area that users around the world rely upon.
Create well-formulated, scalable software solutions and test tooling for Peak Power Manager, transient mitigation, battery health management, and dynamic power-budgeting technologies across many platforms. Devise and execute an end-to-end testing strategy for peak power algorithms across diverse battery operating states.
Quickly gain a deep understanding of the design, requirements, and architecture of low-level energy technologies, kernel drivers, PMIC/fuel gauge telemetry, battery aging models, and closed-loop controls governing peak power and battery longevity.
Influence the inclusion of testability into software and firmware designs, driving requirements for battery cell impedance emulation, cycle-count/aging mocks, telemetry hooks, and fault-injection capabilities. Develop and automate unit, functional, integration, and system-level tests.
Validate the interplay between battery chemistry dynamics and power clamping, ensuring brownout prevention without premature throttling or unneeded performance degradation as cells age. Collaborate cross-functionally with peer development, test, battery engineering, cell chemistry, silicon validation, and performance teams across Apple to resolve complex power and battery degradation anomalies.
Assess and represent end-user impact of transient power issues, aging-related throttling, and unexpected resets, directly shaping key product decisions and release readiness. Explore novel approaches to create automated test frameworks, hardware-in-the-loop (HIL) environments, battery cycler/emulator integrations, and CI infrastructure to streamline energy tech qualification practices.
Minimum 4 to 5 years experience in software development Excellent understanding in writing, reading and debugging C, C++ Excellent understanding of developing class-based python tests and python frameworks Excellent understanding of embedded architecture Experience in testing and automation of embedded systems and firmware Excellent understanding of computer architecture and operating systems concepts Demonstrate strong critical thinking, debugging and troubleshooting skills for large, complex problems Excellent collaborative and communication skills in large cross-functional team environments Demonstrate excellent attention to detail Familiarity with bug triage
Familiarity with wired adapter, battery management systems, or power are a plus Experience with data analytics, big data is a plus Experience with control systems is a plus