Software Development Engineer - RDS (Relational Database Services)
Internship Sydney (Sydney) IT development
Job description
DESCRIPTION
About Us
We’re a team within Relational Database Services (RDS), one of the fastest growing businesses in AWS, and we’re looking for seasoned, talented and operationally driven software engineers in Sydney. 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.
About You
You’ve built a lot of software – shipped products, created platforms, tools and modules, worked with every framework under the sun and have built big, distributed, API-driven systems with thousands of users. You’re as excited as we are about learning every day, and solving really hard engineering problems that no one else is. You've also operated services and/or scaled software at a high level, ensuring customer up-time and safety are your foremost tenets.
You're passionate about software quality, repeatability, testability and maintainability in production, 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.
You're an operationally focused and a DevOps zealot. You instrument your code, and help others instrument theirs. You have an interest in software performance, love metrics, and never stop digging for root cause when an issue arises.
What You’ll Do
· Deliver project items on-time / in-spec, communicating clearly with leads, manager and stakeholders.
· Drive software and database architecture / design
· Drive and lead architecture / design conversations and code reviews (yours and other team members’)
· Engineer operationally driven software solutions which automate everything and scale over time.
· Work with managers and team members to estimate effort and clarify/negotiate /document scope and design.
· Drive design, architecture, process and development standards
· Mentor junior team members, helping to maintain appropriate unit test coverage, code documentation, software structure and supportability
· Distill and communicate technical concepts to more junior developers and stakeholders
· Advocate 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.
PREFERRED QUALIFICATIONS
· Experience with distributed computing and large-scale systems, taking a leading role in building complex software systems that have been successfully delivered to customers.
· Exposure to large-scale distributed storage and database systems (e.g. SQL, NoSQL, Graph Databases)
· Have mentored software engineers to help improve their skills, efficiency and productivity.
· Delivered software in an environment that utilises Agile methodologies like SCRUM or Kanban.
· Hand on experience with AWS services such as RDS, EC2, Dynamo DB, CloudWatch.
· Masters in Computer Science or equivalent.
Amazon is an Equal Opportunity-Affirmative Action Employer – Minority / Female / Disability / Veteran / Gender Identity / Sexual Orientation.
Desired profile
BASIC QUALIFICATIONS
· 3+ years of professional software development experience developing high quality code.
· Programming experience with one or more of the following languages - Java, Python, Go, C++, or C#.
· Computer Science fundamentals in object-oriented design, data structures, algorithm design and complexity analysis.
· Knowledge of systems that scale through software (architecture, design patterns and reliability).
· Knowledge of professional software engineering best practices for the full software development life cycle; including coding standards, code reviews, source control management, build processes, testing, and operations.
· Bachelor's Degree in Computer Science or equivalent professional experience.
· Excellent written and verbal communication skills.