Slide 1

Slide 1 text

Continuous Delivery Agile's missing manual @hadynz

Slide 2

Slide 2 text

So what tools do you use for Continuous Delivery?

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Illustrations based on: https://puppet.com/blog/continuous-delivery-vs-continuous-deployment-what-s-diff

Slide 5

Slide 5 text

“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” Agile Manifesto, 2001 “Continuous attention to technical excellence and good design enhances agility.” “Deliver working software frequently” “Working software is the primary measure of progress.”

Slide 6

Slide 6 text

Mindset Culture Practices Motivators Key Ingredients:

Slide 7

Slide 7 text

Mindset Assumptions: ● Can’t prevent bugs in Production ● Prefer the risk of things breaking for more speed/velocity It’s a losing battle!

Slide 8

Slide 8 text

“Arguments about whether or not a feature idea is worth doing or not generally get resolved by just spending a week implementing it and then testing it on a sample of users, e.g., 1% of Nevada users.” - Facebook Limit risk by failing fast

Slide 9

Slide 9 text

Original Wizard Express Wizard Account > Trial (Started Trial) Trial > Wizard (Completed Wizard) Wizard > Paying (Paying Customer) ACCOUNT > PAYING CUSTOMER (Overall Conversion) 77% 67% 31% 16% 90% 99% 18% 16%

Slide 10

Slide 10 text

Original Wizard Express Wizard Account > Trial (Started Trial) Trial > Wizard (Completed Wizard) Wizard > Paying (Paying Customer) ACCOUNT > PAYING CUSTOMER (Overall Conversion) 77% 67% 31% 16% 90% 99% 18% 16% Conclusion You’re probably wrong unless you’re in market and using actual data

Slide 11

Slide 11 text

Original Wizard Express Wizard Account > Trial (Started Trial) Trial > Wizard (Completed Wizard) Wizard > Paying (Paying Customer) ACCOUNT > PAYING CUSTOMER (Overall Conversion) 77% 67% 31% 16% 90% 99% 18% 16% Conclusion You’re probably wrong unless you’re in market and using actual data Everyone agreeing to something wrong doesn’t make it right. When you’re fast enough, cost of failure is minimal, so you can afford to learn

Slide 12

Slide 12 text

Original Wizard Express Wizard Account > Trial (Started Trial) Trial > Wizard (Completed Wizard) Wizard > Paying (Paying Customer) ACCOUNT > PAYING CUSTOMER (Overall Conversion) 77% 67% 31% 16% 90% 99% 18% 16% Conclusion You’re probably wrong unless you’re in market and using actual data Everyone agreeing to something wrong doesn’t make it right. When you’re fast enough, cost of failure is minimal, so you can afford to learn If you’re not prepared to fail, then you’re not prepared to learn and improve

Slide 13

Slide 13 text

Convention wisdom = Prevention is better than recovery

Slide 14

Slide 14 text

But it should now be re-visited

Slide 15

Slide 15 text

Culture Prefer the risk of things breaking for more speed/velocity

Slide 16

Slide 16 text

If the organisation culture is not explicit, then resistance to Continuous Delivery is implicit Justin Latimer, Xero Product Architect

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

Structured for autonomy Clear bounds of #ownership

Slide 23

Slide 23 text

Product Manager Product Group support: TGL Architect Agile Coach Design Embedded Dev/Ops Practice Leads Other Specialists Product Owner QA Testers Developers (Front & Back End) acting Agile Facilitator Purpose & Alignment

Slide 24

Slide 24 text

Xero Monolith Microservices

Slide 25

Slide 25 text

@bradley_scott GM of Product @lukeryannetnz Product Architect Mark Schultz Product Owner

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

Development Practices Reducing Risk Inducing Ownership

Slide 29

Slide 29 text

Testing Confidence Speed (< 5min) First class citizen “Everyone owns quality”

Slide 30

Slide 30 text

Lowering Risk Small and frequent releases Feature flagging Canary deployments Pilot customers Monitoring and alerting Graceful degradation

Slide 31

Slide 31 text

Autonomy Decoupling units of work Favour code duplication over reuse Independent deployment of each unit Event driven integration Integrate with defined HTTP contracts

Slide 32

Slide 32 text

Motivators

Slide 33

Slide 33 text

Pain

Slide 34

Slide 34 text

Motivators Pain Reducing fear Greenfield development Long term speed

Slide 35

Slide 35 text

Mindset Culture Practices Motivators Key Ingredients: Rapid recovery Top down support Org structure Pain Reducing Fear Green Fields Autonomy Reducing Risk Strategic Tests Manageable code base

Slide 36

Slide 36 text

No content