BackgroundFounded in 2006, Badoo is a dating-focused social networking service that helps their customers meet new people. The company is headquartered in Soho, London and has over 319 million active users today, making it one of the largest dating services in the world.
ChallengesWith a team of 6 C/C++ engineers and 10 IT Ops people, Badoo’s IT team is responsible for all aspects of applications, servers and network equipment. The C/C++ team is responsible for all software delivery, service discovery and logging/metrics streaming. The IT ops team ensures that all infrastructure development and operations run smoothly.
Badoo has some very complex backend services and often have unconventional dependencies, causing a lot of operational headaches around QA/release integration and deployment. The development team needed an easy to manage platform for delivering applications to their IT operations team. The team was in search of a user interface that was easy for their developers to use for deploying their test and pre-production code across their environment, regardless of infrastructure type. Lastly, they needed a way to ensure that their CI infrastructure had control, reliability and transparency.
The IT ops teams had a different set of challenges they needed to solve for. Isolation and resource management caused headaches when it came to actual deployment of applications. For instance, it was not uncommon for them to have a lack of information around what services consisted of and the dependencies that they had.
SolutionThe Badoo team has turned to Docker to help alleviate these challenges. Today the company is using the Docker Engine as well as the Docker Registry. The company uses these tools for QA integration as well as their development and production container deployments. With Docker, their internal tools are able to provide them with the visibility they need around what’s going on within their environment, telling them what they have running, and where. Managing their deployments has now become painless by dockerizing each application. The standardization that Docker containers provide enables the team to deploy their applications onto any infrastructure in both QA/test as well as production. Docker has simplified their operations, giving them the transparency that they need, helps them establish a common set of tools and helps them deliver new application features to their 319 million customers, faster. The dating service isn’t done Dockerizing their environment though. In the future Badoo will begin building their software inside Docker containers as well, benefitting from the portability that Docker provides.