Our Road to Continuous Delivery @ Tango Amit Mathur Tango Overview - - PowerPoint PPT Presentation

our road to continuous delivery tango amit mathur tango
SMART_READER_LITE
LIVE PREVIEW

Our Road to Continuous Delivery @ Tango Amit Mathur Tango Overview - - PowerPoint PPT Presentation

Our Road to Continuous Delivery @ Tango Amit Mathur Tango Overview Founded in 2009 and headquartered in Mountain View Tango has over 300 employees Tango is a messaging platform that combines communications, social and content


slide-1
SLIDE 1

Our Road to Continuous Delivery @ Tango Amit Mathur

slide-2
SLIDE 2

Tango Overview

  • Founded in 2009 and headquartered in

Mountain View Tango has over 300 employees

  • Tango is a messaging platform that combines

communications, social and content

  • We combine chat, video calling, games, social

discovery, and other entertaining content

  • 300M+ people use Tango to keep in touch

with friends and family

  • Tango has raised $370M to date with the

most recent Series D funding D of $280M led by Alibaba

slide-3
SLIDE 3

Continuous Delivery

slide-4
SLIDE 4

Continuous Delivery Goals

  • Monthly Release Cycle -- Enable 2 week production

client bake time for new releases by certifying server components in 2 weeks

  • Minimize regressions due to new servers deployed in

production

slide-5
SLIDE 5

Certification Flow

Testing in Feature Branch Landing Feature Branch to Trunk Release Branch Creation and Stabilization Certify Server Components Server Components Deployed to Production Internal Beta Testing of Clients Pointing to Production Staged Android Rollout iOS Rollout

2 weeks 2 weeks

slide-6
SLIDE 6

Continuous Delivery Automation

slide-7
SLIDE 7

Environment Utilization

slide-8
SLIDE 8

Deployment Automation (mosh)

slide-9
SLIDE 9

Tango Test Automation System

9

Test Analytics Web Service Analytics

DB

FeatureTest Continuous Delivery Test Android/iOS UIAutomation Test

Deployed Environment

Test Analytics UI Dashboard

UI

Cross Platform Client

Server

Tango

Cross Platform Unit Tests Server Unit Tests

slide-10
SLIDE 10

Test Automation Investments

slide-11
SLIDE 11

Mobile UI Automation

11

188 193 12 monitors

slide-12
SLIDE 12

Continuous Delivery Test

  • RESTful test that adheres to the following

requirements:

  • Environment Mobility -- Should be able to run in any

environment including localhost

  • Non-intrusive -- Should clean up all garbage created

by the test and should not interfere with other test instances (including itself)

  • Security -- Must not expose environment secrets (test

could be run in production environment)

Confidential

slide-13
SLIDE 13

Test Intelligence

slide-14
SLIDE 14

Test Quality Problem

  • # of automated tests running continuously has

dramatically increased

  • Flaky tests have become a serious problem
  • How do we deal with them?

Confidential

slide-15
SLIDE 15

Gamification Experiment

Confidential

slide-16
SLIDE 16

Limbo System

Test in Quarantine if: Analysis Rate < 90% or False Positive Rate < 90% in 24 hour period

slide-17
SLIDE 17

Key Takeaways

  • Deployment automation is key as it helps reduce

drift in test environments

  • Having continuous delivery tests (UI & server) are

key but invest in the right amount of each

  • Quarantine those flaky tests!

Confidential

slide-18
SLIDE 18

Appendix