Amazon strives to delight customers and make their lives easier. We have an extensive range of opportunities to learn and experiment to grow under the guidance of a pioneer engineering community. Amazon is looking for passionate Systems Development Engineers, who can build innovative and mission critical software applications and tools. You will have enormous opportunity to make a large impact on the design, architecture, and development of consumer products. You will be responsible for delivery and support of large-scale, multi-tiered, distributed software applications and tools in a fast paced agile environment.
Key job responsibilities
• You create end-to-end design of software components, understand how to scope and define requirements, identify potential shortcomings and trade-offs with different design approaches.
• You write, develop, review scripts, applications, systems, processes and mechanisms that scale with growing demands.
• You write code with high quality to solve problems using efficient data structures and algorithms that include high test coverage.
• You identify opportunities for automation of repetitive tasks such as infrastructure management, system configurations, monitoring, load and chaos testings, etc. and build working solutions that are easy to manage.
• You act as an engineering excellence champion by identifying and implementing industry’s best practices to improve service availability, reliability and efficiency.
• Handle customer impacting events, take part in Incident postmortems, Root Cause Analysis (Troubleshooting) to identify underlying issues and fix them.
• Perform upgrades, decommissions and maintenance for production systems and infrastructure (UNIX/Linux systems, AWS Services, Networking failures, etc.).
• Enrolled in Bachelor’s or Master’s Degree in Computer Science/Engineering, or related field at time of application.
• Experience in Programming or Scripting experience with at least one modern language such as C++, C#, Java, Python, Golang, PowerShell, Ruby etc.
• Experience contributing to the architecture and design (architecture, object-oriented design, Operating systems, Algorithm, design, data structures, and complexity analysis)
• Knowledge in developing service oriented architectures and understanding of design for scalability, performance and reliability
• Ability to triage issues, react well to changes, work with teams and ability to multi-task on multiple products and projects.
• Excellent communication, collaboration, reporting, analytical and problem solving skills.
• Knowledge/Experience with distributed, multi-tiered systems, algorithms, and relational databases.
• Knowledge/Experience in optimization mathematics such as linear and nonlinear programming.
• Ability to effectively articulate technical challenges and solutions.
• Adept at handling ambiguous or undefined problems as well as ability to think abstractly.