Description de l'offre
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 Availability teams. The Workflow team builds critical software that allows to orchestrate fully or partially automated workflows to deploy and maintain the Amazon Network across the globe, thus increasing automation, improving traceability and ensuring repeatability of processes.
You are interested in being part of a high-bar team with global responsibility for the Network Availability software used across all of Amazon's businesses.
· Solving problems at scale excites you.
· You don't 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're a core part of writing great software.
· You don't 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 with Linux.