Software Engineering

MicrosoftApplyPublished 1 hours agoFirst seen 1 hours ago
Apply
Overview

Job Title: Software Engineer

Storage is experiencing incredible innovations right now. The innovations of storage technologies and cloud connected devices are having a profound effect on every area of Microsoft’s business. Storage devices are getting larger in capacity, faster in performance and intelligence at an astounding rate; our customers are expecting seamless experiences across devices and across local and cloud boundaries. Come and join the team that builds the platform and end user experiences for storage across Windows devices and the Cloud.

We deliver storage solution for Windows, Azure, IoT and new devices that Microsoft and our industry partners ship in the future. This area involves tough challenges and provides tremendous upside opportunities including leveraging the reduced size, portability and increased functionality of new storage devices, improved software platform infrastructure, emerging protocol standards, seamless integration of local and cloud storage and development of solutions to new content usage paradigms.

In Core OS (Operating System), we are responsible for the Operating Systems that power Azure, Microsoft's Linux Operating System (OS), the platforms for Windows Client and Xbox, and our Windows Server ecosystem – through all of these, we support every one of our cloud businesses and billions of customers around the world. In this era of ubiquitous computing, systems software excellence has never been more important for Microsoft. High quality, high-efficiency operating systems and platform components underpin everything we do as a company, from making our systems more reliable for our customers, to increasing our competitiveness by reducing Cost of Goods Sold (COGS), to delivering new features and capabilities to delight customers – that’s all us!

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.


Responsibilities

You will be responsible for developing and maintaining storage and file system virtualization components across client, server, and cloud systems, on both Windows operating systems. You will conceive, design, and implement storage virtualization features in tandem with partners inside and outside of Microsoft to address the business needs of our customers. 

Other responsibilities will include:

  • Ensuring high quality and performance of core storage technologies.
  • Performance analysis of designs and implementations, taking into consideration the rapid advancements in storage technologies.
  • Ownership of the software engineering process from design, development, code review, validation, delivery, maintenance and on-call duties.
  • Working as a team member, authoring documentation, tests and tools that improve the team’s ability to develop and maintain software, participating in design discussions and code review outside of your immediate scope, and assisting less experienced team members in their personal growth.
  • Building an understanding of the wider storage ecosystem and bringing that understanding to the table as new features are considered.
  • Foster an inclusive and collaborative team culture.
Qualifications

Required/Minimum Qualifications:

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

Other Requirements: 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 Cloud Background Check: This position will be required to pass the Microsoft Cloud background check upon hire/transfer and every two years thereafter. 

Preferred Qualifications:

  • Bachelor’s degree in computer science or related technical field AND 2+ 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 6+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python.
    • OR equivalent experience.
  • Experience in analyzing storage performance and functionality in storage subsystems.
  • Familiarity with current and emerging storage technologies.
  • Familiarity with storage virtualization concepts like Redundant Array of Independent Disks (RAID), caching, tiering and thin provisioning.
  • Experience in operating systems (Linux or Windows) is a plus, as is general storage stack development experience.
  • Experience with filesystems, Databases, KV (Key Value) stores e.g. Rocks DB (Database), Atomicity, Consistency, Isolation and Durability (ACID) transactions is a big plus.
  • 2+ years of experience with kernel and device driver development in Linux or Windows.
  • Solid communication and collaboration skills.
  • Solid understanding of systems software.
  • Solid coding, debugging, testing, and problem-solving skills.
  • A track record of solid results across multiple ship cycles.
  • Experience in Block Storage and Filesystem.
  • Thorough understanding of modern computer architectures found in desktop PCs and servers, including computer networking. 
  • 2+ years of industry experience with C/C++.
  • 2+ years of experience with systems programming in Linux or Windows.

#W+DJOBS

#Storage

#FileSystem

#KernelProgramming

This position will be open for a minimum of 5 days, with applications accepted on an ongoing basis until the position is filled.



Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, citizenship, color, family or medical care leave, gender identity or expression, genetic information, immigration status, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran or military status, race, ethnicity, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable local laws, regulations and ordinances. If you need assistance with religious accommodations and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations.