The AWS Relational Database Service (RDS) is one of the fastest-growing AWS businesses, providing super-simple provisioning and management for databases in the cloud. Customers can set up a new database with just a few clicks, and complex administrative tasks like scaling, fail-over, and monitoring are all handled in an automated fashion by our control systems. Operating such a large-scale system comes with the challenge of building sophisticated and reliable control systems automations and management tools that allow provide improved control, visibility and predictability.
The RDS team in Dublin is looking for a Snr Software Development Engineer that helps us develop systems and solutions to operate the service at scale. We are looking for people that love to dive in and solve fundamental Computer Science and Systems problems. Candidates need to have a strong sense of ownership, passion to provide a great customer experience and excellent troubleshooting skills even when in high-pressure situations. If you'd like to be a part of creating and operating always-on databases in the AWS cloud, this is the job for you!
As a Snr. Software Development Engineer working in the RDS team you will:
• Build large-scale distributed software systems in Python, Java and other languages
• Develop software at every level of the stack from front-end user interfaces to low-level embedded software
• Lead the architecture of new services and features that will be deployed and used at massive scale
• Translate functional and technical requirements into detailed architecture and design
• Implement features and functionality for new and existing operational solutions
• Test and deploying software, and documenting the features and design of software
• Provide guidance and mentoring to other engineers
• Set the example for your team in terms of code quality, engineering practices, and productivity
• Collaborate with Amazon's legendary principal engineers to find simple solutions to brain-contorting problems
• Interact with customers and other service teams to understand requirements and define solutions
• Identify, evaluate and suggest mitigation strategies for risks during design
• Support service operations and drive an operational virtuous cycle that reduces or eliminates customer impact
• 6+ years' professional experience in software development
• Proficiency in one or more following languages: Java, C/C++, Ruby, Python with scripting knowledge in either Perl, shell scripting, Bash or other.
• Knowledge of professional software engineering practices & best practices for full software development life cycle, including coding standards, code reviews, source control management, build processes, testing and operations
• Experience with Linux/UNIX system administration and trouble-shooting of issues through their entire stack, including software, networking and operating system levels
• Bachelor's Degree in Computer Science or related field
• Experience building and operating large-scale online services and fault-tolerant distributed systems
• DBMS administration and / or architecture experience