WHAT? A wave of innovation is bringing sweeping changes to networking technology. Virtualization, unimaginable scale, hardware commoditization, and automation are revolutionizing network software.
WHERE? At Amazon we push the boundaries in robustness, fault-tolerance and smart adaptive algorithms that can react intelligently to real-world events. Software engineers on our team contribute to every phase of the development process and deploy scalable software systems worldwide.
WHY THERE? Amazon Web Services (AWS) runs one of the biggest networks in the world. We leverage big data technologies and deep network analytics software to drive network automation, performance, and reliability.
WHY CARE? Make history as a software developer at AWS Networking. We develop software at every level of the stack from front-end user interfaces to low-level embedded software and everything in between. We are a highly motivated, co-operative, and fun loving team of software developers who thrive on solving challenging problems and building large-scale distributed software systems.
A solid background in computer science: a bachelor’s degree or higher in Computer Science (or equivalent) is required.
5+ years of experience in building production software applications with focus on efficient back-end components is required.
Excellent software development skills, preferably in Java, C/C++, Ruby, Python and/or Perl in Linux environment.
Knowledge of Network Security protocols including AAA, Certificate based encryption, and Access Control.
Familiarity with a broad array of networking devices and their operating systems and security features.
Familiarity with distributed systems, asynchronous messaging, and network protocols.
A solid grounding in Computer Science fundamentals, data structures, algorithms and deftness at object-oriented design and systems architecture.
Excellent problem solving and troubleshooting skills.
Scripting skills (e.g., PERL, shell scripting)
Knowledge of network and web related protocols (e.g., TCP/IP, UDP, IPSEC, HTTP, HTTPS, routing protocols)
Knowledge of major protocols, topology design, network hardware and device configuration.
A solid understanding of performance and efficiency issues.
Experience with distributed computing and enterprise-wide systems.
Experience taking a leading role in building complex software systems that have been successfully delivered to customers.
Experience mentoring junior software engineers to improve their skills, and make them more effective, product software engineers.
Experience influencing software engineers best practices within your team.
Ability to take a project from scoping requirements through actual launch of the project.
A strong customer orientation.
Strong experience and detailed technical knowledge system and network security, authentication and security protocols, applied cryptography, and application security
Experience with service-oriented architecture and web services security desired
Development experience in C, C++, Python and/or Java
Excellent written and verbal communication skills
Excellent leadership skills and teamwork skills
Results oriented, high energy, self-motivated

