SlideShare a Scribd company logo
1 of 66
Quora’s Approach To
Moving Fast Sustainably
(In Ten Lessons)
Nikhil Garg (@nikhilgarg)
Qcon San Francisco, 11/18/2015
InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
Watch the video with slide
synchronization on InfoQ.com!
http://www.infoq.com/presentations
/quora-processes-tools
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
Presented at QCon San Francisco
www.qconsf.com
IIT Delhi
To Grow And Share World’s Knowledge
Quora’s Mission
“Quora is a place where a normal teenager from a remote
Asian country can get direct advice from world’s top
astronauts, programmers, novelists and many others.”
Rajeeb Banstola
High School Student, Nepal
@Quora {
Founded in 2010
65 Engineers
Python, JS, C++
}
1. Moving Fast
2. Moving Fast Recklessly
3. Ten Lessons For Sustainability
1. Moving Fast
2. Moving Fast Recklessly
3. Ten Lessons For Sustainability
Maximizing Innovation
Winner Takes All
1. Moving Fast
2. Moving Fast Recklessly
3. Ten Lessons For Sustainability
Code Becomes Messy
Developers Become Unhappy
Development Can Just Halt
...So Must Move Fast, Sustainably
1. Moving Fast
2. Moving Fast Recklessly
3. Ten Lessons For Sustainability
1. Move Fast, On Average
2: Think Long Enough Term2. Define Your Long-Enough Term
3. Do The Math. There IS Free Lunch
Building a Linter takes 4 weeks (160 hours)
Saves 1 hour per developer per week
At 50 developers, saves 50 hours per week
Saves 400 hours in 8 more weeks
Qlint: Quora’s Python Linter
Soon Going to Open Source Qlint :)
4. Commit Publicly
Define your long-enough term
Publicly commit to it
Empower developers to order free-lunch
Enjoy higher increased average speed
5. Cut Corners In Scope
6. Optimize Productivity Bottlenecks
Testing At Quora
7. Reward Acceleration
Code Cleanup
Automation
8. Prevent Deceleration
Slow Creep Of Complexity
Batched Code Cleanup At Quora
Codebase Is A Tree
9. Optimize Processes
Continuous Deployment
‘Git Push’ To Production In 10 Minutes
10. Be Practical, Not Ideological
Code Reviews Are Awesome
Style / Design
Education / Collaboration
Correctness [?]
[?] http://research.microsoft.com/pubs/180283/ICSE%202013-codereview.pdf
But Pre-Commit Reviews Are Costly
(Code is reviewed after it goes to production)
Post Commit Code Reviews
Taking continuous deployment to the next level
Style / Design
Education / Collaboration
Correctness [?] → Testing
[?] http://research.microsoft.com/pubs/180283/ICSE%202013-codereview.pdf
Fall Back To Pre-Commit Reviews
Codebase Is A Tree
Easier to ask for forgiveness than permission!
Avoid truly terrible outcomes
Maximize expected speed
Minimize bad outcomes
Summary
Move Fast, On Average
Define Your Long Enough Term
Do the Math. There IS Free Lunch
Commit Publicly
Cut Corners In Scope
Optimize Productivity Bottlenecks
Reward Acceleration
Prevent Deceleration
Optimize Processes
Be Practical, Not Ideological
● Empower developers to move fast on average over
long enough term by getting free lunch.
● Profile productivity like code, measure, optimize,
make practical trade-offs.
● Post commit code reviews work, codebase is a tree.
Nikhil Garg
@nikhilgarg28 { Gmail, Github, Twitter, LinkedIn }
Thank you!
Quora Is Hiring
Watch the video with slide synchronization on
InfoQ.com!
http://www.infoq.com/presentations/quora-
processes-tools

More Related Content

Viewers also liked

Richard Branson leadership & personality traits
Richard Branson leadership & personality traitsRichard Branson leadership & personality traits
Richard Branson leadership & personality traits
Akhil Pillai
 

Viewers also liked (19)

Richard Branson leadership & personality traits
Richard Branson leadership & personality traitsRichard Branson leadership & personality traits
Richard Branson leadership & personality traits
 
Richard Branson/Virgin
Richard Branson/VirginRichard Branson/Virgin
Richard Branson/Virgin
 
12 steps to simplify your life
12 steps to simplify your life12 steps to simplify your life
12 steps to simplify your life
 
Welcome to Quora
Welcome to QuoraWelcome to Quora
Welcome to Quora
 
(MBASkills.IN) Do Schools Kill Creativity?
(MBASkills.IN) Do Schools Kill Creativity?(MBASkills.IN) Do Schools Kill Creativity?
(MBASkills.IN) Do Schools Kill Creativity?
 
Biography of Bill Gates
Biography of Bill GatesBiography of Bill Gates
Biography of Bill Gates
 
How to speak so that people want to listen
How to speak so that people want to listenHow to speak so that people want to listen
How to speak so that people want to listen
 
Steve Jobs: How to Become a Successful Entrepreneur
Steve Jobs: How to Become a Successful EntrepreneurSteve Jobs: How to Become a Successful Entrepreneur
Steve Jobs: How to Become a Successful Entrepreneur
 
How great leaders inspire action
How great leaders inspire actionHow great leaders inspire action
How great leaders inspire action
 
Sex, Drugs, Rock 'N Roll - Ignite Talk 2013
Sex, Drugs, Rock 'N Roll - Ignite Talk 2013 Sex, Drugs, Rock 'N Roll - Ignite Talk 2013
Sex, Drugs, Rock 'N Roll - Ignite Talk 2013
 
Larry page.
Larry page.Larry page.
Larry page.
 
Bill gates, The Most Successful Entrepreneur of 20th Century
Bill gates, The Most Successful Entrepreneur of 20th CenturyBill gates, The Most Successful Entrepreneur of 20th Century
Bill gates, The Most Successful Entrepreneur of 20th Century
 
Bill Gates
Bill GatesBill Gates
Bill Gates
 
The Key To Success Entrepreneur
The Key To Success Entrepreneur The Key To Success Entrepreneur
The Key To Success Entrepreneur
 
Larry page
Larry pageLarry page
Larry page
 
Speak so that people want to listen by julian treasure
Speak so that people want to listen by julian treasureSpeak so that people want to listen by julian treasure
Speak so that people want to listen by julian treasure
 
Larry page
Larry pageLarry page
Larry page
 
How to speak so that people want to listen - Julian Treasure
How to speak so that people want to listen - Julian TreasureHow to speak so that people want to listen - Julian Treasure
How to speak so that people want to listen - Julian Treasure
 
Larry Page - An inspiring corporate leader
Larry Page - An inspiring corporate leader Larry Page - An inspiring corporate leader
Larry Page - An inspiring corporate leader
 

More from C4Media

More from C4Media (20)

Streaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live VideoStreaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live Video
 
Next Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy MobileNext Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy Mobile
 
Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java Applications
 
Kafka Needs No Keeper
Kafka Needs No KeeperKafka Needs No Keeper
Kafka Needs No Keeper
 
High Performing Teams Act Like Owners
High Performing Teams Act Like OwnersHigh Performing Teams Act Like Owners
High Performing Teams Act Like Owners
 
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaDoes Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
 
Service Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideService Meshes- The Ultimate Guide
Service Meshes- The Ultimate Guide
 
Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CD
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine Learning
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at Speed
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep Systems
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.js
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly Compiler
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's Edge
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home Everywhere
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing For
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Recently uploaded (20)

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

Quora's Approach to Moving Fast Sustainably