Julian Lang

The Lifehacker's Guide to Software Architecture

Your primary role as an architect isn't to find silver bullets. It's to identify the least painful option on the table.

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 Articles

View all articles
BB
Benedikt Bischof
Why You Shouldn’t Build a Microservice Architecture
Welcome to this issue of the WeAreDevelopers Live Talk series. This article recaps an interesting talk by Michael Eisenbart who talks about the pros and cons of microservice architecture.‍About the speaker:‍Michael has been working for Bosch as a sof...
Why You Shouldn’t Build a Microservice Architecture

From learning to earning

Jobs that call for the skills explored in this talk.

Software Architect

Headmatch GmbH & Co. KG
Berlin, Germany

Java
DevOps
Terraform
Kubernetes
Microservices
+2