Principal Software Engineer
Core
Design, implement, and maintain core debugging technologies including debugger engines, kernel-mode debugging transports, and time-travel record and replay systems.
Role type
Principal Software Engineer (Systems/Debugging)
Builds
Debugger engines, kernel-mode debugging transports, time-travel record and replay tools, and extensibility APIs.
Domain
Operating Systems, Kernel Development, Debugging Tools
Deliverable
production ML models | product features | infrastructure
Required skills
C, C++, C#, Java, JavaScript, Python, kernel-mode development, operating-system internals, cross-architecture development (x64, ARM64), tracing, record/replay, reverse-debugging, systems-level defect diagnosis, large-scale software delivery
Preferred skills
AI-assisted debugging development, mentorship, deep systems-level security expertise
Technologies
WinDbg, DbgEng, KDNET
Responsibilities
Own major components end-to-end from architecture through implementation and testing; Build extensibility APIs for partner teams and community; Diagnose and resolve deep systems-level defects in user-mode and kernel-mode code; Improve reliability, performance, and security of debugging tools at massive scale; Advance AI-assisted debugging capabilities; Mentor other engineers and raise the technical bar across the team
Seniority
Principal, hands-on IC with mentorship