8 days ago
Base Salary
$120k - $261k/yr
Responsibilities
- Design, implement, and ship kernel-mode and user-mode Windows drivers in Rust using windows-drivers-rs, WDF, KMDF, UMDF, and native Windows APIs.
- Lead driver architecture and design decisions, including design specifications, memory-safety boundaries, and FFI/interoperability with C/C++ drivers.
- Use AI-assisted development practices across the software development lifecycle and take responsibility for AI-generated designs, code, and assets.
- Create test plans, add and improve automated tests, aggregate test suites, and use metrics to improve software quality and stability.
- Perform kernel debugging, crash and memory-dump analysis, and ETW/tracing across driver, firmware, and hardware boundaries.
- Apply security, privacy, safety, accessibility, threat-modeling, and security-invariant practices across the driver and services stack.
- Organize work into roadmaps, communicate status, and initiate actions to restore systems, products, or services.
- Collaborate with electrical, system, firmware, architecture, and IHV/OEM teams on hardware/software co-design and consumer-device requirements.
- Share Rust systems and driver patterns, participate in code reviews, and communicate findings with Microsoft engineering partners.
Requirements
- Bachelor's degree in Computer Science or a related technical field and 4+ years of technical engineering experience with coding, or equivalent experience.
- Preferred qualifications include a master's degree and 6+ years of experience, or a bachelor's degree and 8+ years of experience, or equivalent experience.
- Deep, demonstrable Rust expertise, including unsafe Rust, FFI/interoperability, ownership, lifetimes, and safe abstractions over low-level or operating-system APIs.
- Experience with windows-drivers-rs, Windows Driver Kit, and WDM, WDF, KMDF, and UMDF driver models.
- Experience designing, implementing, debugging, and testing Windows operating-system drivers or Windows system software in kernel-mode or user-mode.
- Experience with kernel debugging, memory-dump analysis, WinDbg, ETW/tracing, and hardware/software debugging.
- Working knowledge of memory management, scheduling, interrupts, threading, and ACPI.
- Experience using AI-assisted development tools and practices across the software development lifecycle.
- Ability to make safe, cross-cutting changes in large and unfamiliar codebases while preserving correctness and performance.
- Experience reviewing hardware schematics, working with hardware devices, and developing software in a device-development environment.
- Contributions to Rust open-source software or other systems/driver open-source projects.
- Ability to translate requirements into solutions and collaborate with internal and external IHV/OEM partners.
Benefits
- The typical U.S. base pay range is USD $119,800-$234,700 per year, with a separate range for specified San Francisco Bay Area and New York City locations.
- Certain roles may be eligible for benefits and other compensation.
- The position is open for a minimum of 5 days, with applications accepted on an ongoing basis until filled.
About Microsoft
Microsoft develops operating systems, productivity software, cloud services, developer tools, and consumer devices for individuals, enterprises, and governments. Its main products include Windows, Microsoft 365, Azure, Visual Studio/GitHub, Xbox, and LinkedIn; revenue comes from software subscriptions and licenses, cloud consumption, hardware sales, and advertising. Founded in 1975 and headquartered in Redmond, Washington, Microsoft is a public company traded on Nasdaq.
