Julian Lang
The Lifehacker's Guide to Software Architecture
#1about 3 minutes
Beware the faith healer and embrace trade-offs
Every technology or architectural decision comes with downsides, so an architect's job is to identify and choose the least painful option.
#2about 2 minutes
Understanding the trade-offs of using message queues
Message queues can manage fluctuating workloads and decouple services, but they introduce trade-offs like message backlogs and monitoring complexity.
#3about 3 minutes
Applying the divide and conquer principle to monoliths
Breaking down a monolith into independent services can maintain a cleaner architecture over time but introduces significant operational complexity.
#4about 1 minute
Using design patterns as a common language
Design patterns like those from the Gang of Four provide a shared vocabulary to communicate complex architectural concepts effectively.
#5about 6 minutes
Achieving loose coupling with asynchronous patterns
Use asynchronous patterns like queues and topics to reduce temporal, availability, and location dependencies between services in a distributed system.
#6about 7 minutes
Designing for failure with retries and replays
Manage inevitable system failures by implementing patterns like dead letter queues for retries, understanding the scope of deduplication, and using archive-and-replay for disaster recovery.
#7about 1 minute
Preparing for success by architecting for flexibility
Ensure your system can handle growth from a hundred to millions of users by building flexibility into all layers, not just compute.
#8about 1 minute
Don't reinvent the wheel, focus on your business
Avoid building undifferentiated infrastructure and instead leverage existing tools and industry standards to focus on features that are unique to your business.
Related jobs
Jobs that call for the skills explored in this talk.
Featured Partners
Related Videos
We (don't) need a software architect!?!
Hendrik Lösch
Modern software architectures
David Tielke
Move fast with Software Architecture
Simon Lasselsberger
There is no such thing as future-proof architecture! Here is how to prepare for it.
Eberhard Wolff
Resolving technical debts in software architecture
Carola Lilienthal
How to sabotage your software development with agile? – 10 pro tips for guaranteed success
Marlene Roth, Tobias Mohr
Unveiling the Dark Side: Navigating the Pitfalls of Digital Ambitions
Johannes Hansen
Why (most) software projects fail silently...
Hendrik Lösch
From learning to earning
Jobs that call for the skills explored in this talk.
Software Architecture Advisor
Taskify
Municipality of Madrid, Spain
Remote
GIT
Microservices
Software Architecture
Continuous Integration
Software Architect (Contractor) - Composable Commerce & Event-Driven Design
CobbleWeb
Birmingham, United Kingdom
Remote
€61K
Redis
React
Node.js
+4
Lead Software Architect
SDG Group
Municipality of Santiago de Compostela, Spain
Remote
API
Java
Azure
Scrum
+11
Backend Architect
Barcelona, Spain





