In the fast paced world of the start up, there is no time for perfection. We're too busy creating and shipping software so that we can keep ourselves ahead of our competitors. Moving fast often means making a compromise when it comes to perfection. But should we go think a step beyond the compromise and positively embrace the idea of imperfection? I'll talk about why and how we should actively reject perfection and why doing so will keep everyone happy.
5. Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
perfect
adjective
/ˈpəːfɪkt/
1.
having all the required or desirable elements, qualities, or
characteristics; as good as it is possible to be.
‘she strove to be the perfect wife’
Synonyms: ideal, model, without fault, faultless, flawless,
consummate, quintessential, exemplary, best,
best-example, ultimate, copybook
5
6. What do I mean by perfect software?
Do we need software to be perfect?
How does Deliveroo works with less perfection?
6
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
7. What is perfect software?
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
7
13. The Internet changed the ability to ship
13
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
14. Perfect software: the enemy of rapid delivery?Agile on the Beach 2017
Taking advantage of the ability to deliver quickly
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
By Sander.v.Ginkel [CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0)
14
15. Do we need to
be perfect?
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
15
16. Perfect software: the enemy of rapid delivery?Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
16
17. Long lifecycle of delivery dictated the
need for perfect software
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
17
18. Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
18
Reducing our reliance on
perfection at Deliveroo
21. 21
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
By User Oxymoron on en.wikipedia [Public domain], via Wikimedia Commons
You can’t make an omelette without breaking a few eggs
22. Perfect software: the enemy of rapid delivery?Agile on the Beach 2017Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
22
Bandai Namco Entertainment America [CC BY 3.0 (https://creativecommons.org/licenses/by/3.0)], via Wikimedia Commons
22
23. 23
Imperfect engineering?
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
By US_Declaration_of_Independence_draft_1.jpg: Thomas Jeffersonderivative work: Frank Schulenburg (US_Declaration_of_Independence_draft_1.jpg) [Public domain], via Wikimedia Commons
24. 24
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
Stories from TRiM
“Not wrong long”
25. & Feature flagging
& Roll backs
& Deploy/Release
& Canary releases/Phased rollouts
& Traditional monitoring and alerting
& Business level monitoring
& Synthetic monitoring
25
Technical Risk Mitigation
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
29. 29
By Kafubra GFDL (http://www.gnu.org/copyleft/fdl.html), CC-BY-SA-3.0 (http://creativecommons.org/licenses/by-sa/3.0/) or FAL], from Wikimedia Commons
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
Is this risky?
30. 30
Perfect software: the enemy of rapid delivery?Agile on the Beach 2017
30
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
Don’t your customers mind?
31. Conclusion
31
“Have no fear of perfection – you’ll
never reach it”
Salvador Dalí
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble
32. Thank you…
(Oh! we’re hiring!)
sally.goble@deliveroo.co.uk
@sallygoble
deliveroo.engineering
32
Codemotion Amsterdam 2018 | We need to talk about perfection | @sallygoble