Slide 1

Slide 1 text

Four points you should consider for scaling DevOps Christopher MANEU Azure Engineer & Advocate @ Microsoft @cmaneu

Slide 2

Slide 2 text

DevOps @ Microsoft 107k engineers in 1ES 4.6m builds per month 82000 deployments per day 28k work items created per day 2.4m git commits per month 25k employees contributing to OSS 372k pull requests per month

Slide 3

Slide 3 text

“DevOps is development and operations collaboration” “DevOps is treating your infrastructure as code” “DevOps is using automation” “Kanban for Ops?” “DevOps is feature switches” “DevOps is small deployments”

Slide 4

Slide 4 text

What is DevOps? DevOps is the union of people, process, and tools to enable continuous delivery of value to our customers.

Slide 5

Slide 5 text

@cmaneu Scaling DevOps Scaling Teams Scaling Customer Listening Scaling Quality Scaling Deployments

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

@cmaneu Being agile in a corporate world Autonomy is crucial for a team to be efficient. But how to achieve organizational objectives if all teams are autonomous?

Slide 8

Slide 8 text

Alignment Autonomy “Let’s try to give our teams three things…. Autonomy, Mastery, Purpose”

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

UI API Data

Slide 14

Slide 14 text

UI API Data

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

Listen to our customers

Slide 19

Slide 19 text

@cmaneu Our definition of done

Slide 20

Slide 20 text

@cmaneu Our definition of done

Slide 21

Slide 21 text

@cmaneu What to measure • Acquisition • Engagement • Satisfaction • Churn • Feature Usage Usage • Time to Detect • Time to Communicate • Time to Mitigate • Customer Impact • Incident Prevention Items • Aging Live Site Problems • SLA per Customer • Customer Support Metrics Live Site Health • Time to Build • Time to Self Test • Time to Deploy • Time to Learn Velocity

Slide 22

Slide 22 text

@cmaneu In-app Feedback

Slide 23

Slide 23 text

@cmaneu In-app Feedback

Slide 24

Slide 24 text

@cmaneu Microfeedback

Slide 25

Slide 25 text

@cmaneu Get this into development process

Slide 26

Slide 26 text

@cmaneu Gif based deployment

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

@cmaneu Not everything is about code reviews/pull requests 15% of the code reviews revelas a bug 50% of the code review contains long-term maintenability feedback https://docs.microsoft.com/en-us/azure/devops/learn/devops-at-microsoft/boosting- code-reviews-useful-comments?wt.mc_id=dzone-article-chmaneu

Slide 29

Slide 29 text

Code Test & Stabilize Code Test & Stabilize Code Complete Planning

Slide 30

Slide 30 text

https://docs.microsoft.com/en-us/azure/devops/learn/devops-at-microsoft/shift-left-make-testing-fast-reliable

Slide 31

Slide 31 text

engineers on your team # 5 ? x =

Slide 32

Slide 32 text

Rule: If your bug count exceeds your bug cap… stop working on new features until you’re back under the cap. 5 50 x = 10

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

How to get feedback from deployments

Slide 35

Slide 35 text

Science experiments

Slide 36

Slide 36 text

Understand your blast radius

Slide 37

Slide 37 text

…and control it with rings

Slide 38

Slide 38 text

…and control it with feature flags

Slide 39

Slide 39 text

Comparing rings & feature flags DEPLOYMENT RING FEATURE FLAG Progressive exposure Yes Yes A/B Testing All users within ring All or selected users Cost Production environment maintenance Feature Flag database and code maintenance Primary use Manage impact "blast radius" Show or hide features in a release Blast radius - Canaries 0-9 canary users 0, all, or specific canary users Blast radius - Early Adopters 10-100 early adopter users 0, all, or specific early adopter users Blast radius - Users 10000+ of users 0, all, or specific users

Slide 40

Slide 40 text

Q&A Christopher MANEU Azure Engineer & Advocate @ Microsoft R&D @cmaneu

Slide 41

Slide 41 text

Thanks ! Christopher MANEU Azure Engineer & Advocate @ Microsoft R&D @cmaneu

Slide 42

Slide 42 text

Image credits DonWells - https://en.wikipedia.org/wiki/File: XP-feedback.gif CC BY-SA 3.0