Microservices vs Monoliths

Microservices vs Monoliths

Microservices!

There are undoubtedly some technical benefits, but also plenty of nagging questions. Is it in one code base? Can it be deployed fast and easily? In truth, many of the benefits of companies adopting microservices architectures vs monoliths are actually about cultural and organizational change.

Can the organizational characteristics associated with one not exist in the other? I believe that companies that fail to adopt microservices tend to do so because they fail to recognize the importance of the culture.

This talk will help you work out which benefits from a microservices architecture are cultural changes that can happen around any codebase, and which actions you can take in your organization to find the value of the microservices movement for you.

037360597d7b529eed1e61bb2329abc9?s=128

Michael Brunton-Spall

May 29, 2015
Tweet

Transcript

  1. None
  2. GDS Michael Brunton-Spall I work for the Government Digital Service

  3. GDS Michael Brunton-Spall Everything you know about microservices is wrong

  4. GDS Michael Brunton-Spall What if I said the word microservices

    has no meaning
  5. GDS Michael Brunton-Spall I don't think you understand microservices

  6. GDS Michael Brunton-Spall I don't understand microservices

  7. GDS Michael Brunton-Spall What is a monolith?

  8. GDS Michael Brunton-Spall The original Guardian CMS

  9. GDS Michael Brunton-Spall New Guardian CMS?

  10. GDS Michael Brunton-Spall Etsy?

  11. GDS Michael Brunton-Spall Facebook?

  12. GDS Michael Brunton-Spall These terms are folksonomies

  13. GDS Michael Brunton-Spall What you mean by monolith and what

    I mean by monolith are different
  14. GDS Michael Brunton-Spall Sam's talk on Wednesday started by defining

    microservices…
  15. GDS Michael Brunton-Spall … But we often talk about them

    without defining them
  16. GDS Michael Brunton-Spall

  17. GDS Michael Brunton-Spall So what's the confusion?

  18. GDS Michael Brunton-Spall What if I told you we've been

    confusing cause and effect?
  19. GDS Michael Brunton-Spall “Microservices represent a new organisational model as

    much as a new architectural model” @JeffSussna http://blog.ingineering.it/post/110741562854/microservices-have-you-met-devops
  20. GDS Michael Brunton-Spall The netflix model is based on systems

    thinking, not process thinking
  21. GDS Michael Brunton-Spall But the only output you can see

    is the processes and rules
  22. GDS Michael Brunton-Spall Sam's principles of microservices http://www.slideshare.net/spnewman/principles-of-microservices-velocity

  23. GDS Michael Brunton-Spall Principles of Microservices Culture of Automation Hide

    Implementation Details Decentralise all the things Consumer first Deploy independently Isolate failure Highly observable Modelled around business domain
  24. GDS Michael Brunton-Spall But wait – these aren't really technical

  25. GDS Michael Brunton-Spall Culture of communication

  26. GDS Michael Brunton-Spall Principles of Microservices Culture of Automation Hide

    Implementation Details Decentralise all the things Consumer first Deploy independently Isolate failure Highly observable Modelled around business domain
  27. GDS Michael Brunton-Spall Culture of automation

  28. GDS Michael Brunton-Spall Principles of Microservices Culture of Automation Hide

    Implementation Details Decentralise all the things Consumer first Deploy independently Isolate failure Highly observable Modelled around business domain
  29. GDS Michael Brunton-Spall Culture of autonomy

  30. GDS Michael Brunton-Spall Principles of Microservices Culture of Automation Hide

    Implementation Details Decentralise all the things Consumer first Deploy independently Isolate failure Highly observable Modelled around business domain
  31. GDS Michael Brunton-Spall Culture of resilience

  32. GDS Michael Brunton-Spall Principles of Microservices Culture of Automation Hide

    Implementation Details Decentralise all the things Consumer first Deploy independently Isolate failure Highly observable Modelled around business domain
  33. GDS Michael Brunton-Spall Culture of transparency

  34. GDS Michael Brunton-Spall Principles of Microservices Culture of Automation Hide

    Implementation Details Decentralise all the things Consumer first Deploy independently Isolate failure Highly observable Modelled around business domain
  35. GDS Michael Brunton-Spall What if you have the cultural features

    but not the technical?
  36. GDS Michael Brunton-Spall What if you have the technical but

    not the cultural?
  37. GDS Michael Brunton-Spall Principles Autonomy Resilience Transparency Communication Automation

  38. GDS Michael Brunton-Spall You can do this without changing a

    line of code
  39. GDS Michael Brunton-Spall Build a culture of communication

  40. GDS Michael Brunton-Spall You (Engineering and Operations) exist purely for

    the benefit of the business
  41. GDS Michael Brunton-Spall “Your software should sustainably minimise time to

    business impact” @tastapod
  42. GDS Michael Brunton-Spall Other people in your organisation don't care

    about code
  43. GDS Michael Brunton-Spall Understand the domain, the processes, the people

  44. GDS Michael Brunton-Spall Build a culture of automation

  45. GDS Michael Brunton-Spall Automate as much as possible

  46. GDS Michael Brunton-Spall If anybody does anything manually, you should

    take time to automate it
  47. GDS Michael Brunton-Spall Aim for repeatability and auditability

  48. GDS Michael Brunton-Spall Constantly improve your automation

  49. GDS Michael Brunton-Spall Build a culture of resilience

  50. GDS Michael Brunton-Spall Give developers pagers

  51. GDS Michael Brunton-Spall Developers should be exposed to the pain

    they cause
  52. GDS Michael Brunton-Spall They'll soon value resilience!

  53. GDS Michael Brunton-Spall “You break it, you fix it”

  54. GDS Michael Brunton-Spall “You break it and cost £X million,

    you are responsible"
  55. GDS Michael Brunton-Spall Build a culture of autonomy

  56. GDS Michael Brunton-Spall Small teams, working on small areas of

    code
  57. GDS Michael Brunton-Spall Able to release as often as possible

  58. GDS Michael Brunton-Spall Automate deploys

  59. GDS Michael Brunton-Spall Hand the keys for deployment to the

    development team
  60. GDS Michael Brunton-Spall Build a culture of transparency

  61. GDS Michael Brunton-Spall Log everything

  62. GDS Michael Brunton-Spall Give everyone access to the logs

  63. GDS Michael Brunton-Spall Monitor everything

  64. GDS Michael Brunton-Spall "If it moves, graph it. If it

    doesn't move, graph it anyway just in case it does” @lozzd's law
  65. GDS Michael Brunton-Spall Dashboards should be easy to build and

    configure
  66. GDS Michael Brunton-Spall These cultural changes don't require technology changes

  67. GDS Michael Brunton-Spall But when you start adopting this culture

  68. GDS Michael Brunton-Spall Technology that doesn't support the culture will

    get changed
  69. GDS Michael Brunton-Spall Focus on culture first

  70. GDS Michael Brunton-Spall Build technology to support the culture

  71. None