Senior C/C++ Software Development Engineer, AWS Networking
Amazon - full time
11 May 2017
Amazon is looking for Software Development Engineers to build the software that monitors one of the world’s largest and most complex networks. Tens of millions of customers rely on Amazon’s network for using our retail websites, accessing content on their Kindles and building applications and businesses on top of Amazon Web Services (AWS). Our goal is to become The Infrastructure Platform for the world – achieving this goal requires high-leverage, massively scalable software systems. Our success depends on our world-class network infrastructure, and our network depends on our Network Monitoring team.
- You are interested in being part of a high-bar team with global responsibility for the Network Monitoring software used across all of Amazon’s businesses.
- Solving problems at scale excites you.
- You do not implement specs from analysts and architects – you talk to your customers and design solutions to their problems. You automate and innovate.
- You do not push just one technology agenda – you choose the best tool for the problem at hand.
- You believe that the craft of software engineering is about writing code right the first time. For you, code reviews and automated testing are not chores – they are a core part of writing great software.
- You do not throw your code over the wall. You launch it, own it, support it and make it incrementally better for the benefit of your customers.
- You enjoy working in a flexible, fast-paced, collaborative team environment.
- Computer Science degree, or equivalent experience.
- Ability to gather customer requirements and deliver innovative solutions.
- Strong track record of launching projects of significant complexity.
- Ability to mentor other software developers to maintain architectural vision and software quality.
- Experience with software engineering best practices (code reviews, source control management, build processes, testing, release and change management).
- Very strong problem solving and coding skills.
- Understanding of data structures, algorithms and their performance.
- Proficient at designing software systems, from high-availability large-scale distributed systems to your application’s object model.
- Understanding of the building blocks of computer systems; comfortable working with bits & bytes.
- Knowledge of at least one scripting language.
- Comfortable with Linux and a good understanding of networking concepts.
- Expertise and solid experience in C/C++
- Experience of working in a DevOps team.
- Experience developing robust, highly scalable distributed systems.
- Experience using boost