As a large enterprise company, our foray into the world of software as a service was not a green-field project. Instead, our service made its humble beginnings from on-premise software as a version of an existing product dating back to the 1980’s. Consequently, the associated people, processes and tools reflect this legacy. This is particularly true of build and release engineering highlighted over the course of the past two years during our transformation towards Continuous Delivery. Join me as I reflect upon our transition thus far and share some perspectives of our experience.
Reeling In The Years – Our Service’s Continuous Delivery Transformation & It’s 30 Year Legacy Of On-Premise Software
1. Reeling In The Years
Our Service’s Continuous Delivery Transformation
&
It’s 30 Year Legacy Of On-Premise Software
Darin Egan (@ImDarinEgan)
2. @ImDarinEgan
Darin Egan
◇ Currently @ Microsoft (Dublin, Ireland)
◇ Former IBM’er
■ Application Development Framework
■ Mail Service
○ Monitoring & Resiliency
○ Continuous Delivery
◇ Contact
■ @ImDarinEgan
■ www.linkedin.com/in/darinegan
About Me
6. @ImDarinEgan
Delivering Software
Goal
◇ Low Cycle Time
◇ High Quality
Benefits
◇ Empower Teams
◇ Reduce Errors
◇ Lower Stress
How
◇ Automated, Frequent Releases
Deployment Pipeline
◇ Automated Impl. of Delivery Process
◇ Logical Conclusion of Cont. Integration
◇ Purpose
a. Transparency; Collaboration
b. Promotes Early Feedback
c. Enable Delivery At Will
8. @ImDarinEgan
Our Challenge
Build Before (c. 2015) After
Cadency Once a Day Per Submission
Submission(s) Multiple One
Type Full Incremental
Acceptance
Testing
Post-Commit Pre-Commit
Frequency Manually Ad Hoc Automated
Average
Throughput
5 Hours ~ 90 Minutes
9. @ImDarinEgan
1. Create a Repeatable, Reliable Process
2. Automate Almost Everything
3. Keep Everything in Version Control
4. If It Hurts, Do It More Frequently
5. Build Quality In
6. Done Means Released
7. Everybody Is Responsible
8. Continuous Improvement
Principles
10. @ImDarinEgan
◇ Believing Is Seeing
◇ Practise Making Perfect
■ Commitment to the Discipline
■ The Discipline to Practise
◇ Incremental & Iterative Changes
■ e.g. River Crossing Puzzle
The Missing Piece
11. @ImDarinEgan
Rocking The Boat
◇ Inertia of the Status Quo
◇ Resistance
■ Denial / Delusion
■ Scepticism / Cynicism
■ Fatalism
Temptations
◇ Nostalgia
◇ Sunk Cost Fallacy
◇ Reinventing the Wheel
Challenges
13. @ImDarinEgan
◇ Inhibitor to Innovation
■ Constraint of Thought
◇ Patterns of Perception
◇ De Bono
■ Time Sequence Trap
◇ “I dream things that never
were; and I say 'Why not?'”
The Need for Creativity
14. @ImDarinEgan
The Role of Release Engineering
◇ “Shipping Is Your Company’s Heartbeat”
◇ Tool Choices Policy & Philosophy
■ Hone Your Craft
◇ Ravages of Time
■ Proliferation, Stagnation
■ Complexity
■ Technical Debt
15. @ImDarinEgan
◇ Start with “Why?” [Sinek]
◇ Motivation [Pink]
◇ The Power Of Small Wins [Amabile, Kramer]
◇ Psychological Safety (Google’s Project Aristotle)
◇ Language of Commitment
Catalysts
17. @ImDarinEgan
Bibliography
◇ Amabile, Kramer “The Progress Principle: Using Small Wins to Ignite Joy,
Engagement, and Creativity at Work”
◇ Beck et al. “Manifesto for Agile Software Development”
◇ Curran “Shipping is your company’s heartbeat”
◇ De Bono “Serious Creativity: A Step-by-Step Approach to Using the Logic of
Creative Thinking”
◇ Elliott-McCrea “Etsy CTO On Its Conservatively Crafty Tech Philosophy”
◇ Gruver et al. “A Practical Approach to Large-Scale Agile Development: How
HP Transformed LaserJet FutureSmart Firmware”
◇ Higgins “Tools as a catalyst for culture change”
◇ Humble, Farley “Continuous Delivery: Reliable Software Releases through
Build, Test, and Deployment Automation”
◇ Pink “Drive: The Surprising Truth About What Motivates Us”
◇ Sinek “Start with Why: How Great Leaders Inspire Everyone to Take Action”
18. @ImDarinEgan
Credits
Special thanks to all the people who made and released
these awesome resources for free:
◇ Presentation template by SlidesCarnival
◇ Photographs by Unsplash