Enables developers to build, ship, and run applications anywhere.
The Docker Hub team develops and maintains the largest and most popular container registry service in the world today, Docker Hub. Millions of users - community developers, open source projects and Independent Software Vendors - push and pull Docker container images billions of times through Docker Hub. If you are an experienced backend Software Engineer and want to play a critical role in the evolution of Docker Hub and Docker’s next chapter, then this role is for you.
As a Senior Software Engineer in the Docker Hub team, you will build features around the container registry that operate reliably at massive scale and deliver a differentiated experience for free and paid users of Docker Hub. You will develop microservices and serverless functions that offer new functionality to other services within Docker Hub’s service oriented architecture besides enhancing existing services. You will be constantly seeking ways to improve monitoring and reliability of the various Docker Hub services as well as CI/CD around the Docker Hub services to ensure we maintain a high level of quality with a fast pace of delivery. Finally, you should be passionate about how developers’ lives could be made easier, and about Docker’s role in that.
- Develop, deploy and monitor microservices and serverless components in AWS
- Scale the world’s largest repository of container images
- Play an active role in product discussions, influence the roadmap and end user experience, take ownership and responsibility over new projects and features, and turn those ideas into reality
- Deploy infrastructure for AWS using Terraform
- Build and improve team automation tools including Github Actions, Slack integrations, Grafana dashboards
- Interact with other teams within Docker, as well as with upstream open source communities and our users
- Be ready to tackle high performance engineering challenges
- Play an active role in improving the way Hub services are tested and deployed
- 5+ years experience building SaaS products with modern languages like Golang, Python or Java
- Understanding of the challenges of running a SaaS platform at global scale
- Good Written communication skills
- Ability to work remotely across time zones
- Solid API design skills (straightforward, unsurprising, defensible)
- Direct experience developing applications at web scale
- Proven ability to learn new technologies and languages, and to switch between them as necessary
- Follow good software engineering practices such as code review, source control, continuous integration and testing
- Ability to work in a team with other developers and partnering with User Experience experts, Product Management and Operations teams
- Experience with developing Microservices
- Experience with Docker and Kubernetes
- Experience with modern monitoring and logging platforms
- Experience with database technologies and SQL