Microsoft Corp logo

Principal Software Engineer

Microsoft Corp

  • Redmond, WA
  • 21 days ago
  • $142,800–$274,800 Per Year

Highlights

You will own significant components end to end, designing, implementing, and hardening them for reliability, performance, and security across a broad range of hardware, collaborate closely with product, kernel, silicon, and partner teams to bring up debugging on new architectures and platforms, and help advance AI-assisted debugging so engineers can find answers faster. As a Principal Software Engineer, you will design and develop core debugging technologies, including the Windows debugger and its underlying engine (WinDbg and DbgEng), kernel-mode debugging transports such as KDNET, and Time Travel Debugging (TTD), which records a programs execution so engineers can replay it both forwards and backwards to pinpoint the root cause of the toughest defects.

Numbers & Facts

LocationRedmond, WA
IndustryComputer Software
Salary$142,800–$274,800 Per Year
Company Size10,000 employees or more
Year Founded1975
Websitehttp://www.microsoft.com

Description

Overview

Windows + Devices powers experiences for over a billion users worldwide, building the platforms and products that create magical experiences across Microsoft and leading the Windows and Surface products through deep partnership across the company and with OEM partners. The Windows Engineering System is the backbone that lets Windows engineers design, code, build, validate, and ship at massive scale, securely and with high quality. Debugging is central to that quality bar: when something breaks deep in the operating system, a driver, or the kernel, our debugging tools are what let engineers find the root cause and fix it fast. This team builds the debuggers, kernel-debugging transports, and time-travel technologies that make Windows diagnosable end to end, relied on every day by Microsoft engineers, hardware partners, and the broader developer community.

As a Principal Software Engineer, you will design and develop core debugging technologies, including the Windows debugger and its underlying engine (WinDbg and DbgEng), kernel-mode debugging transports such as KDNET, and Time Travel Debugging (TTD), which records a programs execution so engineers can replay it both forwards and backwards to pinpoint the root cause of the toughest defects. You will work across Windows and Linux and across x64 and ARM64, writing the systems-level code that engineers everywhere depend on to diagnose crashes, hangs, and correctness bugs at the deepest layers of the stack. You will own significant components end to end, designing, implementing, and hardening them for reliability, performance, and security across a broad range of hardware, collaborate closely with product, kernel, silicon, and partner teams to bring up debugging on new architectures and platforms, and help advance AI-assisted debugging so engineers can find answers faster. Your technical depth, strong engineering judgment, and ability to reason about complex systems will be essential to keeping Microsofts debugging tools the best in the industry.

Microsoft's mission is to empower every person and every organization on the planet to achieve more. As employees we come together with a growth mindset, innovate to empower others, and collaborate to realize our shared goals. Each day we build on our values of respect, integrity, and accountability to create a culture of inclusion where everyone can thrive at work and beyond.

Responsibilities

Core Debugging Technology Development

  • Design, implement, and maintain core debugging technologies spanning the debugger engine (WinDbg and DbgEng), kernel-mode debugging transports (KDNET), and time-travel record and replay (TTD).
  • Own major components end to end, from architecture through implementation, testing, and long-term servicing.
  • Build the extensibility and APIs that let partner teams and the community extend the debugger.

Cross-Platform and Hardware Bring-Up

  • Bring up and validate debugging on new hardware, architectures (x64 and ARM64), and platforms (Windows and Linux).
  • Partner across product, kernel, silicon, and OEM teams to bring up debugging on new architectures and platforms and to meet the needs of a diverse user base.

Deep Systems Diagnosis and Quality

  • Diagnose and resolve deep systems-level defects (crashes, hangs, memory, and concurrency issues) in both user-mode and kernel-mode code.
  • Improve the reliability, performance, and security of debugging tools that are used at massive scale.
  • Uphold a high-quality bar through thoughtful design, code reviews, testing, and engineering best practices.

AI-Assisted Debugging and Technical Leadership

  • Advance AI-assisted debugging capabilities that help engineers reach root cause faster.
  • Mentor other engineers and raise the technical bar across the team.

Qualifications

Required/Minimum Qualifications:

  • Bachelors Degree in Computer Science or related technical field AND 6+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python.
  • OR equivalent experience.

Other Requirements: Ability to meet Microsoft, customer and/or government security screening requirements are required for this role. These requirements include but are not limited to the following specialized security screenings:

  • Microsoft Cloud Background Check: This position will be required to pass the Microsoft Cloud background check upon hire/transfer and every two years thereafter.

Preferred Qualifications:

  • Masters degree in computer science or related technical field AND 6+ years technical engineering experience.

  • OR Bachelors Degree AND 8+ years technical engineering experience.

  • OR equivalent experience.

  • Experience building debuggers, debugger engines, or debugging tools for systems-level code.

  • Experience with kernel-mode development or operating-system internals on Windows or Linux.

  • Familiarity with cross-architecture development across x64 and ARM64.

  • Experience with tracing, record/replay, or reverse-debugging technologies.

  • Experience improving the reliability, performance, and security of software at scale.

  • Self-driven and passionate about developer productivity, with excellent communication skills and customer-oriented problem-solving abilities.

  • Proven track record of delivering large-scale, systems-level software across multiple teams and technologies.

  • Experience diagnosing and resolving complex defects in low-level software such as operating systems, kernels, drivers, firmware, or debuggers.

#W+DJOBS

#WINDOWSES

Software Engineering IC5 - The typical base pay range for this role across the U.S. is USD $142,800 - $274,800 per year. There is a different range applicable to specific work locations, within the San Francisco Bay area and New York City metropolitan area, and the base pay range for this role in those locations is USD $188,000 - $304,200 per year.

Certain roles may be eligible for benefits and other compensation. Find additional benefits and pay information here:

https://careers.microsoft.com/us/en/us-corporate-pay

This position will be open for a minimum of 5 days, with applications accepted on an ongoing basis until the position is filled.

Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, citizenship, color, family or medical care leave, gender identity or expression, genetic information, immigration status, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran or military status, race, ethnicity, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable local laws, regulations and ordinances. If you need assistance with religious accommodations and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations.

About Company

DO WHAT YOU LOVE
Make your mark on the world’s most used technologies. Develop the next hit mobile application. Pioneer a startup that could be the next big thing. At Microsoft, you choose your path.

Headquartered in Redmond, Washington, Microsoft is a top innovator in both the consumer and enterprise technology industry. Just a few of the many things our products do are unleash creativity, connect businesses, and make learning more fun. But our continued success is based on one thing: our employees. We hire amazing, talented people and give them the opportunities—and the tools—to succeed.

WHY MICROSOFT?
As a Microsoft employee, you’re surrounded by a diverse group of the smartest people in your field. This fosters new ideas, better business results, and creates a dynamic work environment. In the office, you’re constantly challenged and supported by your colleagues. Every day holds something new and exciting.

We also offer unparalleled depth and breadth of career opportunities. As an industry leader in multiple fields, working for Microsoft means being able to do whatever you feel passionate about—and being able to make an impact in that field. From day one, we give our employees significant responsibility. This means that you’ll know that you directly contributed to something that has a positive impact on people worldwide. Whether you choose to work in management, dive deep into the newest technology, or explore multiple professions, you’ll find everything you need at Microsoft to drive your career—and to make a difference.

WE GET IT – YOU’RE MORE THAN YOUR JOB
Everyone works differently and is motivated by different things. We also understand that there’s more to you than your job. That’s why we offer competitive pay and a wide assortment of benefits-- to help you make the most of life at work and away from it.

GET THE BALL ROLLING

Similar Jobs

See more jobs