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