We're looking for software development engineers to join the Issue Management Platforms, Services and Application team. Our group develops innovative solutions that makes our customers most productive at Application Life-cycle Management.
AWS Incident Management needs a technically deep, experienced Software Development Engineer to join a team that owns Issue Management for all of Amazon/AWS. This space delivers the in-house software platforms, web services and web apps that are used by more than 100,000 unique internal users every day. These are the core software technologies that Amazon and AWS use to collaborate on, monitor, engage and manage all of the software events, agile deliveries, projects, programs, and business processes across the entire company.
You will have the opportunity to deliver new web apps and web services that must tackle a wide range of issue management, event management, engagement, business process workflow, project management and agile processes in the company. These webapps, platforms, and services are used by every Amazon employee, often many times a day, from fulfillment workers on up to senior leadership, plus hundreds of other automated clients through our web services.
As an experienced Software Engineer in this role you will:
· Get the opportunity to both build new capabilities in existing solutions, and build new software and services from scratch, keeping technical debt low, quality high and be operationally excellent.
· Have ownership of capabilities/services from cradle-to-grave (idea conception, requirements gathering, design, development, validation, deployment, customer reviews, and operational support)
· Work at as many levels as necessary: the single-page webapp, the REST service layer, the backend platform architecture, and the AWS services we leverage (ElasticSearch, DynamoDB, Simple Workflow, SNS/SQS, S3, EC2)
· Automate the operation of systems to scale horizontally and operate at high availability.
· Iterate development of our unique, multi-master, multi-region replicated distributed system platform service that is used by multiple other customers. And the workflow engine that provides event/response automation.
· Mentor and grow junior engineers in the team
· Bachelor’s Degree in Computer Science or related field
· Equivalent experience to a Bachelor's degree based on 3 years of work experience for every 1 year of education
· 6+ years professional experience in software development
· Computer Science fundamentals in object-oriented design, data structures, algorithm design, problem solving, and complexity analysis
· Proficiency in, at least, one modern programming language such as C, C++, C#, Java, or Perl
· Hands-on experience building and operating webapps and webservices that have very high availability and scaling requirements
· Experience defining system architectures and exploring technical feasibility tradeoffs
· Master's Degree or Ph.D in Computer Science or related field.
· 8+ years of professional experience in software development
· Experience in communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy
· Experience mentoring other software engineers to improve their skills, and make them more effective, product software engineers
· Experience influencing software engineers best practices within your team
· Substantial background in support for large scale application implementations.
· Experience in big data processing technologies and streaming pipelines, such as Apache Kafka, Apache Spark, Amazon Kinesis and AWS Glue.