||Seattle, WA, United States
The Network Remediation team is looking to hire a software development engineer to join the sub-team that builds critical software for our network devices that tests and validates new capacity before bringing it into service. This team offers a unique opportunity to work at the heart of AWS Networking and become an expert in automating our massive network. The engineers within our team are instrumental in allowing us to drive the efficiency of our next-generation networks and to discover innovative ways to automate and scale our network as we expand globally.
The team today owns a platform which helps operators and engineers run a gamut of tests against network links to ensure that capacity is brought online safely and efficiently. Software Development Engineers in this team will work hand-in-hand with Network Engineering teams and Network Operations to automate and invent new ways of operating Amazon's Next-Generation Network. You will work with a group of technologists across the company, leveraging AWS technologies such as DynamoDB. Our platform requires high-availability, high scalability and operational excellence, all while enabling the network to scale effortlessly without human involvement in network operational events.
Our team faces technical challenges such as: how do we test and saturate hundreds to thousands of fiber links at a time to determine if they're failed while ensuring no degradation or loss of service to our customers. Your work on this team will have a direct impact on how quickly new AWS Networking capacity is made available. Ultimately your contributions help us answer: What would it take to achieve 100% uptime for AWS Networking
This role is for a Software Development Engineer; your role will be to technically lead the organization and identify areas that the group should be focusing on. You will be responsible of technically reviewing software design documentation and providing suggestions to more junior engineers how to proceed. If this excites you, this job is for you!
Bachelors Degree in Computer Science or related field or Equivalent experience to a Bachelor's degree based on 3 years of work experience for every 1 year of education
2+ years professional experience in software development
Proficiency in, at least, one modern programming language such as C, C++, Java, or Perl
Experience as a high-availability service owner
Experience taking a leading role in building complex software systems that have been successfully deployed in production
Experience influencing software engineers best practices within your team
Experience with networking routing protocols such as OSPF and BGP is considered a plus
Strong Linux experience from provisioning to performance tuning, and a solid grasp of operating system fundamentals