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

The future is already here – Mastering the challenges of the coming years

The future is already here – Mastering the challenges of the coming years

This slide deck is about the probably most pressing challenges, IT will face in the upcoming years and options to address those challenges. It starts with describing the challenges and its effects (not only) on IT. Then a set of measures to address those challenges is sketched.

It is also discussed that the measures presented should be pondered together because they tend to balance or reinforce each other depending on the concrete measure which provides a nice decision framework towards a more responsible IT.

To complement the measures presented, a set of concrete potential actions is sketched and some ideas how to get the transition started – plus some extra hints for software architects.

As always, the voice track is missing. Still, I hope the slides also offer a few ideas worth pondering.

Uwe Friedrichsen

November 29, 2023
Tweet

More Decks by Uwe Friedrichsen

Other Decks in Technology

Transcript

  1. The future is already here Mastering the challenges of the

    coming years Uwe Friedrichsen – codecentric AG – 2008-2023
  2. Volatility – Things change dynamically Uncertainty – Lack of predictability

    Complexity – No long-term upfront planning Ambiguity – Unclear meaning of signals
  3. Drivers of VUCA Mostly unpredictable market behavior Exception: Non-efficient markets

    Future effects very hard to predict Consequences of adverse events unpredictable Future effects unpredictable Production processes, supply chain, … From a traffic jam to COVID Chip crisis, supply chain crisis, … Post-industrial markets Supply >> Demand Highly dynamic Geo-political developments Power structures shift Economic Political Over-optimization Very narrow tolerance ranges Extremely vulnerable to deviations from the norm Very long recovery times Climate crisis (Finally) becoming a palpable factor Unchecked complexity
  4. Business is IT. IT is business. Business and IT are

    the same side of the same coin. The other side are the market and your customers.
  5. Complexity drivers in IT Ongoing digital transformation CV-driven software development

    Trying to solve non-tech problems with technology Project-centric thinking Local, short-term optimizations Recurring “cleanup” initiatives Never completed, only adding more complexity Never retiring old technologies Falling for FOMO Chasing the next technology hype Efficiency obsession Yearly planning cycles Company self-absorbedness Neglecting effectiveness …
  6. Nobody knows what our IT landscapes do. We can only

    guess why they are running. We can only guess how to evolve them. To solve the problem, we add more complexity.
  7. Indispensability Ecological Going green in IT Social Sustainable for everyone

    involved Technical Creating dependable systems Sustainability Economical Surviving in the long run VUCA Complexity
  8. VUCA Indispensability Ecological Economical Social Technical Resilience Sustainability Capabilities Complexity

    Stability Maximize MTBF (before resilience) Robustness Ability to handle expected adverse events (partial resilience) Surprises Ability to handle unexpected adverse events (actual resilience) Anti-fragility Improve and thrive from adverse events (advanced resilience)
  9. VUCA Indispensability Complexity Ecological Economical Social Technical Responses Withstand Recover

    quickly Adapt Transform Resilience Sustainability Scope IT Systems IT Organization Division Company … Capabilities Robustness Surprises Anti-fragility Stability
  10. VUCA Indispensability Complexity Ecological Economical Social Technical Responses Withstand Recover

    quickly Adapt Transform Address at all levels Resilience Sustainability Simplification Accept essential complexity Avoid accidental complexity Scope IT Systems IT Organization Division Company … Capabilities Robustness Surprises Anti-fragility Stability Reduce overall complexity Watch the sum, not the summand Market Governance Organization Projects Process models Requirements Architecture Technology Implementation Improvement initiatives Optimize over time Take future effects into account
  11. VUCA Indispensability Complexity Ecological Economical Social Technical Responses Withstand Recover

    quickly Adapt Transform Address at all levels Resilience Sustainability Simplification Responsible IT Avoid accidental complexity Scope IT Systems IT Organization Division Company … Capabilities Robustness Surprises Anti-fragility Stability Reduce overall complexity Optimize over time
  12. Compliance as Code Resilient Software Design Resilience Automate everything IaC

    CI/CD … Batch Size 1 DevOps (incl. Team Topologies) Learning culture Preserve slack Observability Continuous training (e.g. fire drills) Chaos Engineering SRE Sustainability Green IT CSR/ESG Focus on effectiveness (before considering efficiency) Accelerate Hypothesis-driven software development Understand post-industrial markets Foster dependability Use boring technology (resist FOMO, leave IT rat race) Avoid overengineering Understand the business domain Rethink incentives Abandon projects Beware local optimizations Improve design skills Simplification Abandon cargo cults Construction for deconstruction (Easy to remove) Changeability (Easy to adapt) Usability (Easy to use) Enterprise “Agile” Enterprise “DevOps” Abandon big cleanup initiatives Help people understand software Stop “solving” non-tech problems with technology
  13. Deeply ingrained habits Ongoing digital transformation CV-driven software development Trying

    to solve non-tech problems with technology Project-centric thinking Local, short-term optimizations Recurring “cleanup” initiatives Never completed, only adding more complexity Never retiring old technologies Falling for FOMO Chasing the next technology hype Efficiency obsession Yearly planning cycles Company self-absorbedness Neglecting effectiveness …
  14. After all, we are in for an endless game bearing

    growing responsibility in an ever less predictable world And no, AI will not magically solve this challenge
  15. You are here You want to get there Create awareness

    Provide transparency Offer training Implement pilot Rollout Continuous improvement … … … Start here … … and here A (very) simple change process
  16. Create awareness • Requires a topic evangelist or alike •

    Must convey conviction and enthusiasm • Must be willing to communicate the message multiple times • Creates initial awareness • Creates initial group of supporters • Overall effect limited but required to get started
  17. Provide transparency • Make status and progress measurable • Numbers

    are harder to ignore or argue away • Closes missing feedback loop (nobody wants to be “last”) • Often much more powerful than any talk • (Still, an evangelist is needed first) • Measure outcome, not output • Focus on business-relevant metrics • Start with metrics that allow for short-term progress • Make sure relevant stakeholders can shine with progress
  18. Potential metrics (1/2) • Value chain mapping • Feature usage

    • Feature energy consumption • Dependability index for applications • SLO/SLI • DORA metrics • Incident frequency
  19. Potential metrics (2/2) • Code complexity correlated with, e.g., change

    failure rate and developer satisfaction • Service startup times • Self-healing score • Time to restore service • Application (remote) dependency score ... and many more
  20. Being an architect • Architects need to be good communicators

    • Good prerequisite to create initial awareness • Architects need to be good software designers • Good prerequisite to provide a metric • Architects should know how to code • Good prerequisite to implement a metric • Architects need to collaborate with operations • Good prerequisite to collect actual data
  21. The future is already here – it's just not evenly

    distributed. ― William Gibson