SlideShare a Scribd company logo
Prateek Gupte
Director of Engineering
Continuous
Integration @ Haptik
Our journey to hourly releases
Everyone’s Personal Assistant
to get things done.
• Highest rated App in India



• 40,000 conversations per day
• 1 million messages
processed per day
• A dozen+ API integrations
100,000+ user reviews
Machine Learning Scientists
Full Stack Developers
Apps (iOS + Android + Backend)
QA
Haptik Team Structure
ProductTeam1
ProductTeam2
ProductTeamn
…
Git Flow
Problems faced
• Bi Monthly releases
• Batched releases
• Something always breaks
• Monolithic apps are tough; Microservices can be
tougher
• Out of sync environments
• Zero downtime
• High frequency, low risk deployments
• Automate changes in infrastructure
• Minimise integration problems
• Manage dependencies
• packages
• OS level dependencies
• Empower engineers to release when they want
DevelopmentDevelopment Staging Production
Development
Jenkins
Configuration
Files for
infrastructure
Infra Configuration
Haptik Admin +
Mogambo
Haptik Admin +
Mogambo
develop
master
S3
Continuous Integration @ Haptik
Tests are crucial
• You can’t have CI without any tests
• Quantifying the value of tests
• Legacy Code
• Writing tests backwards
• Writing tests v/s writing code
It’s all about the data
• Making data available to everyone
• Chat Data in Mongo
• Configuration Data in MySQL
• Environment Configuration in S3
• ML Models
• Moving data backwards and forwards across environments
• Conflicts in data
• Blue Green Deployments for Spot Servers
• Pay only if you save
• Some pretty amazing cost savings
Where we went wrong
• The chaos of the staging environment
• CI is a culture not a set of tools
• Our experiments with a preprod environment
• “Do we have confidence to release this version
of software to Production?”
• Where are the tests?
• Unit Tests
• API Tests
• Integration Testing
• Test Coverage
• Maintain consistency across environments
• Free the Data!
• Reduce QA time - Catch bugs early
2
DevelopmentDevelopment Staging Production
Development
Jenkins
Test
Environment
Configuration
Files for
infrastructure
Infra Configuration
Application Configuration,
Models, Chat Flows and copies
Haptik Admin +
Mogambo
Haptik Admin +
Mogambo
feature
PRbuild
develop
master
S3
Mobile CI
• Staging builds can point to
any environment
• Daily Develop Builds sent to
the entire team
• Integration tests run every
night on develop build
• Unit tests that run on every
PR to block merges
Things that worked 👍
• Teams have their own releases cycles
• Teams ship faster and with better quality
• Manual overhead and co-ordination removed
• Apps are hardened every day
It’s not about the tools
It’s about the culture
Road ahead
• Reach > 80% Coverage across our system
• Enforce coverage on all Pull Requests
• API Tests
• Continuous deployments
Haptik Plug
We’re Hiring!
• Android Engineer
• Full Stack Engineer
• Senior Machine Learning Scientist
• DevOps Engineer
• QA Engineer

More Related Content

PDF
SplunkLive Brisbane Splunk for Developers
PDF
SplunkLive Melbourne Splunk for Developers
PPTX
The Art of Container Monitoring
KEY
SlideShare culture
PDF
QA in DevOps: Transformation thru Automation via Jenkins
PDF
TechTalk 2021: Peran IT Security dalam Penerapan DevOps
PDF
A Secure DevOps Journey
ODP
Niemnte agile
SplunkLive Brisbane Splunk for Developers
SplunkLive Melbourne Splunk for Developers
The Art of Container Monitoring
SlideShare culture
QA in DevOps: Transformation thru Automation via Jenkins
TechTalk 2021: Peran IT Security dalam Penerapan DevOps
A Secure DevOps Journey
Niemnte agile

What's hot (20)

PPTX
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
PPTX
From 0 to DevOps: Lessons Learned Moving from On-Prem to Cloud Native
PPTX
Outpost24 webinar - application security in a dev ops world-08-2018
PPTX
MERGE 2016 Opening Remarks
PDF
Perforce - Under New Management by Konrad Litwin
PDF
Devops, Secops, Opsec, DevSec *ops *.* ?
PPTX
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
PDF
Git in the Enterprise: How to succeed at DevOps using Git and a monorepo
PDF
Modern Module Development
PDF
Be a Happier Developer with Git / Productive Team #gettinggitright
PPTX
Introduction to DevSecOps OWASP Ahmedabad
PDF
Why source control your Oracle Database?
PPTX
Perforce Helix Git Swarm: Enterprise Git Ecosystem
PPTX
DevOps
PPT
VodQA_ParallelizingCukes_AmanKing
PDF
Continuous Testing - What QA means for DevOps
PPTX
How Small Team Get Ready for SRE (public version)
PPTX
Ansible with Jenkins in a CI/CD Process
PDF
Quality Enablement - Agile Practices with Quality Enablement
PDF
How to win at DevOps (and understand it along the way)
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
From 0 to DevOps: Lessons Learned Moving from On-Prem to Cloud Native
Outpost24 webinar - application security in a dev ops world-08-2018
MERGE 2016 Opening Remarks
Perforce - Under New Management by Konrad Litwin
Devops, Secops, Opsec, DevSec *ops *.* ?
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
Git in the Enterprise: How to succeed at DevOps using Git and a monorepo
Modern Module Development
Be a Happier Developer with Git / Productive Team #gettinggitright
Introduction to DevSecOps OWASP Ahmedabad
Why source control your Oracle Database?
Perforce Helix Git Swarm: Enterprise Git Ecosystem
DevOps
VodQA_ParallelizingCukes_AmanKing
Continuous Testing - What QA means for DevOps
How Small Team Get Ready for SRE (public version)
Ansible with Jenkins in a CI/CD Process
Quality Enablement - Agile Practices with Quality Enablement
How to win at DevOps (and understand it along the way)
Ad

Similar to Continuous Integration @ Haptik (20)

PDF
Increasing pace as you grow: the Amazon Story
PPTX
Making software development processes to work for you
PDF
Continuous Delivery: releasing Better and Faster at Dashlane
PPTX
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
PPTX
Freedom and Responsibility
PPTX
DevOps for AI Apps
PPTX
Continuous Build To Continuous Release - Experience
PPTX
Continuous Integration
PDF
Continuous integration
PPTX
DevOps Overview in my own words
PDF
Introduction to-automated-testing
PDF
Introduction to Automated Testing
PPTX
Devops architecture
PPTX
MyHeritage - QA Automations in a Continuous Deployment environment
PDF
2013 Perforce Collaboration Tour - Swarm
PDF
Developing PHP Applications Faster
PPTX
How Azure DevOps can boost your organization's productivity
KEY
Continuous Delivery Using Jenkins
PDF
Continuous integration at CartoDB
Increasing pace as you grow: the Amazon Story
Making software development processes to work for you
Continuous Delivery: releasing Better and Faster at Dashlane
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
Freedom and Responsibility
DevOps for AI Apps
Continuous Build To Continuous Release - Experience
Continuous Integration
Continuous integration
DevOps Overview in my own words
Introduction to-automated-testing
Introduction to Automated Testing
Devops architecture
MyHeritage - QA Automations in a Continuous Deployment environment
2013 Perforce Collaboration Tour - Swarm
Developing PHP Applications Faster
How Azure DevOps can boost your organization's productivity
Continuous Delivery Using Jenkins
Continuous integration at CartoDB
Ad

Recently uploaded (20)

PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
Geodesy 1.pptx...............................................
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
CH1 Production IntroductoryConcepts.pptx
PDF
Well-logging-methods_new................
PPTX
OOP with Java - Java Introduction (Basics)
PDF
Structs to JSON How Go Powers REST APIs.pdf
PPT
Project quality management in manufacturing
PDF
Digital Logic Computer Design lecture notes
PPTX
Internet of Things (IOT) - A guide to understanding
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPTX
Sustainable Sites - Green Building Construction
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Lecture Notes Electrical Wiring System Components
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
Geodesy 1.pptx...............................................
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
CH1 Production IntroductoryConcepts.pptx
Well-logging-methods_new................
OOP with Java - Java Introduction (Basics)
Structs to JSON How Go Powers REST APIs.pdf
Project quality management in manufacturing
Digital Logic Computer Design lecture notes
Internet of Things (IOT) - A guide to understanding
Foundation to blockchain - A guide to Blockchain Tech
Sustainable Sites - Green Building Construction
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx

Continuous Integration @ Haptik

  • 1. Prateek Gupte Director of Engineering Continuous Integration @ Haptik Our journey to hourly releases
  • 2. Everyone’s Personal Assistant to get things done. • Highest rated App in India
 
 • 40,000 conversations per day • 1 million messages processed per day • A dozen+ API integrations 100,000+ user reviews
  • 3. Machine Learning Scientists Full Stack Developers Apps (iOS + Android + Backend) QA Haptik Team Structure ProductTeam1 ProductTeam2 ProductTeamn …
  • 5. Problems faced • Bi Monthly releases • Batched releases • Something always breaks • Monolithic apps are tough; Microservices can be tougher • Out of sync environments
  • 6. • Zero downtime • High frequency, low risk deployments • Automate changes in infrastructure • Minimise integration problems • Manage dependencies • packages • OS level dependencies • Empower engineers to release when they want
  • 7. DevelopmentDevelopment Staging Production Development Jenkins Configuration Files for infrastructure Infra Configuration Haptik Admin + Mogambo Haptik Admin + Mogambo develop master S3
  • 9. Tests are crucial • You can’t have CI without any tests • Quantifying the value of tests • Legacy Code • Writing tests backwards • Writing tests v/s writing code
  • 10. It’s all about the data • Making data available to everyone • Chat Data in Mongo • Configuration Data in MySQL • Environment Configuration in S3 • ML Models • Moving data backwards and forwards across environments • Conflicts in data
  • 11. • Blue Green Deployments for Spot Servers • Pay only if you save • Some pretty amazing cost savings
  • 12. Where we went wrong • The chaos of the staging environment • CI is a culture not a set of tools • Our experiments with a preprod environment • “Do we have confidence to release this version of software to Production?”
  • 13. • Where are the tests? • Unit Tests • API Tests • Integration Testing • Test Coverage • Maintain consistency across environments • Free the Data! • Reduce QA time - Catch bugs early 2
  • 14. DevelopmentDevelopment Staging Production Development Jenkins Test Environment Configuration Files for infrastructure Infra Configuration Application Configuration, Models, Chat Flows and copies Haptik Admin + Mogambo Haptik Admin + Mogambo feature PRbuild develop master S3
  • 15. Mobile CI • Staging builds can point to any environment • Daily Develop Builds sent to the entire team • Integration tests run every night on develop build • Unit tests that run on every PR to block merges
  • 16. Things that worked 👍 • Teams have their own releases cycles • Teams ship faster and with better quality • Manual overhead and co-ordination removed • Apps are hardened every day
  • 17. It’s not about the tools It’s about the culture
  • 18. Road ahead • Reach > 80% Coverage across our system • Enforce coverage on all Pull Requests • API Tests • Continuous deployments
  • 19. Haptik Plug We’re Hiring! • Android Engineer • Full Stack Engineer • Senior Machine Learning Scientist • DevOps Engineer • QA Engineer