57
Serverless + Modern Agile @mikebroberts https://symphonia.io/

Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Serverless + Modern Agile

@mikebroberts https://symphonia.io/

Page 2: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,
Page 3: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

https://symphonia.io/

Page 4: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Coming in June!

Mike Roberts & John Chapin

Understanding the Latest Advances in Cloud and Service-Based Architecture

What is Serverless?

Page 5: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Resources for this talk:

http://bit.ly/symphonia-goto-chicago

@mikebroberts

Page 6: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Continuous Experimentation

Page 7: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

I - From Feature Factories to Product Labs

@mikebroberts

Page 8: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

What is the point of software engineering?

Page 9: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

“The goal of software is to sustainably minimize lead time to business impact”

— Dan North ‘Beyond Features’

Page 10: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

How has software lead time changed over the years?

Page 11: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Back in the old days…• Releasing software was expensive

• Infrastructure was expensive

• Changing infrastructure was expensive

Page 12: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

https://www.projectmanager.com/

Page 13: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

https://www.martinfowler.com/

Page 14: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,
Page 15: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.”

— Sree Kotay, CTO, Comcast Cable

Page 16: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Project → Product

Output → Outcome

Page 17: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

“We’re starting to see applications be built in ridiculously short time periods.”

— Adrian Cockroft, AWS

Page 18: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

We don’t know upfront what the best solution is

Page 19: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

“Most of our ideas suck!”

— Jeff Patton ‘Output vs. Outcome & Impact’

Page 20: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

ThoughtWorks

Page 21: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

https://www.amazon.com/

Page 22: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Product Lab

Feature Factory →

Page 23: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

II - Challenges of this approach

@mikebroberts

Page 24: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Technical Challenges

1. Minimize incidental complexity

2. Reduce infrastructure cost and commitment of new systems

3. Minimize the tech debt impact of highly fragmented ecosystem

Page 25: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Process and Culture Challenges

4. Minimize initial deployment time

5. Culture of learning

6. Spread ownership of product innovation

Page 26: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Safety Challenges

7. Safe to fail

8. Budgetary safety

9. Data and Security Safety

Page 27: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

III - Serverless as an experimentation platform

@mikebroberts

Page 28: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

A Quick Serverless Reminder

Page 29: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Attributes of a Serverless Product

• No management of Server Hosts or Processes

• Self auto provision & auto-scale based on load

• Costs based on actual, precise, usage

Page 30: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

1 - Minimize incidental complexity

• Pre-built generic logic

• Lightweight model for custom code (FaaS)

• Handles system administration

• Automatic horizontal scalability

Page 31: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

2 -Reduce infrastructure cost• Costs based on actual usage, not any commitment

• Costs scale up from, and down to, zero, automatically

• Removes cost-saving incentive to co-locate features

Page 32: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

3 -Minimize Tech Debt

Encourages a modular, well-encapsulated, loosely coupled

architecture

Page 33: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

If you’re only using Serverless for cost savings you’re missing a big trick

Page 34: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

A technical platform is not sufficient - our organizations

need to change too

Page 35: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

IV - Continuous delivery, continuous value

@mikebroberts

Page 36: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

CultureDevOps

Page 37: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

http://www.itrevolution.com/

Page 38: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

4 - Minimize initial deployment time

• More than Continuous Deployment…

• … need to be able to bring up entirely new stacks of components in minutes or seconds

Page 39: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

5 - Culture of Learning

• Our customer

• Our tools

• Each other

Page 40: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Tear up the Backlog!

Page 41: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

“Software, Faster”

Page 42: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

6 - Spread ownership of innovation

Product ownership is a team’s responsibility, not

an individual’s

Page 43: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

V - A new approach to safety

@mikebroberts

Page 44: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

7 - Safe to Fail

“Google’s data indicated that psychological safety, more than anything else, was

critical to making a team work”

— New York Times

Page 45: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

“If you think that’s a big failure, we’re working on much bigger failures right now — and I am not

kidding. Some of them are going to make the Fire Phone look like a tiny little blip.”

— Jeff Bezos, on the Fire Phone

Page 46: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

“By removing blame, you remove fear; by removing fear, you enable honesty;

and honesty enables prevention.”

— Bethany Macri, Etsy c/o DevOps Handbook

Page 47: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

8 - Budgetary safety

• Team visibility and ownership

• Automation and tooling

Page 48: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

9 - Data and Security Safety

• Make it part of a team’s regular work

• Build cross-organizational tooling

• Team autonomy for many access controls…

• But embrace change request process too

Page 49: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

VI - Modern Agile

@mikebroberts

Page 50: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

http://modernagile.org/

Page 51: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Make People Awesome

Page 52: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Experiment &

Learn Rapidly

Page 53: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Deliver Value

Continuously

Page 54: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Make Safety A

Prerequisite

Page 55: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

Serverless + Modern Agile +

DevOps + Software, Faster

= Continuous Experimentation

Page 56: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

How will you transform your organization from

a feature factory to a product laboratory?

Page 57: Serverless + Modern Agile...“We used to ship our product every 12–18 months, in a 3–5 year period we shipped 3 or 4 releases. Now we ship 3 releases every week.” — Sree Kotay,

@mikebroberts [email protected]

https://symphonia.io/

Resources for this talk:

http://bit.ly/symphonia-goto-chicago