Topic mix

Software architecture

34 moments from 31 videos · 1:46:54 total

Clear architectural decisions prevent long-term technical debt. This collection features concise, curated highlights from senior developers discussing modular design and structured software patterns.

Modern software architectures
Play section Understanding the role of software architecture and quality
Understanding the role of software architecture and quality thumbnail

Understanding the role of software architecture and quality

How architecture and design address non-functional requirements to build high-quality scalable systems.

Move fast with Software Architecture
Play section Defining software architecture and shared system understanding
Defining software architecture and shared system understanding thumbnail

Defining software architecture and shared system understanding

True software architecture goes beyond technical documents to establish a shared understanding of decisions that are hard to change later.

Play section Recognizing technical components and proper engineering process alignment
Recognizing technical components and proper engineering process alignment thumbnail

Recognizing technical components and proper engineering process alignment

Creating an architecture that accommodates change involves organizing high-level capabilities alongside specific communication patterns defined by conways law.

Software Engineering for Muggles
Play section Modeling software architecture evolution with the Weasley house
Modeling software architecture evolution with the Weasley house thumbnail

Modeling software architecture evolution with the Weasley house

The ever-expanding magical house serves as a metaphor for software that must continuously adapt to new requirements.

One Does Not Simply Make Architecture Decisions Alone
Play section Architecture fundamentally defined as a set of decisions
Architecture fundamentally defined as a set of decisions thumbnail

Architecture fundamentally defined as a set of decisions

Defining software architecture logically as a continuous stream of context-dependent choices.

What makes a great Software Engineer? Challenging our Assumptions Instead of Talking about Imposter Syndrome
Play section Navigating real world software architecture collaboration
Navigating real world software architecture collaboration thumbnail

Navigating real world software architecture collaboration

Bad software is often a communication problem that requires defining actual business needs before implementation.

Model Based Systems Engineering in an Agile Product Development Process
Play section Preventing software architecture deterioration over product lifespans
Preventing software architecture deterioration over product lifespans thumbnail

Preventing software architecture deterioration over product lifespans

Maintaining dedicated architectural oversight prevents escalating maintenance costs and continuous integration delays.

Why you shouldn’t build a microservice architecture
Play section The primary purpose of software architecture decisions
The primary purpose of software architecture decisions thumbnail

The primary purpose of software architecture decisions

How good architectural practices fundamentally serve to save time and accelerate market delivery.

A Hitchhiker's Guide to Resource Efficient Software
Play section Applying effectiveness concepts throughout the software architecture lifecycle
Applying effectiveness concepts throughout the software architecture lifecycle thumbnail

Applying effectiveness concepts throughout the software architecture lifecycle

Incorporating non-functional requirements during business and enterprise architecture planning ensures long-term structural efficiency.

From Code to Culture: Why Leadership Determines Software Quality
Play section Building engineering cultures that support long-term software architecture
Building engineering cultures that support long-term software architecture thumbnail

Building engineering cultures that support long-term software architecture

How prioritizing alignment among management, technical leads, and business missions dictates the invisible systems that ensure product success.

How to sabotage your software development with agile? – 10 pro tips for guaranteed success
Play section Designing poor software architectures by ignoring Conway's law
Designing poor software architectures by ignoring Conway's law thumbnail

Designing poor software architectures by ignoring Conway's law

Grouping developers by technical profession instead of value streams creates monolithic bottlenecks that mirror poor organizational structures.

100 million days in Vienna: A story of APIs & AI in tourism.
Play section Software architecture overview using the C4 model
Software architecture overview using the C4 model thumbnail

Software architecture overview using the C4 model

Using the C4 model to map out a microservices architecture communicating with a central data hub.

Evals vs. Evil - AI and Package Security - Laurie Voss
Play section Redefining developer roles and software architecture requirements
Redefining developer roles and software architecture requirements thumbnail

Redefining developer roles and software architecture requirements

Since AI agents can now handle basic coding tasks, early-career engineers must pivot toward mastering software architecture and complex spec writing.

Times of (climate) crisis - How and why sustainable software is a must!
Play section Optimizing software architectures to minimize infrastructure resource drain
Optimizing software architectures to minimize infrastructure resource drain thumbnail

Optimizing software architectures to minimize infrastructure resource drain

Architectural decisions around processing approaches, storage volumes, and unused dark data heavily dictate both ecological outcomes and cloud service costs.

Fireside Chat with Werner Vogels, VP & CTO, Amazon.com & Daniel Gebler, CTO at Picnic
Play section Building architectures for evolving business capabilities
Building architectures for evolving business capabilities thumbnail

Building architectures for evolving business capabilities

Software platforms must be constructed to support continuously changing feature sets as business operations expand and demand new services.

Autonomous microservices with event-driven architecture
Play section Balancing architectural trade-offs without silver bullets
Balancing architectural trade-offs without silver bullets thumbnail

Balancing architectural trade-offs without silver bullets

Why software architecture requires balancing practical trade-offs rather than searching for perfect solutions.

"I will remember that" and other lies - Why documentation matters and it makes your apps better
Play section Improving software architecture skills through consistent writing habits
Improving software architecture skills through consistent writing habits thumbnail

Improving software architecture skills through consistent writing habits

Detailing software functionality deepens fundamental architectural understanding, strictly supports legal compliance, and inherently leads to cleaner implementations.

Cloud Vendor Lock-In - Is it just a new version of the Database Abstraction Layers?
Play section Applying YAGNI and KISS to architectural decisions
Applying YAGNI and KISS to architectural decisions thumbnail

Applying YAGNI and KISS to architectural decisions

Applying foundational software architecture principles minimizes unnecessary dependencies and prevents over-engineering simple solutions.

42 x 2 Canvases Later: Two Years, Two Minds, Many Lessons
Play section Introduction to software architecture documentation challenges
Introduction to software architecture documentation challenges thumbnail

Introduction to software architecture documentation challenges

Common issues include missing, scattered, or overwhelmingly large architecture documentation formats.

Getting to Know Your Legacy (System) with AI-Driven Software Archeology
Play section Applying typology to categorize software architecture patterns and concepts
Applying typology to categorize software architecture patterns and concepts thumbnail

Applying typology to categorize software architecture patterns and concepts

Grouping scattered source files into technical and business classifications establishes a higher-level abstraction for comprehending system frameworks.

Work efficiently with Architecture Decision Records (ADRs)
Play section Defining design decisions across code, solution, and application levels
Defining design decisions across code, solution, and application levels thumbnail

Defining design decisions across code, solution, and application levels

The different tiers of technical choices and where architecture decision records appropriately apply.

We (don't) need a software architect!?!
Play section Core responsibilities of a software architect in development
Core responsibilities of a software architect in development thumbnail

Core responsibilities of a software architect in development

Defining requirements, designing solutions, and continuously validating implementations ensures software meets overarching business goals.

Play section Understanding the unique characteristics of software complexity
Understanding the unique characteristics of software complexity thumbnail

Understanding the unique characteristics of software complexity

The invisible and highly changeable nature of software requires intentional architectural translation.

Breaking the Bug Cycle: TDD for the Win
Play section Reducing accidental complications in software architecture
Reducing accidental complications in software architecture thumbnail

Reducing accidental complications in software architecture

Strategic refactoring strips away unnecessary technical baggage caused by disjointed development styles and brute force problem-solving.

There is no such thing as future-proof architecture! Here is how to prepare for it.
Play section Aligning system structure with domain-driven design
Aligning system structure with domain-driven design thumbnail

Aligning system structure with domain-driven design

Software architecture structures should fundamentally reflect domain logic rather than relying exclusively on generic technical patterns.

Play section Three reasons why software architecture must be iterative
Three reasons why software architecture must be iterative thumbnail

Three reasons why software architecture must be iterative

Domain models mature, functional requirements pivot, and developer skills improve over time, demanding an iterative architectural approach.

Resolving technical debts in software architecture
Play section Applying cognitive schemas to software design patterns
Applying cognitive schemas to software design patterns thumbnail

Applying cognitive schemas to software design patterns

Organizing logic with consistent architectural patterns leverages human cognitive schemas for faster code comprehension.

Telemetry without the 'Tool Tax'
Play section Four dimensions driving modern software architecture complexity
Four dimensions driving modern software architecture complexity thumbnail

Four dimensions driving modern software architecture complexity

Distributed architectures, containerization, orchestration, and demanding uptime requirements necessitate advanced tooling.

Stop configuring infrastructure, start coding it!
Play section Writing readable code architectures to clarify infrastructure intentions
Writing readable code architectures to clarify infrastructure intentions thumbnail

Writing readable code architectures to clarify infrastructure intentions

Moving beyond immense text-file declarations immediately enables development teams to effectively assess architectural integrity while simultaneously recognizing established functional logic.

Why (most) software projects fail silently...
Play section Aligning software architecture with non-functional requirements
Aligning software architecture with non-functional requirements thumbnail

Aligning software architecture with non-functional requirements

Using the ISO 25010 standard to prioritize foundational attributes like reliability over unconditionally applying trending microservices.

Microservices? Monoliths? An Annoying Discussion!
Play section Balancing modularization fundamentals with effective software engineering organization design
Balancing modularization fundamentals with effective software engineering organization design thumbnail

Balancing modularization fundamentals with effective software engineering organization design

Successful service architecture heavily depends on aligning technical module boundaries with fundamental team structures.

From Zero to Hero: Launch & Manage Your Cloud Apps with Free OpenShift & Red Hat Developer Hub
Play section Establishing an integrated developer platform for scaled engineering
Establishing an integrated developer platform for scaled engineering thumbnail

Establishing an integrated developer platform for scaled engineering

Adopting an opinionated reference architecture helps scale agile methodologies across large software engineering organizations.

Wardley Maps for Software Developers
Play section Introduction to Wardley Maps in software architecture
Introduction to Wardley Maps in software architecture thumbnail

Introduction to Wardley Maps in software architecture

Wardley Maps provide a visual framework for planning strategic evolution and modernizing older software systems.

It’s all about the domain, honey ! Experiences from 15 years of Domain-Driven Design
Play section Building and maintaining sustainable software architectures
Building and maintaining sustainable software architectures thumbnail

Building and maintaining sustainable software architectures

Maintaining a steady stream of feature delivery over multiple releases requires continuous attention to structural health and refactoring.

Your mix. Instantly.

More mixes