We’re a new team within the Relational Database Service, one of the fastest growing businesses within Amazon Web Services, and we’re looking for seasoned, talented software engineers in Seattle, the Bay Area, and Boston. Our service provides managed, reliable, scalable and highly available relational databases, on demand. We minimize the effort required to maintain SQL databases by automating administrative tasks like backup / restore, scaling CPU / RAM / storage and replication / failover for high availability, allowing our customers to spend their valuable time focused on building their businesses. For more information about RDS, please visit http://aws.amazon.com/rds
This position is on an exciting new team building a highly available, very scalable, high performance database offering. We have the need for low-level systems C programmers, mid-tier high performance C++ developers, and distributed systems Java wizards. About You
You’ve built a lot of software – shipped products, created platforms, tools and modules, perhaps worked with every framework under the sun, perhaps made everything you have touched fast as lightning. You may have built big, distributed, API-driven systems with thousands of users, or systems for billions of transactions. You’re as excited as we are about learning every day, and solving really hard engineering problems that no one else is.
Passionate about software quality, repeatability, testability and maintainability, you are known to your co-workers as the go-to person for answers to questions that begin with the phrase “what’s the best way to…” – even though your answers tend to start with “help me understand what you’re trying to accomplish by…”. When you need clarity, you go to the product owner – or even a user – and talk to them until you get it. With stakeholders and other team members you are diplomatic, persuasive, and usually right. You understand the challenges associated with operating a large-scale system in production, and your designs and implementations reflect that understanding.
When you’re wrong, you’re happy to learn something. You build software quickly, but properly (so that you don’t have to go back to it later). You know what “unit tests” are and don’t implement software without them. Shipping on time with high quality makes your heart feel warm.
Who are you? You’re the new Software Development Engineer joining us at RDS. We work hard, have fun and make history – want to come play with us? What You’ll Do
- Deliver project items on-time / in-spec, communicating clearly with leads, manager and stakeholders
- Contribute to software and database architecture / design
- Contribute to and lead architecture / design conversations and code reviews (yours and other team members’)
- Work with managers and team members to estimate effort and clarify / negotiate / document scope and design
- Contribute to design, architecture, process and development standards
- Effectively mentor more junior team members, helping to maintain appropriate unit test coverage, code documentation, software structure and supportability
- Distil and communicate technical concepts to more junior developers and stakeholders
- Advise on courses of study for team members and / or self
- Argue for the right outcomes with data, conviction and diplomacy
- Identify, evaluate and suggest mitigation strategies for risks during design
- Design and implement features for new and existing products, features, APIs, platforms and frameworks