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 Slide

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

    View Slide

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

    View Slide

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

    View 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 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 Slide

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

    View Slide

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

    View Slide

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

    View 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  17. Click here

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  24. 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 Slide

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

    View Slide

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

    View Slide

  27. 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 Slide

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

    View Slide

  29. 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 Slide

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

    View Slide

  31. “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 Slide

  32. “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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  38. 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 Slide

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

    View Slide

  40. 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 Slide

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

    View Slide

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

    View 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 Slide

  44. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  51. 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 Slide

  52. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  58. @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 Slide

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

    View Slide

  60. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View 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 Slide

  66. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  73. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

  77. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  83. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  98. 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 Slide

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

    View Slide

  100. 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 Slide

  101. 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 Slide

  102. 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 Slide

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

    View Slide

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

    View 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 Slide

  106. “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 Slide

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

    View Slide

  108. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  118. 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 Slide

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

    View Slide

  120. YOU ARE HERE

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  127. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

  131. 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 Slide

  132. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  139. 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 Slide

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

    View 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 Slide

  142. 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 Slide

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

    View Slide

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

    View 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 Slide

  146. 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 Slide

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

    View Slide

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

    View Slide

  149. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  154. 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 Slide

  155. 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 Slide

  156. 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 Slide

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

    View Slide

  158. 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 Slide

  159. 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 Slide

  160. 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 Slide

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

    View Slide

  162. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  176. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

  180. 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide