The Network Control & Management (NCM) organisation is chartered to provide world-class network management infrastructure for AWS and comprises of many teams. Part of this group is the Continuous Network Deployment (CND) team, whose mission is to provide tools and services to safely deploy software and configuration updates to all networking devices across the entire Amazon network.
We are looking for software engineers to build a framework to manage thousands of network devices; providing significantly improved control, visibility and predictability for Amazon’s global network. Our goal is to eliminate human intervention and errors from network engineering, network build and device management by building tools and systems to successfully manage thousands of heterogeneous devices in dozens of data centers across the world.
We are a highly motivated team that thrives on solving challenging problems with innovative solutions. As we design and scale well beyond traditional networks, our goal is to maintain the network in a ‘known state’ thus enabling future automation with all of the tasks we perform on the network
Ideal candidates will have the ability to quickly adapt to new development environments and changing business requirements, learn new systems, create reliable and maintainable code, and find creative and scalable solutions to challenging problems. We take quality very seriously, and any candidate must be able to demonstrate a track record of delivering complex work to the highest standards, incorporating industry best practices in all aspects of their work.
- Bachelor’s degree in computer science, mathematics, or a related field
- Sound knowledge of UX best practices coupled with ability to incorporate into solutions
- Experience working with object-oriented languages (Java, C#, C++ etc.)
- A solid grounding in Computer Science fundamentals, data structures, algorithms and deftness at object-oriented design and systems architecture.
- Exceptional problem solving and troubleshooting skills.
- Excellent communication skills, both written and verbal
- Experience working with Agile engineering practices (continuous integration, TDD, etc.)
- Experience in delivering projects through the full development lifecycle, from inception through to post release support.
- Appetite and enthusiasm to work with new technologies
- Keen interest in staying current with the latest trends and techniques in the industry
- Familiarity with distributed systems and networking an advantage
- Knowledge or experience working with Python or Perl desirable