Software Engineer II
Job Description
Join Microsoft’s Azure Core NIC team to build and improve SmartNIC software and networking offload capabilities for Azure networking services.
Responsibilities
- Design and implement software for Azure SmartNIC platforms and networking offload technologies
- Increase performance, scalability, and reliability for networking services supporting Azure compute and storage workloads
- Collaborate across hardware, firmware, and software boundaries to deliver highly available cloud networking solutions
- Use telemetry and production data to identify reliability issues and drive live-site improvements across Azure networking services
- Partner with silicon, firmware, platform, and service teams to deliver next-generation networking capabilities
Requirements
- Bachelor’s Degree in Computer Science or a related technical field AND 2+ years technical engineering experience with coding in languages including (but not limited to) C++, C, Rust, or Python
- OR equivalent experience
- Must be able to meet Microsoft, customer, and/or government security screening requirements, including the Microsoft Cloud Background Check (pass upon hire/transfer and every two years thereafter)
Technologies
- C++, C, Rust, Python
- TCP/IP, RDMA, Ethernet
- DPDK
- SR-IOV
- SmartNIC architectures
- Linux
Preferred Qualifications
- Master’s Degree in Computer Science or a related technical field AND 3+ years technical engineering experience coding in C++, C, Rust, or Python
- OR Bachelor’s Degree in Computer Science or a related technical field AND 5+ years technical engineering experience coding in C++, C, Rust, or Python
- OR equivalent experience
- Experience with software design, debugging, performance analysis, and problem-solving in distributed systems or cloud-scale services
- Experience developing and maintaining automated tests, monitoring, and telemetry for production systems
- Experience participating in code reviews, design reviews, and applying engineering best practices
- Networking experience with TCP/IP, RDMA, Ethernet, DPDK, SR-IOV, or SmartNIC architectures
- Experience developing software for Linux-based systems
- Experience with cloud infrastructure, distributed systems, or hyperscale platforms
- Experience troubleshooting live-site incidents and improving service reliability
- Experience using telemetry, diagnostics, and data-driven operational improvements
- Experience contributing to large-scale projects across multiple engineering teams
- Familiarity with hardware-software interactions, including device drivers, firmware, or performance-sensitive systems
- Ability to independently drive well-defined engineering problems from design through implementation and production deployment
Location and Compensation
- Location: United States (onsite)
- Salary: USD 102,100 - 219,200 per year