Principal Software Engineer
Microsoft
Principal Software Engineer
Multiple Locations, United States
Save
Overview
Azure is in the race to win it. Imagine being at the forefront of transformative cloud native technologies. Azure Firewall service is part of the Azure networking team responsible for developing network security services to enable enterprises secure Cloud and Artificial Intelligence (AI) workloads from internal and external threats. At the core of these services is a solid Software Defined Networking (SDN) and Network Functions Virtualization (NFV) infrastructure that we continuously innovate to improve agility, reliability and cost effectiveness of our services.
We are looking for a Principal Software Engineer with deep security expertise to design, build and operate this service at hyper-scale. Our team is looking for software engineers who are searching for a challenge to design, implement, and operate large-scale distributed systems in an agile environment. This role offers you a unique opportunity to accelerate your career growth and develop a deep understanding of cloud technology.
The developer will participate in architecture, design of various components, and ensure a timely execution of the features with high quality. The developer will own the component end-to-end, including testing, managing cross team dependencies as well as monitoring and alerting for the deployed component. The position will involve extensive internal and external collaborations with other Azure/Microsoft teams as well as networking vendors.
Our culture promotes diversity and inclusion and is clearly reflected in all the things we do. Diversity is more than a commitment for us - it is the foundation of what we do. This is a high visibility position in an area of large and expanding investment for Azure and offers a terrific opportunity to innovate, influence, transform, and grow. We encourage you to apply to learn more!
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. #azurecore
Qualifications
Required Qualifications:
- Bachelor'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.
- 6+ years of experience in one or more of the following areas:
- Security: Intrusion Detection Prevention System (IDPS) – Suricata, Snort, Deep Packet Inspection (DPI) - Application ID (AppID), Data Leak Prevention (DLP) , Extended Berkeley Packet Filter (eBPF), Internet Protocol (IP) - tables
- L7 proxy: Envoy, Nginx, High Availability (HA) proxy
- Network protocols: Transmission Control Protocol/Internet Protocol (TCP/IP), User Datagram Protocol (UDP), Domain Name System (DNS), Hypertext Transfer Protocol/Hypertext Transfer Protocol Secure (HTTP/HTTPS), Transport Layer Security (TLS), Secure Socket Layer (SSL) termination, etc.
- 1+ years experience in C# or Java, C++, Golang, Google Remote Procedure Calls (gRPC), Linux/Unix systems, including:
- Container platforms and technologies: Kubernetes etc.
- Virtualization: hypervisors, Virtual Machine (VM) switching, performance optimization, hardware offloads
- Distributed systems
- Designing and running large-scale fault-tolerant infrastructure services
- Representational State Transfer (RESTful) Services
Other Qualifications:
- 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 10+ 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 8+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
- OR equivalent experience.
- Proficient understanding of AI, Large language models (LLMs), and Model Context Protocol (MCP) security principles.
- 1+ years experience with Kubernetes and wider Cloud native / Container ecosystem.
- Contribution to open-source software projects is a plus.
Software Engineering IC5 - The typical base pay range for this role across the U.S. is USD $139,900 - $274,800 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 $188,000 - $304,200 per year.
Certain roles may be eligible for benefits and other compensation. Find additional benefits and pay information here: https://careers.microsoft.com/us/en/us-corporate-pay
Microsoft will accept applications for the role until October 28, 2025.
#azurecorejobs
Responsibilities
- Works with appropriate stakeholders to determine user requirements for a set of features.
- Contributes to the identification of dependencies, and the development of design documents for a product area with little oversight.
- Creates and implements code for a product, service, or feature, reusing code as applicable.
- Contributes efforts to break down larger work items into smaller work items and provides estimation.
- Acts as a Designated Responsible Individual (DRI) working on-call to monitor system/product feature/service for degradation, downtime, or interruptions and gain approval to restore system/product/service for simple problems.
- Remains current in skills by investing time and effort into staying abreast of current developments that will improve the availability, reliability, efficiency, observability, and performance of products while also driving consistency in monitoring and operations at scale.