Simon Lasselsberger
Jul 1, 2021
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.
15 days ago
(Senior) Product Owner (w/m/d)

aedifion GmbH
Köln, Germany
Senior
24 days ago
Senior Product Manager (f/m/d)

Apaleo
München, Germany
Senior
1 month ago
Software Architect Java (m/w/d)

Sopra Steria Custom Software Solutions GmbH
München, Germany
Senior


