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

Post on 16-Apr-2017

425 views 1 download

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

The DevOps journey in an Enterprise

Anders LundsgårdSenior Engineer

October 28th 2016

Who am I?

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

- Delivery Engineering Team- Scania Cloud Adoption Team @anderslundsgard

What I will talk about

Very short about Scania

Pre DevOps

Our DevOps movement

Final takeaways

3

Scania Connected Services

~200.000 connected vehicles~80 engineers

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

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.

Our software evolution

‘90sSpaghetti Code

‘00sGrowing monoliths

‘10sMicroservices era

The reality today

Scania – A growing horse

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

in the early days…

DevOps movement

More features quicker Stability

More features quicker Stability

Shared understanding and common goals

Agile explained

Agile explained

DevOpsAutomation

Trust

Agile explained

Why Agile?

65%

Remembering the past… Continuous Integration

Version everything Automation

Claim over BlameTrunk based

development

Remembering the past…

CODEIN PROD

PENDING CODE

NEWFEATURES

High focus on Limit Work In Progress

= INVENTORY

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

Sounds weird?

Ops…

Reveal a Secret

Developers care about QA and Stability

if…they get accountable

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

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

Deploy != Release

Business decision

Feature Team concern

Feature Team concern

Feature Toggle

Tilda 4 makes release to UK market

Zero Downtime

Visibility

10.000+ unique portal users per month

Check-in frequency

Project: Scania Connected Services

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

DevOps…

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

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

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

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?

45

Enterprise IT challenges The Legacy vs Cloud First

Culture

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

Collaboration > Automation

Good reads

Automation Business impact

Pair Programming

Collocate with coffee machine

11,6

49

200301401404500

50

200301401404500

Final takeaways…

“Don’t fight stupid, make more Awesome”

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

Pipeline

Tests

Code‘90s ‘00s ‘10s

Software Delivery Through the Decades

Driven by Deadlines

Driven by Business metrics

Your Heroes are your Bottlenecks!

Version Control

Single point of failure

Single point of knowledge

When a Real Hero Quits…

Thank You!

Anders Lundsgård

@anderslundsgard