JobsPrincipal Software Engineer
Job description
The Principal Software Engineer will be part of the Microsoft Windows & Devices team, focusing on delivering high-quality Windows experiences on innovative silicon platforms. This role involves collaboration with hardware and software engineers, designers, and manufacturing partners to create compelling products. The candidate will engage in various phases of silicon development, platform validation, and product enablement. A strong emphasis is placed on problem-solving, automation, and ensuring product quality throughout the development lifecycle.
Requirements
- Bachelor's Degree in Computer Science or related technical field AND 6+ years technical engineering experience with coding in languages including C, C++, C#, Java, JavaScript, or Python.
- 7+ years of experience in software and/or product development.
- Demonstrated experience with C/C++ design, coding, debugging and testing skills.
- Solid understanding of SoC architecture, platform bring-up, boot flows, and system initialization.
- Experience with silicon validation, hardware debugging, and root cause analysis across hardware, firmware, and software layers.
- Knowledge of platform technologies and peripherals including PCIe, NVMe, USB, I2C, SPI, UART, GPIO, and power management.
- Solid understanding of operating system fundamentals, including memory management, scheduling, interrupts, synchronization, and multithreaded programming.
- Experience developing, debugging, and optimizing device drivers in Windows or Linux environments.
- Familiarity with Plug and Play architecture, device enumeration, power management, and driver lifecycle management.
- Experience with kernel debugging, crash dump analysis, hardware debuggers, and JTAG-based bring-up and validation tools.
- Proficiency in designing maintainable, modular, and reusable software components with a focus on scalability and long-term supportability.
- Experience developing automated validation frameworks, test infrastructure, and regression suites for pre-production and production hardware.
- Solid analytical and troubleshooting skills with the ability to debug issues across silicon, firmware, drivers, operating systems, and applications.
- Proven ability to collaborate effectively with cross-functional teams and external partners to deliver solutions that scale across multiple product generations and architectures.
- Experience working in Agile development environments and applying Scrum methodologies to deliver high-quality engineering outcomes.
Responsibilities
- Collaborate with architects, silicon design teams, firmware developers, operating system engineers, and system integration teams to define requirements and enable new capabilities.
- Optimize platform performance and drive resolution of complex hardware and software issues throughout the product lifecycle.
- Debug reliability and stability issues across a wide variety of platforms in collaboration with teams across Microsoft and the Windows Ecosystem.
- Develop kernel and user mode components for Windows to enhance diagnostic and debugging capabilities at scale.
- Envision processes and develop infrastructure that efficiently integrates new diagnostic data for teams in Windows, IHVs, and OEMs.
Benefits
- Employees at Microsoft are often offered comprehensive, “world-class” benefits—including health and mental-wellness programs, competitive pay with bonuses and stock awards, and retirement/savings options. Time-off and flexibility are common, with generous vacation and holidays, parental and caregiver leave, and flexible work schedules, alongside learning support, employee resource groups, product discounts, and matching-gifts/volunteering programs. Specific benefits can vary by region.
Is this posting expired or inaccurate?
