Setting up Continuous Delivery Culture for a Large-Scale Mobile App
Hike is a mobile-first, messaging platform that is used by 100 million users to exchange 40 billion messages/month. Hike app is available on Android, iOS and Windows phone. On the back-end, we’ve 100+ macro-services in Java, Python, Ruby, Go and Elixir. While setting up a Continuous Delivery pipeline, we ran into a series of technical challenges. However it was more important to address the organisational/behavioural challenges to ensure a sustainable culture shift in the company.
In this talk, I’ll explain how we went about:
- Setup a trunk-based development model
- Decentralised our build & test environments using Docker and Jenkins
- Segregated and containerised our macro-services
- Refactored the mobile apps to be more container friendly
- Setup a mobile device farm using STF
- Improved the quality of code-reviews using PRBuilder & PRRiskAdvisor
- Created different kinds of automated tests to align with our CI Pipeline and get rapid feedback
- Finally how we used C3 to visualise the health of our code-base
Software engineers, technical leaders, architects and anyone interested in continuous delivery.