DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A...

47
DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan Jandreau & Ben Hamilton, 2018

Transcript of DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A...

Page 1: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

DevOps in a Chaotic Situation“A practical guide for when everything is on fire, and why it’s all going to be OK”

Dan Jandreau & Ben Hamilton, 2018

Page 2: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

2 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Agenda

o Introductions

o What is DevOps?

o The flavors of DevOps

o Story Time

o Takeaways

Page 3: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

3 © 2016 IDEXX Laboratories, Inc. All rights reserved.

> whoami

Dan Jandreau

o IDEXX since 2015

o Intern turned DevOps

o Likes serverless

architecture a little to

much

o Twitter: @_dandro_

Page 4: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

4 © 2016 IDEXX Laboratories, Inc. All rights reserved.

> whoami

Ben Hamilton

o IDEXX since 2013

o DevSecOps

o Just wants you to stop

putting private ssh keys

in Github

o Twitter: @possiblyben

Page 5: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

What is DevOps?

Page 6: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

6 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

o A fancy word managers

throw around?

o Something you put on

your LinkedIn to look

fancy?

o A person who knows

*gasp* “the cloud”?

o Tech buzzword?

Page 7: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

7 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

o A fancy word managers

throw around?

o Something you put on

your LinkedIn to look

fancy?

o A person who knows

*gasp* “the cloud”?

o Tech buzzword?

o A mindset

o A partner

o A teammate

o An expert

Page 8: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

8 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

Page 9: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

9 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

Page 10: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

10 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

Page 11: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

11 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

• Software Development

Page 12: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

12 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

• Software Development + IT Professionals

Page 13: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

13 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

• Software Development + IT Professionals

• Automating the SDLC

Page 14: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

14 © 2016 IDEXX Laboratories, Inc. All rights reserved.

What is DevOps?

• Software Development + IT Professionals

• Automating the SDLC

• Infrastructure as Code

Page 15: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

The Flavors of DevOps (explained in GIFs)

Page 16: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

16 © 2016 IDEXX Laboratories, Inc. All rights reserved.

The Flavors of DevOps (explained in GIFS)

The Siloed Expert

Page 17: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

17 © 2016 IDEXX Laboratories, Inc. All rights reserved.

The Flavors of DevOps (explained in GIFS)

The Integrated Expert

Page 18: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

18 © 2016 IDEXX Laboratories, Inc. All rights reserved.

The Flavors of DevOps (explained in GIFS)

The Team

Page 19: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

19 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Welcome to DevOps.

Here’s your Fire Extinguisher

Page 20: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

A story: IDEXX Communicator

Page 21: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

21 © 2016 IDEXX Laboratories, Inc. All rights reserved.

A Use Case

o The Product:

• Direct messaging between a Veterinary Clinic and it’s patients

Page 22: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

22 © 2016 IDEXX Laboratories, Inc. All rights reserved.

A Use Case

o The Product:

• Direct messaging between a Veterinary Clinic and it’s patients

o The Goal:

• Create a lightweight responsive javascript web application

• Small feedback loops

• Fast delivery

Page 23: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

23 © 2016 IDEXX Laboratories, Inc. All rights reserved.

A Use Case

o The Product:

• Direct messaging between a Veterinary Clinic and it’s patients

o The Goal:

• Create a lightweight responsive javascript web application

• Small feedback loops

• Fast delivery

o The Constraints:

• Kanban methodology

• Rapid Iteration / Rapid Development

• Deep integration with two other IDEXX development teams

Page 24: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

24 © 2016 IDEXX Laboratories, Inc. All rights reserved.

A Use Case

What this sounds like

Page 25: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

25 © 2016 IDEXX Laboratories, Inc. All rights reserved.

A Use Case

What it’s actually like

Page 26: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

The Challenges

Page 27: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

27 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Speed vs. Quality

o What I learned:

• Throw your best practices out the window

• Get ready for not even plans A or B, but plans C and D

• All of it is going to be bad. All of it.

• It’s OK to write subpar code

Page 28: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

28 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Speed vs. Quality

o What I learned:

• Throw your best practices out the window

• Get ready for not even plans A or B, but plans C and D

• All of it is going to be bad. All of it.

• It’s OK to write subpar code

o Example:

• Non-immutable infrastructure to create environments

• Involved build / deploy process

• Re-architecting about once a week

Page 29: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

29 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Speed vs. Quality

o What I learned:

• Throw your best practices out the window

• Get ready for not even plans A or B, but plans C and D

• All of it is going to be bad. All of it.

• It’s OK to write subpar code

o Example:

• Non-immutable infrastructure to create environments

• Involved build / deploy process

• Re-architecting about once a week

o Solutions:

• Documentation is your friend

• Make your decisions knowing the future

Page 30: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

30 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Changing many processes at once

o What I learned:

• Experienced Devs + Untrained languages = Friction

• Communication is key

• Mapping ideas to previous workflows is ok to baseline

• Things may feel slow, but they’re actually moving quickly

Page 31: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

31 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Changing many processes at once

o What I learned:

• Experienced Devs + Untrained languages = Friction

• Communication is key

• Mapping ideas to previous workflows is ok to baseline

• Things may feel slow, but they’re actually moving quickly

o Example:

• Java to Javascript

• Agile to Kanban

• Integrated Devops

Page 32: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

32 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Changing many processes at once

o What I learned:

• Experienced Devs + Untrained languages = Friction

• Communication is key

• Mapping ideas to previous workflows is ok to baseline

• Things may feel slow, but they’re actually moving quickly

o Example:

• Java to Javascript

• Agile to Kanban

• Integrated Devops

o Solutions:

• Listen to your Devs, work on compromise

• Work closely with product

• Always keep yourself in check

Page 33: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

33 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Multiple team alignment

o What I learned:

• Assumptions are bad

• Your way isn’t the best way

• Alignment helps give clarity

Page 34: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

34 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Multiple team alignment

o What I learned:

• Assumptions are bad

• Your way isn’t the best way

• Alignment helps give clarity

o Example:

• Needing data from API’s that aren’t available yet

• Similar but yet different implementations

Page 35: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

35 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Multiple team alignment

o What I learned:

• Assumptions are bad

• Your way isn’t the best way

• Alignment helps give clarity

o Example:

• Needing data from API’s that aren’t available yet

• Similar but yet different implementations

o Solutions:

• Twice a week check in

• Work with leadership on needs

• Always have alternate solutions

Page 36: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

36 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Rapid Iteration / Rapid Development

o What I learned:

• Small feedback loops are important

• Company firsts do not allow you to leverage domain knowledge

• DevOps can be included in this!

o Examples:

• Next day backlog stories

• DevOps being involved very early on in the process

• Iteration of architecture

o Solutions:

• Create a close relationship with your product owner

• Work with your dev manager / tech lead on an appropriate time for

DevOps to be involved

• Be ok with scrapping everything

Page 37: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

37 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Rapid Iteration / Rapid Development

o What I learned:

• Small feedback loops are important

• Company firsts do not allow you to leverage domain knowledge

• DevOps can be included in this!

Page 38: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

38 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Rapid Iteration / Rapid Development

o What I learned:

• Small feedback loops are important

• Company firsts do not allow you to leverage domain knowledge

• DevOps can be included in this!

o Examples:

• Next day backlog stories

• DevOps being involved very early on in the process

• Iteration of architecture

Page 39: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

39 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Rapid Iteration / Rapid Development

o What I learned:

• Small feedback loops are important

• Company firsts do not allow you to leverage domain knowledge

• DevOps can be included in this!

o Examples:

• Next day backlog stories

• DevOps being involved very early on in the process

• Iteration of architecture

o Solutions:

• Create a close relationship with your product owner

• Work with your dev manager / tech lead on an appropriate time for

DevOps to be involved

• Be ok with scrapping everything

Page 40: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

Conclusions

Page 41: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

41 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Conclusions

1. Fires will inevitably happen.

Page 42: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

42 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Conclusions

1. Fires will inevitably happen.

2. The closer you are with your

developers and product, the happier

you will be

Page 43: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

43 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Conclusions

1. Fires will inevitably happen.

2. The closer you are with your

developers and product, the happier

you will be

3. You will never get it right the first try

Page 44: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

44 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Conclusions

1. Fires will inevitably happen.

2. The closer you are with your

developers and product, the happier

you will be

3. You will never get it right the first try

4. Iteration leads to innovation

Page 45: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

45 © 2016 IDEXX Laboratories, Inc. All rights reserved.

Thanks Everyone!

LinkedIn:

https://www.linkedin.com/in/danieljandreau

https://www.linkedin.com/in/hamiltonbenjamin/

Email:

[email protected]

[email protected]

Web: https://careers.idexx.com/

Page 46: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan
Page 47: DevOps in a Chaotic Situation - Technology Community · DevOps in a Chaotic Situation “A practical guide for when everything is on fire, and why it’s all going to be OK” Dan

47 © 2016 IDEXX Laboratories, Inc. All rights reserved.

IDEXX is greenPlease project (don’t print) this presentation.