Sr. Software Engineer Backend (Docker Hub)

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

Preferred qualifications

Experience with developing Microservices
Experience with Docker and Kubernetes
Experience with modern monitoring and logging platforms
Experience with database technologies and SQL