Senior Software Engineer

MicrosoftRedmond, WA
$119,800 - $261,000

About The Position

Microsoft Surface Devices is focused on delivering iconic end-to-end products across hardware, software, and services. The security, reliability, and performance of the low-level software are critical to this mission. This role involves close collaboration with hardware engineers, software engineers, designers, and manufacturing partners to create industry-defining, secure solutions. The team is responsible for Windows drivers, system services, and debugging tools for Surface devices. They are adopting Rust for driver development and are seeking a Senior Software Engineer with deep Rust expertise to contribute to and influence this transition. The role will initially focus on the Windows Driver in Rust (WDR / windows-drivers-rs / WDK) space, strengthening Rust driver foundations, patterns, and tooling, with potential to expand to other subsystems. The engineer will own or collaborate on solutions with minimal oversight, write high-quality, secure, and performant code, and utilize AI tools throughout the software development lifecycle, working with system architects, IHVs, and Windows OS teams on a cutting-edge roadmap. Microsoft's mission is to empower every person and organization to achieve more, fostering a culture of respect, integrity, accountability, and inclusion.

Requirements

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

Nice To Haves

  • Master's 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 Bachelor's Degree in Computer Science or related technical field AND 8+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, Rust, or Python.
  • OR equivalent experience.
  • Experience with the windows-drivers-rs (WDR) / Windows Driver Kit and WDM/WDF/KMDF/UMDF driver models.
  • Experience using AI-assisted development tools and practices across the software development lifecycle.
  • Working knowledge of OS primitives: memory management, scheduling, interrupts, threading, and ACPI.
  • Proven ability to land safe, cross-cutting changes in large, complex, unfamiliar codebases while preserving correctness and performance.
  • Experience reviewing HW schematics and a solid understanding of the software lifecycle in a device-development environment.
  • Contributions to Rust OSS or other systems / driver open-source projects.
  • Demonstrated ability to drive requirements into solutions and collaborate effectively with internal and external (IHV/OEM) partners.
  • Deep, demonstrable Rust expertise, including unsafe Rust, FFI/interop, ownership/lifetimes, and building safe abstractions over low-level or OS APIs.
  • Experience in design, implementation, debugging, and testing of Windows operating system drivers and/or Windows system software (kernel-mode and/or user-mode).
  • Hands-on experience with kernel debugging and memory-dump analysis (WinDbg, ETW/trace).
  • Experience working with hardware devices and hardware/software debugging.

Responsibilities

  • Design, implement, and ship Windows drivers in Rust, both kernel-mode and user-mode, using and advancing the windows-drivers-rs (WDR) framework, WDF/KMDF/UMDF interop, and safe abstractions over native Windows APIs, applying and extrapolating best practices to reliably build code, following well-established methods while applying best practices for new code development.
  • Apply AI-native development practices by independently using appropriate AI tools and practices across the software development lifecycle in a disciplined manner, taking responsibility for the content of AI-generated designs, code, and other assets, and helping other engineers do the same.
  • Lead discussions for, and own, driver architecture and design decisions with minimal technical oversight, creating proposals and complex design specifications for Rust driver architecture, developing design documents, defining memory-safety boundaries and FFI/interop with existing C/C++ drivers, and ensuring the architecture meets security, performance, and compliance requirements.
  • Drive quality and test automation by independently creating clear plans for testing and assuring quality, adding new tests, removing antiquated tests, and aggregating tests to improve the test suite, continually integrating automation into testing, and applying metrics to drive the quality and stability of code.
  • Own complex debugging and retrospective root-cause analysis: kernel debugging, crash / memory-dump analysis (WinDbg), and ETW/tracing across driver, firmware, and hardware boundaries to identify root causes of problems.
  • Uphold security-as-code, privacy, safety, and accessibility by applying security practices and establishing code invariants so each layer is independently secure, partnering with security stakeholders on threat models and security invariants, and driving the correct processes to achieve a high degree of security, privacy, safety, and accessibility across the driver and services stack.
  • Organize work into an actionable roadmap by breaking work into smaller sets of tasks as part of an overall roadmap, and alerting stakeholders as to status, initiating actions to restore system/product/service for simple and complex problems as appropriate.
  • Partner on hardware/software co-design by collaborating with electrical, system, firmware, and architecture teams (and IHV/OEM partners) to determine requirements and define features for high-volume consumer products.
  • Share learnings and strengthen the team by sharing investigation findings and Rust systems/driver patterns with the team, participating in code reviews, providing constructive feedback, contributing to a solid review culture, and maintaining communication with key partners across the Microsoft ecosystem of engineers.

Benefits

  • Certain roles may be eligible for benefits and other compensation.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service