Senior Software Engineer

Last updated 8 days ago
Location:Redmond, Washington
Job Type:Full Time

Come help build a platform for creating secure Internet of Things (IoT) devices! We are looking for Senior Level Engineers in operating systems kernel development. Thousands of businesses are undergoing a digital transformation to connect MCU-based devices to the Internet.  An important aspect of this is security. Our team is building an end-to-end secure platform for IoT devices. You would help deliver a product targeted at a multi-billion unit market and improve the security of everyday devices. We are looking for engineers in a broad range of areas, including kernel development, peripherals and device driver frameworks, virtualization and hypervisors, power management, memory management and filesystems. As a member the Azure Sphere Operating System and Platform team, you will help lead efforts to build and maintain a Linux-based OS stack for small-memory IoT devices. The team is responsible for extending and maintaining the Azure Sphere OS to deliver secure system services with excellent performance across a range of metrics, including power, performance, and memory usage. As a senior level engineer, you will help with efforts to define, build and extend the base platform used by Microsoft and its partners to produce cutting-edge real-world IoT products. Come join us!  Team members have unparalleled opportunity to rapidly learn new skill sets, build pioneering solutions, and get exposure to a wide array of technologies.  To learn more about this exciting project, please visit www.microsoft.com/en-us/azure-sphere.

Responsibilities

As a Senior Software Engineer, you will:

  • Design and implement core system services, OS components, and security features to enable a secure foundation upon which to build Azure Sphere, enable new devices and light-up new functionality.
  • Implement new feature work, debug issues, and implement quality fixes.
  • Make improvements in product quality utilizing automated functional, performance and stress testing.
  • Ensure the OS is up to date with latest Linux changes, while maintaining a small footprint on devices.
  • You will also help upstream fixes and other enhancements we make to the Linux kernel for IoT devices.
  • You will lead the design and implementation of kernel-level strategies for IoT devices.
  • Collaborate with internal partner teams to help deliver new functionality that spans multiple layers in the device software stack, and participate in product-wide initiatives.
  • Collaborate with external partner teams, including managing technical interactions with the wider Linux community.
  • Mentor junior developers and participate in design and code reviews.
  • Help the team follow best practices for software development and testing, including learning about and applying modern security principles to the core product.

Qualifications

Required:

  • 5 or more years of software design and development experience.
  • A bachelor's degree preferably in computer science, computer engineering, or related field OR 4 years of equivalent work experience.
  • 3 or more years of experience design and developing features in any of the following areas: operating system kernels, firmware software, virtualization/hypervisors, peripheral support, device driver frameworks, power management, operating system, file systems, memory management.
  • 3 or more years of experience developing software using C or C++.

Preferred:

  • 7 or more years of software design and development experience.
  • 5 or more years of experience design and developing features in any of the following areas: operating system kernels, firmware software, virtualization and hypervisors, peripherals and device driver frameworks, power management, memory management and file systems.
  • Prior Linux or UNIX development experience.
  • Experience developing for one or more ARM based System on a Chip (SoC) platforms or other embedded platforms.

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 Secure Screen: This position will be required to pass the Microsoft Cloud background check and credit history analysis upon hire/transfer and every year thereafter.

Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, color, family or medical care leave, gender identity or expression, genetic information, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran status, race, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable laws, regulations and ordinances. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you need assistance and/or a reasonable accommodation due to a disability during the application or the recruiting process, please send a request via the Accommodation request form.

Benefits/perks listed below may vary depending on the nature of your employment with Microsoft and the country where you work.