Upgrade to Pro — share decks privately, control downloads, hide ads and more …

It's a small world after all. Full edition Fall 2019

It's a small world after all. Full edition Fall 2019

The world is changing fast. More precisely, the world is changing at increasing speed.

This means things that were not possible five years ago come into reach. Incumbent organizations need to adapt fast to keep up with new competitors that use new technologies easier, faster and better than they do. As a result, every aspect of software changes towards smaller. Even smaller teams or even micro-teams, less management, flatter organizations, even shorter cycles, and smaller components.

During this energizing and high-paced talk Sander discusses the Cynefin model, shows why software development goes so terribly wrong, how to move beyond Scrum and enterprise agile, why autonomy and self-organization are not as easy as it looks like, why traditional agile doesn't solve all modern-day issues, why continuous delivery leads to not doing projects or estimates anymore and why microservices are hard but essential as underlying foundation.

Sander Hoogendoorn

October 31, 2019
Tweet

More Decks by Sander Hoogendoorn

Other Decks in Technology

Transcript

  1. SANDER
    HOOGENDOORN
    @aahoogendoorn
    November 2019
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  2. THE TIMES
    THEY ARE A-CHANGIN'
    MUCH FASTER THAN YOU THINK
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  3. MOORE’S LAW
    The number of transistors in a
    dense integrated circuit
    doubles approximately every
    two years.

    View full-size slide

  4. 1954
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  5. 1981
    THE IBM PC 5150
    THE SIMPLEST CONFIGURATION HAS 16K ON-BOARD RAM AND USES AN AUDIO CASSETTE TO
    LOAD AND SAVE DATA. A FLOPPY DRIVE IS OPTIONAL. A HARD DRIVE WAS NOT SUPPORTED.
    A SYSTEM FOR HOME OR SCHOOL WITH A MEMORY OF 64K BYTES, A SINGLE DISKETTE DRIVE
    AND ITS OWN DISPLAY, WAS PRICED AROUND $3,000.
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  6. 2006
    AMAZON EC2
    AMAZON LAUNCHED ITS ELASTIC COMPUTE CLOUD (EC2) AS A COMMERCIAL WEB
    SERVICE THAT ALLOWS SMALL COMPANIES AND INDIVIDUALS TO RENT COMPUTERS
    ON WHICH TO RUN THEIR OWN COMPUTER APPLICATIONS.
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  7. ABOUT DISRUPTION
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  8. HOW LONG DID IT TAKE TO REACH 50 MILLION USERS?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  9. @aahoogendoorn | Creetion | It's a small world after all
    FINTECH
    CHALLENGES Apple announces Apple Card credit card

    View full-size slide

  10. WE LIVE IN A WORLD WHERE
    ANYONE CAN ENTER ANY MARKET,
    FROM ANYWHERE AT ANY TIME
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  11. WHERE SOFTWARE
    DEVELOPMENT WENT WRONG
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  12. ADDING FEATURE AFTER FEATURE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  13. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  14. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  15. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  16. @aahoogendoorn | Creetion | It's a small world after all
    DEPENDENCIES WILL KILL YOU EVERY TIME

    View full-size slide

  17. INVENTORS OF SMART THERMOSTAT TOON
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  18. CHALLENGES AT QUBY
    SURVIVING IN SMART ENERGY
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  19. DISRUPTION
    CHALLENGE 1
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  20. THE SMART ENERGY MARKET
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  21. LEGACY.
    WELL, WHO HASN’T GOT IT?
    CHALLENGE 2
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  22. SO… NOW WHAT?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  23. SANDER HOOGENDOORN
    Independent dad, speaker, author, traveler
    Freelance CTO, coach, architect, programmer
    CURRENTLY
    Chief Architect Quby
    BEFORE
    CTO ANVA, CTO Klaverblad Verzekeringen
    Global agile thought leader Capgemini
    sanderhoogendoorn.com
    aahoogendoorn
    aahoogendoorn
    [email protected]
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  24. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  25. WELCOME
    TO THE WORLD
    OF SMALL
    MOVEABLE
    PARTS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  26. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  27. THE
    CONTINUOUS
    CULTURE
    EVERYTHING WILL
    BE CONTINUOUS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  28. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  29. COMPLEX PROBLEMS REQUIRE CONTINUOUS EXPLORATION
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  30. “We are operating in a new and fast moving
    market. Nobody has invented a profitable
    business model for this market yet.”
    Arnoud Snijder
    Quby
    WHERE ARE WE?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  31. “In a chaotic context, searching for right answers
    would be pointless: the relationships between
    cause and effect are impossible to determine
    because they shift constantly and no manageable
    patterns exist — only turbulence. This is the realm
    of unknowables.”
    Dave Snowden
    CHAOTIC CONTEXTS
    @aahoogendoorn | Creetion | It's a small world after all
    “The chaotic domain is nearly always the best
    place for leaders to impel innovation.”

    View full-size slide

  32. LEARNING BY DOING
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  33. WATERFAIL?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  34. THE IRON TRIANGLE OF PROJECT MANAGEMENT?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  35. DETAILED PLANNING?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  36. FAVOR DELIVERING
    SMALL AND CONTINUOUSLY
    OVER EXECUTING PROJECTS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  37. MONOLITHICAL SPEED OF CHANGE
    Q1 Q2 Q3
    @aahoogendoorn | Creetion | It's a small world after all
    Monolith
    1.0
    Monolith
    2.0
    Monolith
    3.0

    View full-size slide

  38. @aahoogendoorn | Creetion | It's a small world after all
    DEPENDENCIES WILL KILL YOU

    View full-size slide

  39. THE SPEED OF CHANGE WITH SMALL SERVICES
    Account
    1.0
    Product
    1.0
    Create
    Order
    1.0
    Manage
    Docs
    1.0
    Account
    20
    Account
    3.0
    Account
    4.0
    Product
    2.0
    Product
    3.0
    Product
    4.0
    Product
    5.0
    Product
    6..0
    Create
    Order
    2.0
    Create
    Order
    3.0
    Manage
    Docs
    2.0
    Manage
    Docs
    3.0
    Q1 Q2 Q3
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  40. A LANDSCAPE OF SMALL SERVICES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  41. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  42. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  43. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  44. EVEN SHORTER CYCLES
    AGILE BEYOND CEREMONIES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  45. (AGILE == SCRUM)
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  46. LOWERING OUR FENCES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  47. DOGMAGILE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  48. YOU CAN’T JUST STEP ON A BOARD
    AND HIT THE GROUND RUNNING
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  49. ALPINE SKIING REQUIRES
    KNOWLEDGE AND EXPERIENCE
    AND SO DOES SOFTWARE DEVELOPMENT
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  50. To satisfy the customer through early and continuous
    delivery of valuable software
    @aahoogendoorn | Creetion | It's a small world after all
    THE AGILE MANIFESTO

    View full-size slide

  51. To satisfy the customer through early and continuous
    delivery of valuable software
    THE AGILE MANIFESTO
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  52. DELIVER SMALL
    AND
    CONTINUOUSLY
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  53. HOW OFTEN DO YOU RELEASE TO PRODUCTION?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  54. CONTINUOUS FLOW
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  55. AUTOMATE EVERYTHING
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  56. TEST FROM DAY ONE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  57. @aahoogendoorn | Creetion | It's a small world after all
    Manual
    tests
    Scenario
    tests
    Integration
    tests
    Unit
    tests
    Manual
    tests
    Scenario
    tests
    API test
    Unit
    tests

    View full-size slide

  58. AUTOMATE ALL YOUR TESTS
    Unit
    testing
    Static code
    analysis
    Integration
    tests
    Performance
    tests

    View full-size slide

  59. It talks to the database
    It communicates across the network
    It touches the file system
    It can’t run at the same time as any of your other tests
    You have to do special things to your environment
    (such as editing config files) to run it.
    Michael
    Feathers
    A TEST IS NOT A UNIT TEST IF
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  60. STATIC CODE ANALYSIS (SONARQUBE)
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  61. MINIMIZE MANUAL TESTING. IT SLOWS YOU DOWN
    Exploratory
    Testing,
    anyone?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  62. ACCEPTANCE TESTING
    RENDERS OBSOLETE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  63. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  64. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  65. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  66. TRADITIONAL AGILE DOESN’T
    SOLVE MODERN ISSUES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  67. LOW
    AVAILABILITY
    OF “RESOURCES”
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  68. WE’RE EVERYWHERE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  69. LOW AVAILABILITY
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  70. WE ALL NEED TO BE T-SHAPED
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  71. WORKING 9-TO-5 ?
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  72. WHY 9-TO-5 FAILS
    9-to-5 is a paradigm that prioritizes
    work over life
    One-size-fits-all doesn’t exist in
    current day society
    Excludes people who can’t
    commute
    Different people, different habits.
    Parenting is unpredictable ☺

    View full-size slide

  73. THE
    PROGRAMMERS
    MIND
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  74. HOW THE MINDS OF DEVELOPERS REALLY WORK
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  75. COMMUNICATION
    IS HARD
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  76. Sprint planning
    Refinements
    Daily stand-ups
    Management meetings
    OKR meetings
    Demo’s
    Retrospectives
    TOO MANY MEETINGS AND RITUALS
    Skype calls
    Guild meetings
    Backlog grooming
    T-shirt sizing
    Planning poker
    Sprint reviews
    Open floor plans
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  77. CLEAR COMMUNICATION IS KEY
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  78. WE DON’T NEED MORE COMMUNICATION,
    WE NEED BETTER COLLABORATION
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  79. FULL DAY REFINEMENTS WITH THE WHOLE TEAM?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  80. OPEN FLOOR
    PLANS
    OR HOW WE BECAME
    OUR COMPANY’S BROCHURE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  81. AUTONOMY
    AND
    SELF-ORGANIZATION
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  82. AUTONOMY
    AT WORK
    DECIDE
    WHAT TO DO,
    WHEN TO DO IT
    AND HOW TO DO IT
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  83. SELF-ORGANIZATION IS HARD
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  84. HOW TO DRAW AN OWL
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  85. AUTONOMOUS TEAMS?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  86. THE LIVING ROOM
    WORK SPACE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  87. SELF-ORGANIZATION DOES NOT
    MEAN MANDATORY FUN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  88. FEWER RULES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  89. MEDAN, INDONESIA. SEPTEMBER 2018
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  90. DE MEERN, THE NETHERLANDS. JULY 2018
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  91. WE SUCK
    AT ESTIMATION
    “MODERN” ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  92. THE LAW OF LARGE NUMBERS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  93. PLANNING POKER? T-SHIRT SIZING?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  94. COUNTING BEATS PLANNING POKER
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  95. RED SPRINTS
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  96. THE RED SPRINT ANTI-PATTERN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  97. To satisfy the customer through early and continuous
    delivery of valuable software
    @aahoogendoorn | Creetion | It's a small world after all
    THE AGILE MANIFESTO

    View full-size slide

  98. DEVELOPING
    SOFTWARE
    IS COMPLEX
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  99. The programmer has to be able to think
    in terms of conceptual hierarchies that
    are much deeper than a single mind
    ever needed to face before.
    Edsger Dijkstra
    CONCEPTUAL HIERARCHIES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  100. SOFTWARE DEVELOPMENT IS COMPLEX
    Architect
    Domain
    expert
    UX
    Front-end
    Back-end
    Mobile
    QA
    Ops
    AWS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  101. THE CURRENT STACK
    Tools Enterprise Architect, IntelliJ, WebStorm, CLion, Visual Studio Code, LucidChart, Tableau,
    Zeplin PowerBi, QtCreator, Crowdin, PostMan, Jira, Confluence, Office365, TestFairy Languages
    JavaScript Java, C, C++, HTML, CSS, Scala, UML, SQL, Python, JSON, XML, Bash, Groovy, Lua, PHP,
    BoxTalk Frameworks Qt, Spring, Spring Boot, Spring Cloud Contract, Spring fox Swagger, Pact JVM,
    Resilience4j Liquibase, Slf4j, cypress.io, React, Backbone.js, Knockout, Mockito, Cucumber,
    Behave, Gurkin, node.js Lombok, JUnit, Debezium, dockerize, Serverless, CPPUtest, CUtest, Babel,
    Apache Spark, Hive Hibernate, QMF, Akka (Toolkit), Gatling, Apache CXF, TestNG, RestAssured
    Infra GitLab, Mesos Marathon, Consul, Jenkins, Sysdig, Apigee, count.ly, Docker, Terraform,
    Artifactory, Logstash Zookeeper, Coreos, ActiveMQ, Drupal, PagerDuty, Swagger, HTTP/s, MQTT,
    OpenVPN, Apache Tomcat Undertow, Jetty, AWS EC2, Beanstalk, S3, Lambda, CloudWatch,
    CloudTrail, SQS, SNS, Step Functions API Gateway, VPC, CloudFormation, IoT, ELB, GuardDuty,
    IAM, KMS, S3 Glacier, Elasticache Other Selenium, Kibana, ElasticSearch, MySQL, Redis,
    DataBricks, iWelcome, WSO2, OKTA, Cordova, Kentico Slack, Runscope, Liferay, Google
    Authenticator, Git, SonarQube, JWT, Google Repo, npm, Maven, Make Cmake, SBT, SOAP,
    Roadmunk, Illustrator, Runners, PhoneGap, ESLint, Z-Wave, Zigbee, WSL
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  102. THE (AGILE)
    FRAMEWORK
    DOESN’T DO
    THE WORK.
    IT’S YOU
    MODERN ISSUE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  103. WHAT DOES BEING AGILE REALLY MEAN?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  104. “WE ARE UNCOVERING
    BETTER WAYS OF DEVELOPING
    SOFTWARE, BY DOING IT
    AND HELPING OTHERS DO IT”
    AGILE MANIFESTO, 2001
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  105. “WE ARE UNCOVERING
    BETTER WAYS OF DEVELOPING
    SOFTWARE, BY DOING IT
    AND HELPING OTHERS DO IT”
    AGILE MANIFESTO, 2001
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  106. DOES AGILE SCALE?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  107. ROLES IN DISCIPLINED AGILE 2.0 (OUTSIDE OF THE TEAM)
    Chief architecture
    owner
    Chief product owner
    Community of
    practice lead
    Database
    administrator Enterprise architect
    Functional manager
    Human resource
    manager
    Governor
    Operations engineers
    Process engineers Release engineers
    Reuse engineers
    Operations manager Process manager
    Release manager
    Portfolio manager
    Product manager
    Support manager
    Support engineers
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  108. Where’s the customer?
    DOES SCALING AGILE REQUIRE AN ENTERPRISE PROCESS?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  109. @aahoogendoorn | Creetion | It's a small world after all
    SAFE 5.0. THEY’VE LISTENED?

    View full-size slide

  110. @aahoogendoorn | Creetion | It's a small world after all
    SOCIOCRACY?

    View full-size slide

  111. HOLACRACY AND HIERARCHY?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  112. LET’S ALL COPY SPOTIFY!
    You are not Spotify!
    (unless you actually are Spotify)
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  113. ALWAYS THINK
    FOR YOURSELF!
    NEVER JUST COPY
    SOMEONE ELSE’S MODEL
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  114. KEEP IT SMALL AND SIMPLE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  115. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  116. OPTIMIZE FOR SPEED, AGILITY
    AND ADAPTABILITY
    THE INNOVATION BOARD AND THE FUNNEL
    @aahoogendoorn | Creetion | It's a small world after all
    Continue

    View full-size slide

  117. THE DOT AT THE HORIZON
    “WE AIM TO BECOME THE MOST SOUGHT-AFTER CONSULTANCY IN EUROPE”
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  118. THE DOT AT THE HORIZON
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  119. YOU ARE HERE

    View full-size slide

  120. MINIMAL VIABLE
    PRODUCTS
    Build products
    feature by feature
    Think small
    Deploy early
    and frequently
    Learn continuously

    View full-size slide

  121. PORTFOLIO
    AND FUNNEL
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  122. PRODUCTS AND FEATURES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  123. BOUNDED CONTEXTS
    Waste
    Energy
    Water
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  124. THE FUNNEL
    Waste
    Energy
    Water
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  125. PORTFOLIO BOARD
    Waste
    Energy
    Water
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  126. PORTFOLIO BOARD
    Waste
    Energy
    Water
    Is it
    actionable?
    Is it too
    big?
    Does it help
    us reach our
    goal?
    Do we
    need this
    now?
    Someyday
    maybe?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  127. COLLECTIVES
    AND MICROTEAMS
    TOWARDS SMALLER,
    SHORTER, FASTER
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  128. TRADITIONAL TEAMS AGILE TEAMS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  129. THE NEW COOL COLLECTIVE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  130. A COLLECTIVE
    Water
    Secu
    rity
    Infr
    a
    Market
    research
    Architect
    UX
    Front-end Mobile
    QA
    Ops
    AWS
    Expe
    rt
    Dev
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  131. NO TWO WORK ITEMS REQUIRE THE SAME SKILLSET
    Architect
    Domain
    expert
    Back-end
    QA
    Architect
    Front-end
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  132. MICROTEAM RECIPE
    1. Pick
    2. Form
    3. Discuss
    4. Work
    5. Report as done
    6. Disband
    7. Repeat

    View full-size slide

  133. MICROTEAMS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  134. MICROTEAMS
    IN REAL-LIFE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  135. MICROTEAMS
    IN REAL-LIFE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  136. MICROTEAMS
    IN REAL-LIFE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  137. MICROTEAMS
    IN REAL-LIFE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  138. WHY MICROTEAMS?
    Leadership is contextual
    Better communication
    Broaden your skills fast
    Sprints become less relevant
    Fewer estimates
    Refinements become easy
    Work where you want
    Work when you want
    Daily progress

    View full-size slide

  139. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  140. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  141. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  142. ENTER MICROSERVICES
    ARCHITECTURE
    THE WORLD OF EVEN SMALLER COMPONENTS THAT DO ONE THING ONLY
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  143. MONOLITHS
    HARD TO DELIVER
    HARDER TO TEST
    IMPOSSIBLE TO MAINTAIN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  144. In short, the microservice architectural style is an approach
    to developing a single application as a suite of small services,
    each running in its own process and communicating with
    lightweight mechanisms, often an HTTP resource API.
    These services are built around business capabilities and
    independently deployable by fully automated deployment
    machinery. There is a bare minimum of centralized
    management of these services, which may be written in
    different programming languages and use different data
    storage technologies.
    Martin Fowler
    MICROSERVICES ARCHITECTURE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  145. In short, the microservice architectural style is an approach
    to developing a single application as a suite of small services,
    each running in its own process and communicating with
    lightweight mechanisms, often an HTTP resource API.
    These services are built around business capabilities and
    independently deployable by fully automated deployment
    machinery. There is a bare minimum of centralized
    management of these services, which may be written in
    different programming languages and use different data
    storage technologies.
    Martin Fowler
    MICROSERVICES ARCHITECTURE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  146. ARE YOU
    SOLVING
    THE RIGHT
    PROBLEMS?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  147. SOLVING THE RIGHT PROBLEMS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  148. WHO DOESN’T HAVE A SYSTEM
    THAT IS TOO BIG
    AND THAT SHOULD BE BROKEN UP?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  149. ON-PREMISE LEGACY
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  150. ANCIENT LANGUAGES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  151. AGING PROGRAMMERS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  152. SO WHAT DID
    WE LEARN?
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  153. For the things we have to learn before we can
    do them, we learn by doing them
    Aristotle
    ON LEARNING
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  154. WHAT DID WE LEARN SO FAR?
    Define goals and purpose
    Take baby steps
    Define your roadmap
    Set up you guiding principles
    Model your landscape
    Apply evolutionary architectures
    Define your patterns
    Build apps as microservices
    Design for single responsibility
    Split in bounded contexts and aggregates
    Foster immutability
    Let services own their data
    Standardize your API design
    Avoid point-to-point contracts
    Interface defensively
    Architecture follows communication channels
    and vice versa
    Test from day one
    Secure by design
    Deploy independently and continuously
    Become cloud native
    Don’t innovate commodities
    Choose a cloud for simplicity and ease-of-use

    View full-size slide

  155. FIONA CORE VALUES
    TRAVEL LIGHT
    We travel as light as possible.
    We only solve one small problem at a time.
    START CLEAN
    We isolate Fiona from our other stacks.
    We realize a clean new stack.
    DECIDE LATE
    Requirements and technology changes fast.
    Decisions are made as late as possible.
    KEEP IT SIMPLE
    Decisions favor simplicity and ease of use.
    What problem do we solve now?

    View full-size slide

  156. ORGANIZE FOR CHANGE
    MICROSERVICES ARE NO WALK IN THE PARK
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  157. Organizations which design systems are
    constrained to produce designs which are
    copies of the communication structures of
    these organizations.
    Melvin Conway
    CONWAY’S LAW
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  158. Any change to communication patterns of
    groups and individuals will influence the
    shape of their solutions.
    Thus the design of a system will influence the
    de facto workings of an organization.
    Melvin Conway
    REVERSE CONWAY
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  159. Evolve your team and organizational
    structure to promote your desired
    architecture.
    Ideally your technology architecture will
    display isomorphism with your business
    architecture.
    Melvin Conway
    INVERSE CONWAY MANEUVER
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  160. INFRASTRUCTURE
    DOESN’T MATTER. YET
    NOT NOW. MAYBE LATER
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  161. It is not the strongest of the architectures
    that survives, nor the most complex that
    survives. It is the one that is most adaptable
    to change.
    Charles Darwin
    EVOLUTIONARY ARCHITECTURE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  162. WRITE PROGRAMS THAT DO ONE THING
    AND DO IT WELL
    (FROM THE UNIX PHILOSOPHY)
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  163. DOMAIN DRIVEN DESIGN
    TACKLING COMPLEXITY IN THE HEART OF SOFTWARE MICROSERVICES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  164. WHAT WE
    LEARNED
    LET SERVICES
    OWN THEIR OWN DATA
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  165. WHAT WE
    LEARNED
    STANDARDIZE
    API DESIGN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  166. AUTOMATING PIPELINES
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  167. AUTOMATE EVERYTHING
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  168. DON’T INNOVATE
    ON COMMODITIES
    YOU CAN ONLY SPEND YOUR TIME ONCE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  169. LESS INFRASTRUCTURE
    BECOMING CLOUD NATIVE
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  170. IMMUTABLE INFRASTRUCTURE
    Erwin
    John
    Frank
    Amazon, Microsoft, Google, …
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  171. MONOLITHS VERSUS MICROSERVICES?
    MÖNÖLIT MICRÖ
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  172. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  173. IN RETRO
    SPECTIVE
    SOME FINAL THOUGHTS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  174. COMPLEX PROBLEMS REQUIRE CONTINUOUS EXPLORATION
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  175. IN EVEN
    SHORTER
    CYCLES
    CONTINUOUS
    FLOW
    BUILD
    SMALL
    SERVICES
    FEATURES
    OVER PROJECTS
    WITH EVEN
    SMALLER
    TEAMS
    SELF-ORGANIZING
    AND AUTONOMOUS
    IN EVEN
    SMALLER
    COMPONENTS
    MICROSERVICES
    AND SERVERLESS
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  176. BEYOND THE POINT OF NO RETURN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  177. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  178. ALWAYS THINK FOR
    YOURSELF!
    NEVER JUST COPY SOMEONE ELSE’S MODEL
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  179. TAKE
    BABY STEPS
    ORGANIZE FOR CHANGE
    IF YOU GET STUCK, YOU’RE
    THINKING TOO BIG
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  180. IT ONLY TAKES ONE PERSON
    TO START A CHANGE: YOU
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  181. THE BEST INDUSTRY TO BE IN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  182. THE BEST INDUSTRY TO BE IN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  183. NEVER STOP LEARNING
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  184. AND NEVER FORGET TO HAVE FUN
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  185. @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  186. IF ALL ELSE FAILS, TRY
    RM –RF NODE_MODULES && NPM INSTALL
    @aahoogendoorn | Creetion | It's a small world after all

    View full-size slide

  187. REFERENCES
    AND QUESTIONS
    www.sanderhoogendoorn.com
    aahoogendoorn
    aahoogendoorn
    [email protected]
    quby.com/careers
    sanderhoogendoorn.com/decks-and-handouts

    View full-size slide