Title
Continuous deployment at Facebook and OANDA.
Abstract
Continuous deployment is the software engineering practice of deploying many small incremental software updates into production, leading to a continuous stream of 10s, 100s, or even 1,000s of deployments per day. High-profile Internet firms such as Amazon, Etsy, Facebook, Flickr, Google, and Netflix have embraced continuous deployment. However, the practice has not been covered in textbooks and no scientific publication has presented an analysis of continuous deployment. In this paper, we describe the continuous deployment practices at two very different firms: Facebook and OANDA. We show that continuous deployment does not inhibit productivity or quality even in the face of substantial engineering team and code size growth. To the best of our knowledge, this is the first study to show it is possible to scale the size of an engineering team by 20X and the size of the code base by 50X without negatively impacting developer productivity or software quality. Our experience suggests that top-level management support of continuous deployment is necessary, and that given a choice, developers prefer faster deployment. We identify elements we feel make continuous deployment viable and present observations from operating in a continuous deployment environment.
Year
DOI
Venue
2016
10.1145/2889160.2889223
ICSE (Companion Volume)
Keywords
Field
DocType
Continuous Deployment,Agile Process,Deployment Process,DevOps,Continuous Delivery,Release Engineering,Release Management
Software deployment,Systems engineering,Code size,Computer science,Server,Management support,Software,Software quality,Deployment environment,The Internet
Conference
ISBN
Citations 
PageRank 
978-1-5090-2245-8
28
0.98
References 
Authors
8
6
Name
Order
Citations
PageRank
Tony Savor1543.15
Mitchell Douglas2280.98
Michael Gentili3280.98
Laurie Williams44033473.64
Kent Beck5361.62
M. Stumm61457119.58