Software Development Engineer in Test - Charging & Inductive Power

AppleSan Diego, CaliforniaOn-siteFull-timeMid level, 2–5 yearsListed 1 hour ago

Apply now

About this role

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 Qualifications

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

Preferred Qualifications

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