The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

57
The DevOps journey in an Enterprise Anders Lundsgård Senior Engineer October 28 th 2016

Transcript of The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Page 1: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

The DevOps journey in an Enterprise

Anders LundsgårdSenior Engineer

October 28th 2016

Page 2: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Who am I?

Anders Lundsgård• Senior Engineer (Developer & Technical Architect)• Scania Connected Services

- Delivery Engineering Team- Scania Cloud Adoption Team @anderslundsgard

Page 3: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

What I will talk about

Very short about Scania

Pre DevOps

Our DevOps movement

Final takeaways

3

Page 4: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Scania Connected Services

~200.000 connected vehicles~80 engineers

Page 5: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Clearly pointed out that IT should be strategic and transformationalAnd that we need to become more agile in our way of working.

2016 - New Managing DirectorClear direction and new organization

Page 6: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Disclaimer

The opinions expressed in this presentation and on the following slides are solely those of

the presenter and not necessarily those of Scania as a whole.

Page 7: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Our software evolution

‘90sSpaghetti Code

‘00sGrowing monoliths

‘10sMicroservices era

Page 8: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

The reality today

Page 9: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Scania – A growing horse

Page 10: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

We at infra need to be an enabler for developers. Enable automatic deployments

and roll-backs.

Creating tools/dashboards with relevant KPI’s so that the developer can fast and easily see

the consequences of a deployment.

- Mattias Järnhäll, Infrastructure manager 2014.03.03 on Scania social network

Page 11: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

in the early days…

DevOps movement

More features quicker Stability

Page 12: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

More features quicker Stability

Page 13: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Shared understanding and common goals

Page 14: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Agile explained

Page 15: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Agile explained

Page 16: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

DevOpsAutomation

Trust

Agile explained

Page 17: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Why Agile?

65%

Page 18: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Remembering the past… Continuous Integration

Version everything Automation

Claim over BlameTrunk based

development

Page 19: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Remembering the past…

Page 20: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

CODEIN PROD

PENDING CODE

NEWFEATURES

High focus on Limit Work In Progress

= INVENTORY

Page 21: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Version Control

Pull & Push several times a day

Continuous Integration

Server Target Servers(Dev, Staging, Prod)

Version Everything- Code- Tests- Configuration- Database- Infrastructure

10 minutes

Automation – Deployment Pipeline

DeployServer

CI D

Page 22: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Sounds weird?

Page 23: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Ops…

Page 24: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Reveal a Secret

Page 25: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Developers care about QA and Stability

if…they get accountable

Page 26: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

GUI

Database

Infra

Business Logic

Networking Storage

OS

Integration

Service 1

Service 2 Service

5 Service 7

Service 8

Service 10

Service 12

Service 14

Service 3

Service 4

Service 6

Service 9

Service 11

Service 15

Middleware

Service 13

User Interface

Security Monitoring

Even with Continuous Integration, fast delivery is hard with 50+

engineers and a large codebase.

Monolith

Page 27: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

All Infra needs

User Interface

Service 1

Service 2 Service

5 Service 7

Service 8

Service 10

Service 12

Service 14

Service 3

Service 4

Service 6

Service 9

Service 11

Service 15

Service 13

All Infra needs

All Infra needs

All Infra needs

All Infra needs

All Infra needs

All Infra needs

All Infra needs

GUI

Database

Infra

Business Logic

Why Microservices?1. Autonomous teams

2. Build, Test, Deploy SPEED

Microservices

Page 28: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Deploy != Release

Business decision

Feature Team concern

Feature Team concern

Page 29: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Feature Toggle

Page 30: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Tilda 4 makes release to UK market

Page 31: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Zero Downtime

Page 32: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Visibility

Page 33: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

10.000+ unique portal users per month

Page 34: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016
Page 35: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016
Page 36: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016
Page 37: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016
Page 38: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Check-in frequency

Project: Scania Connected Services

Page 39: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Change Stop

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420

20

40

60

80

100

120

140

160

Prod Deploys per week during 2016

* Infrastructure changes not included

Page 40: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

DevOps…

Page 41: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Feature Team

Feature Team

Feature Team

Feature Team

Integration

OS

Web

Monitoring

Change Management

NetworkSecurity

IaaT

Infra/Operations

GUI

BusinessLogic

Database

In the past

Database

Page 42: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Level 1

Level 2+3

Infrastructure As A Service

Infra/Operations

Feature Team

Feature Team

Feature Team

Feature Team

GUI

BusinessLogic

Database

Virtual Machine ESB Network Change Management Database Monitoring

Today

Page 43: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Infrastructure As A Service

Infra/Operations

Feature Team

Feature Team

Feature Team

Feature Team

GUI

BusinessLogic

Database

Virtual Machine Web server Load Balancer Change Management Monitoring

You build it You run it!

Infrastructure as code

Cultural Technical

Page 44: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

44

Enterprise IT challenges Different types of customer needs

? !I have an app. Can you install it

for me?Can you help me to help myself?

Page 45: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

45

Enterprise IT challenges The Legacy vs Cloud First

Culture

Page 46: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

“All in” on DevOps is harder in EU than in US

Page 47: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Collaboration > Automation

Good reads

Automation Business impact

Pair Programming

Collocate with coffee machine

Page 48: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

11,6

Page 49: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

49

200301401404500

Page 50: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

50

200301401404500

Page 51: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Final takeaways…

Page 52: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

“Don’t fight stupid, make more Awesome”

Page 53: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Use your technical skillsPoor little me. I’m just a Dev. What can I do?

Zero Downtime

Feature Toggles

Deploy becomes a part of your daily job

Deploy is decoupled from Release

Page 54: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Pipeline

Tests

Code‘90s ‘00s ‘10s

Software Delivery Through the Decades

Driven by Deadlines

Driven by Business metrics

Page 55: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Your Heroes are your Bottlenecks!

Version Control

Single point of failure

Single point of knowledge

Page 56: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

When a Real Hero Quits…

Page 57: The DevOps journey in an Enterprise - Scania @ Swisscom software day 2016

Thank You!

Anders Lundsgård

@anderslundsgard