Expoint - all jobs in one place

Finding the best job has never been easier

Limitless High-tech career opportunities - Expoint

Microsoft Principal Software Development Engineer 
United States, Washington 
792873459

17.09.2024

with experience working across silicon, firmware and OS to actively contribute to the software development for Windows and silicon partners and working with Independent Hardware Vendors (IHV), Original Equipment Manufacturer (OEM) and Original Design Manufacturer (ODM) partners to ensure quality of Windows experience on first generation silicon platforms. This position will be responsible for partnering closely with silicon architects, IHVs, Windows OS platform teams and Microsoft 365 app teams to deliver an end-to-end optimized device experience.

Come join us as we scale up our organization to meet the challenges of creating new and innovative experiences and delivering devices that people love.

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.

In alignment with our Microsoft values, we are committed to cultivating an inclusive work environment for all employees to positively impact our culture every day.

Required Qualifications

  • 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, Rust, C, C++, C#, Java, JavaScript, or Python
    • OR equivalent experience.
  • 4+ years coding inC/C++developingfirmware and/or device drivers.
  • 4 + years' experience working with and debugging hardware/firmware interactions.
  • 2+ years' experience mentoring engineering team members.

Preferred Qualifications

  • Bachelor's Degree in Computer Science or related technical field AND 12+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
    • OR Master's Degree in Computer Science or related technical field AND 10+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
    • OR equivalent experience.
  • 8+ years of experience in software and/or hardware product development.
  • 6+ years' experience working with and debugging hardware/firmware interactions.
  • 6+ years coding inC/C++developingfirmware and/or device drivers.
  • Rustdesign and coding skills.
  • Familiarity with the System on Chip (SOC) Hardware architecture and its impact on device and software development cycles.
  • Experience with Windows driver development, debugging strategies and engineering principles, thriving on complex and unfamiliar code bases.
  • Experience with Windows driver and Unified Extensible Firmware Interfaces (UEFI) and FW system optimization for Systems on a Chip (SoCs) is a plus
  • A deep understanding of software lifecycle in a device development environment and the interplay between software and hardware development and schedules.
  • Proven track record of shipping high volume consumer devices.

Software Engineering IC6 - The typical base pay range for this role across the U.S. is USD $161,600 - $286,200 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 $209,600 - $314,400 per year.

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

Microsoft will accept applications for the role until September 25th, 2024.

Responsibilities
  • Creates proposals for architecture and design documents and leads testing of hypotheses and proposed solutions.
  • Leads design discussions with the team and shares findings/learnings from investigations, holding ownership for design decisions
  • Leads efforts to optimize, debug, refactor, and reuse code to improve performance and maintainability, effectiveness, and return on investment (ROI).
  • Leads by example and mentors others to produce extensible and maintainable code used across products.
  • Considers diagnosability, reliability, and maintainability when reviewing code, and understands when code is ready to be shared or delivered
  • Runs code in simulated or other non-production environments to confirm functionality and error-free runtime across products.
  • Leads efforts to continually integrate automation features when planning for testing.
  • Enables cross team communications and resolves conflicts between teams.
  • Leads efforts to collect, classify, and analyze complex data and analyses on a range of metrics (e.g., health of the system, where bugs might be occurring).
  • Embody our