Are you passionate about technology and solving hard problems? Do you want to grow your skills as you help us grow and scale the world's largest cloud computing service? Do you want to make history and have fun doing it? If so, Amazon Web Services Elastic Cloud Computing (EC2) is looking for people just like you! EC2 is at the core of AWS services and we are growing every day to meet the demands of our business as we continue to scale.
EC2 Recovery Systems is seeking an experienced, hands on engineer with a passion for designing and developing highly scalable, distributed software. Our systems monitor the entire EC2 fleet and automatically take actions that directly improve customer experience by maximizing the availability and reliability of compute resources.The team’s problem space is diverse and interesting and you will have ample opportunity to work with a variety of technologies in support of maximizing the health of all compute workloads across the EC2 infrastructure.
We are looking for top engineers to join a talented, innovative team to help us manage how we maintain and grow one of the largest server fleets in the world. As a member of the EC2 team, your responsibilities would include:
- Designing and developing cutting edge highly reliable and scalable distributed systems.
- Delivering quality features on-time and on-budget and execution against project plans and delivery commitments.
- Working with team members to manage the day-to-day development activities, participate in designs, design review, code review, and implementation.
- Engaging and working with customers and dependencies to ensure the quality delivery.
- Mentoring other engineers
- Maintaining current technical knowledge to support rapidly changing technology, and on a look out for new technologies and work with the team in bringing in new technologies.
- Candidate is able to work with a minimum of technical supervision and supplemental engineering support, while responding efficiently to multiple program priorities.
Inclusive Team Culture
Here at AWS, we embrace our differences. We are committed to furthering our culture of inclusion. We have ten employee- led affinity groups, reaching 40,000 employees in over 190 chapters globally. We have innovative benefit offerings, and host annual and ongoing learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences. Amazon’s culture of inclusion is reinforced within our 14 Leadership Principles, which remind team members to seek diverse perspectives, learn and be curious, and earn trust.
Our team puts a high value on work-life balance. It isn’t about how many hours you spend at home or at work; it’s about the flow you establish that brings energy to both parts of your life. We believe striking the right balance between your personal and professional life is critical to life-long happiness and fulfillment. We offer flexibility in working hours and encourage you to find your own balance between your work and personal lives.
This position involves on-call responsibilities, typically for one week every two months. We don’t like getting paged in the middle of the night or on the weekend, so we work to ensure that our systems are fault tolerant. When we do get paged, we work together to resolve the root cause so that we don’t get paged for the same issue twice.
Mentorship & Career Growth
Our team is dedicated to supporting new members. We have a broad mix of experience levels and tenures, and we’re building an environment that celebrates knowledge sharing and mentorship. Our senior members enjoy one-on-one mentoring and thorough, but kind, code reviews. We care about your career growth and strive to assign projects based on what will help each team member develop into a better-rounded engineer and enable them to take on more complex tasks in the future.
Amazon is committed to a diverse and inclusive workplace. Amazon is an equal opportunity employer and does not discriminate on the basis of race, national origin, gender, gender identity, sexual orientation, protected veteran status, disability, age, or other legally protected status. For individuals with disabilities who would like to request an accommodation, visit US Disability Accommodations.
· 4+ years of professional software development experience
· 3+ years of programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
· 2+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems
· Bachelor's Degree in Computer Science or equivalent.
· Understanding of Multi-threaded programming and distributed systems.
· Strong knowledge of data structures, algorithms, operating systems, and/or distributed systems.
· Experience with Linux.
· Innovative skills with excellent problem solving abilities.
· Able to work in a diverse team
· Experience building complex software systems that have been successfully delivered to customers
· Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
· Experience with distributed computing and enterprise-wide systems
· Experience in communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy
· Experience influencing software engineering best practices within your team
· Ability to take a project from scoping requirements through actual launch of the project