We're an internally-focused team making deep changes to tooling, infrastructure, processes, and controlplane components within the Relational Database Service, one of the fastest growing businesses within AWS. We're looking for a seasoned, talented software development manager to join and lead an established but growing team whose mission is to enable RDS to scale in advance of our next 2x (and the 2x after that, and the one after that...). Our service provides managed, reliable, scalable and highly available relational databases, on demand, and we are currently supporting the largest fleet of relational databases on Earth. We minimize the effort required to maintain SQL databases by automating administrative tasks like backup / restore, scaling CPU / RAM / storage, setting up replicas for load-spreading and DR, and high availability / redundancy, 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 .
You are a passionate engineering leader who strongly believes that tooling, automation, and processes must combine to create an environment where software developers can concentrate on writing software. Having built large, distributed platforms in the past, you've seen what happens when teams under-invest in making their software modular and independent, and in CI/CD. You have also experienced the productivity, velocity, and morale improvements associated with investing aggressively in these same places, and are excited about doing so at very large scale.
Capable of working through significant complexity - organizational, architectural, and code - you are excited about the challenge of taking a large, distributed team and a large, distributed product to the next level of engineering practice by diving into an established, industry-leading platform and improving the scalability of the teams implementing and supporting it.
Who are you? You're the new Software Development Manager of the RDS Development Infrastructure team. We're excited to have you aboard!
What You'll Do
•Effectively mentor and manage a critical team of software developers including their projects and performance
•Define, document, negotiate, communicate, own, and deliver the Development Infrastructure roadmap for RDS, from implementing CI / CD, to refactoring existing services to support ever-growing team scale, to building new services and the infrastructure required to support them and the future architecture of RDS
•Contribute to and lead design, architecture, process and development discussions which impact all of RDS
•Distill and communicate technical concepts to the team and other stakeholders
•Argue for the right outcomes with data, conviction and diplomacy
•Bachelor's Degree in Computer Science or equivalent, Masters or PhD preferred
•At least 6 years of experience managing software engineering teams, 2 of which must include teams focused on internal customers
•Experience with more than one of Java, C/C++, C# or other object oriented programming languages
•Strong understanding of distributed computing, network programming, network-oriented design patterns, service-oriented architecture, CI/CD, and their best practices
•Hands-on experience with professional software engineering practices for the full software development life cycle at high scale, including coding standards, code reviews, source control management, build processes, testing, and operations
•Excellent communication, organizational, prioritization and time management skills
•Experience owning, building, maintaining, and operating a large distributed system
•Hand-on experience with CD/CI in service-oriented and distributed architectures
•Experience managing process improvement in large, geographically distributed organizations