Track This Job
Add this job to your tracking list to:
- Monitor application status and updates
- Change status (Applied, Interview, Offer, etc.)
- Add personal notes and comments
- Set reminders for follow-ups
- Track your entire application journey
Save This Job
Add this job to your saved collection to:
- Access easily from your saved jobs dashboard
- Review job details later without searching again
- Compare with other saved opportunities
- Keep a collection of interesting positions
- Receive notifications about saved jobs before they expire
AI-Powered Job Summary
Get a concise overview of key job requirements, responsibilities, and qualifications in seconds.
Pro Tip: Use this feature to quickly decide if a job matches your skills before reading the full description.
We (Azure Storage Client team) are responsible for delivering the Storage Virtualization platform to Azure VMs. Our stack handles trillions of IOs every day from Azure VMs and runs in 100s of data centers and 1000+ Clusters. The team is enabling storage offload using custom built hardware accelerators – utilizing the Field Programmable Gate Arrays (FPGAs), Remote Direct Memory Access (RDMA) for transport and Non Volatile Memory Express (NVMe) as the VM’s storage interface.
As a Software Engineer you are responsible for designing, implementing and deploying software to enable hardware-based storage offload technologies. If you have the interest and the passion to work on new hardware and software solutions to enable performance and scalability at the highest levels, then Azure may have a place for you.
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
- Design and develop system software that manages storage services in Azure.
- Ensure that services and components are designed with appropriate telemetry and health signals to enable remote monitoring and debugging.
- Rapidly deploy cloud-scale solutions and monitor health through telemetry.
- Drive for quality in everything you do and continuously improve the quality of the systems you work on.
- Acts as a Designated Responsible Individual (DRI) and guides other engineers by developing and following the playbook, working on call to monitor system/product/service for degradation, downtime, or interruptions, alerting stakeholders about status and initiates actions to restore system/product/service for simple and complex problems when appropriate.
- Proactively seeks new knowledge and adapts to new trends, technical solutions, and patterns that will improve the availability, reliability, efficiency, observability, and performance of products while also driving consistency in monitoring and operations at scale.
- Embody our culture and values.
Required Qualifications:
- Bachelor's Degree in Computer Science or related technical field AND technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Rust, or Python
- OR equivalent experience
- Experience in operating system and hardware concepts (direct memory access, interrupts, memory management, drivers etc.).
- Proficient in building complex applications utilizing advanced concepts such as multi-threading, inter-process communication (IPC), and synchronization mechanisms.
- Debugging and troubleshooting capabilities, with a proven ability to collaborate across teams to identify and resolve system-level issues.
- 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.
- Master's Degree in Computer Science or related technical field AND technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
- OR equivalent experience
- Understanding of physical storage controller technologies such as Non-Volatile Memory (NVMe) or Small Computer System Interface (SCSI).
- Working knowledge of Windows and Linux operating system concepts, including user/kernel mode, device management, virtualization, hardware drivers, interrupts, memory mapping and file systems.
- Familiarity with networking fundamentals, covering protocols, interfaces, and system-level integration.
Microsoft is an equal opportunity employer. Consistent with applicable law, 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 and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations.
Key Skills
Ranked by relevanceReady to apply?
Join Microsoft and take your career to the next level!
Application takes less than 5 minutes