Simon Lasselsberger

Move fast with Software Architecture

The secret to moving fast isn't ignoring design. It's using modular architecture to strategically contain technical debt and innovate safely.

Move fast with Software Architecture
#1about 1 minute

Move fast by being strategic, not reckless

Reframe the goal from breaking things to strategically isolating the consequences of errors to maintain development speed.

#2about 5 minutes

Defining software architecture as the important, hard-to-change decisions

Software architecture is the shared understanding of system design decisions that are difficult to change later, encompassing both technical and people-related aspects.

#3about 4 minutes

Why a software architect is more like a town planner

The town planner analogy better captures the architect's role of managing an evolving system with long-term business goals in mind, unlike the static house-building analogy.

#4about 4 minutes

How poor internal quality slows down development over time

Martin Fowler's Design Stamina Hypothesis illustrates how investing in good internal design initially pays off by enabling faster feature delivery in the long run.

#5about 6 minutes

Understanding and managing the impact of technical debt

Technical debt accumulates like a messy kitchen or a bad game of Tetris, slowing down all future work until it is addressed and paid down.

#6about 6 minutes

Isolating business logic with the hexagonal architecture pattern

The hexagonal architecture pattern uses ports and adapters to isolate the core application logic from external dependencies like databases and user interfaces.

#7about 6 minutes

Using modular design to isolate the consequences of decisions

By isolating functionality into separate components, you can strategically accept technical debt, contain the blast radius of failures, and safely experiment with new features.

#8about 2 minutes

Q&A: How to avoid over-engineering your software

The degree of engineering should be proportional to your knowledge of the business and market, always focusing on isolating decisions within bounded contexts.

#9about 3 minutes

Q&A: Recommended resources for learning software architecture

Key resources include the book "Clean Architecture," and tools like diagrams.net are useful for creating consistent and self-explanatory diagrams.

#10about 3 minutes

Q&A: Advocating for architecture on understaffed teams

Justify time for architecture by quantifying the cost of technical debt and explaining how good internal quality leads to faster development in the long term.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.