2-Day Masterclass, Timisoara - Software Architecture: The Hard Parts, with Neal Ford

Schedule

Tue, 19 May, 2026 at 09:30 am to Wed, 20 May, 2026 at 05:30 pm

UTC+03:00

Location

ibis Timisoara City Center | Timisoara, TM

Advertisement
Software architects have no clean, easy decisions: everything is a terrible trade-off. Architecture has lots of difficult problems, which this platform-agnostic class highlights by investigating what makes architecture so hard. This class goes beyond the fundamentals of software architecture and focuses on really hard problems within distributed architectures such as microservices and event-driven systems.
This class is divided into 2 main parts—pulling things apart, then putting them back together again. In part 1 (pulling things apart), you’ll learn about the differences between modularity and granularity, techniques and patterns for breaking apart monolithic systems and migrating them to a distributed architecture, how to choose the right size for a service, and how to break apart monolithic data. However, once you break a system apart, necessarily you need to put it back together again. That’s what part 2 is about – putting things back together.
In part 2 you’ll learn about communication protocols for communicating between services, how to reconnect distributed data, whether your workflow should use orchestration or choreography, what sort of contract you should have between services, what patterns to use for complex event processing, and how to manage distributed transactions while still maintaining some level of data consistency and integrity.
Software architecture is full of hard parts. By attending this 2-day class you can gain the insights and techniques to make it just a little softer.
Course contents
Part 1: Pulling Things Apart
Unit 1: Architectural Modularity
Why migrate from monolithic systems?
Business and technical drivers
Migration patterns and approaches
Hands-on exercises: Migration drivers
Unit 2: Architectural Quantum
Defining a quantum
Why this is important
Application partitioning
Quantum examples
Hands-on exercises: Identifying architectural quanta

Unit 3: Technical vs. Domain Partitioning
Technically partitioned architectures
Conway’s Law
Dynamically partitioned architectures
Inverse Conway maneuver
Advantages and disadvantages of each
Architecture and organizational alignment
Migrating from technical to domain partitioning
Hands-on exercises: Identifying partitioning

Unit 4: Component-Based Decomposition
Microservices migration patterns
Identifying and sizing components
Flattening components
Identifying component dependencies
Creating component domains
Creating domain services
Domain service decomposition
Hands-on exercises: Flattening components

Unit 5: Service Granularity
Granularity disintegration drivers
Granularity integration drivers
Analyzing tradeoffs
Hands-on exercises: Determining service granularity

Unit 6: Breaking Apart Monolithic Data
Drivers for data decomposition
Creating Data domains
Resolving data dependencies
Hands-on exercises: Decomposing monolithic databases

Part 2: Putting Things Back Together
Unit 7: Data Access and Ownership
Creating bounded contexts
Managing common data ownership
Managing joint data ownership
Data Access patterns
Hands-on exercises: Accessing remote data

Unit 8: Managing Contracts
Strict vs. loose contracts
Bandwidth and stamp coupling
Consumer-driven contracts

Unit 9: Communication Protocols
Synchronous communication
Asynchronous communication
Dynamic quantum entanglement

Unit 10: Managing Workflows
Defining orchestration
Defining Choreography
Analyzing tradeoffs
Hybrid topologies
Hands-on exercises: Choosing a workflow type

Unit 11: Distributed Transactions
ACID transactions
BASE Transactions
Eventual consistency patterns
Managing transaction through state machines
Compensating updates
Unit 12: Transactional Sagas
Three dimensional sagas
Epic Saga
Fantasy Fiction Saga
Fairy Tale Saga
Parallel Saga
Phone Tag Saga
Horror Story Saga
Time Travel Saga
Anthology Saga
Transactional Saga Tradeoffs
Hands-on exercises: Choosing the right transactional saga
Target audience and prerequisites
This course is for software developers that want to become software architects and for software architects that want to focus on problems within distributed architectures such as microservices and event-driven systems.
Advertisement

Where is it happening?

ibis Timisoara City Center, Calea Circumvalațiunii 4, 300627 Timișoara, România, Timisoara, Romania

Event Location & Nearby Stays:

Icon
Know what’s Happening Next — before everyone else does.
Codecamp Romania

Host or Publisher Codecamp Romania

Ask AI if this event suits you:

Discover More Events in Timisoara

Gal\u0103 de Oper\u0103 \u0219i Operet\u0103
Wed, 20 May at 07:00 pm Gală de Operă și Operetă

Opera Națională Română din Timișoara

MUSIC ENTERTAINMENT
Zilele Studentilor Timisoarei 2026
Thu, 21 May at 02:00 pm Zilele Studentilor Timisoarei 2026

Stadionul Știința

SPORTS FOOD-DRINKS
ViVi \u2013 spectacol de MAGIE, JONGLERIE \u0219i BEATBOX
Thu, 21 May at 07:00 pm ViVi – spectacol de MAGIE, JONGLERIE și BEATBOX

Cinema Timiș

MEDIS26 - The International Medical Congress for Students and Young Doctors
Wed, 22 Apr at 09:00 am MEDIS26 - The International Medical Congress for Students and Young Doctors

Piata Eftimie Murgu, Nr. 2, Camera 18, Timișoara

WORKSHOPS
WSET Level 2 Award in Wines Timisoara
Fri, 24 Apr at 09:00 am WSET Level 2 Award in Wines Timisoara

The Wine Guy

SWA Intensive Weekend | Workshops, parties & more | 24\u201326 aprilie 2026
Fri, 24 Apr at 10:00 am SWA Intensive Weekend | Workshops, parties & more | 24–26 aprilie 2026

Latin BUG Dance School

ENTERTAINMENT PARTIES
\u2728 Communication in Tango \u2013 Workshops with Ga\u0301bor Nova\u0301k \u2728
Fri, 24 Apr at 06:00 pm ✨ Communication in Tango – Workshops with Gábor Novák ✨

Tango del Alma

WORKSHOPS LIVE-MUSIC
DRIMOLAND YARD SALE - T\u00c2RGUL MICILOR AVENTURIERI
Sat, 25 Apr at 10:00 am DRIMOLAND YARD SALE - TÂRGUL MICILOR AVENTURIERI

Strada Orizont, 307200 Ghiroda, Romania

TRIPS-ADVENTURES
T\u00e2rg cu produse SH pentru copii Baby Zumzarel
Sat, 25 Apr at 10:00 am Târg cu produse SH pentru copii Baby Zumzarel

Casa Tineretului Timișoara

ReConectat \u2013 Atelier de detox digital prin cusut la UPT
Sat, 25 Apr at 10:00 am ReConectat – Atelier de detox digital prin cusut la UPT

Bulevardul Vasile Pârvan 2, 300223 Timișoara

Ziua Por\u021bilor Deschise la ItziBitzi\u2600\ufe0f
Sat, 25 Apr at 10:00 am Ziua Porților Deschise la ItziBitzi☀️

Ciprian Porumbescu nr. 34, Timișoara

Any\u00e1k napi j\u00e1tsz\u00f3h\u00e1z
Sat, 25 Apr at 10:00 am Anyák napi játszóház

Bulevardul General Ion Dragalina, 11/A, 300181 Timisoara, Romania

Caravana Din\u021bi\u0219orului ed a XII-a
Sat, 25 Apr at 11:00 am Caravana Dințișorului ed a XII-a

Iulius Town Timisoara

Cupping Time! at Baroque Coffee House
Sat, 25 Apr at 11:00 am Cupping Time! at Baroque Coffee House

Piata Unirii Nr. 14, Timisoara, Romania

Check Art Festival 2026 | Iulius Town Timi\u0219oara
Sat, 25 Apr at 04:00 pm Check Art Festival 2026 | Iulius Town Timișoara

Piata Consiliul Europei nr. 2, 300627 Timisoara, Romania

FESTIVALS ART
BRIDGE
Wed, 29 Apr at 03:00 pm BRIDGE

Cinema Victoria Timișoara

ART
FROM ZERO TO FLYING with SCOTT WELLS | 1-3 May 2026 | Timisoara, Romania
Fri, 01 May at 10:00 am FROM ZERO TO FLYING with SCOTT WELLS | 1-3 May 2026 | Timisoara, Romania

White Steps Academy

WORKSHOPS MUSIC

What's Happening Next in Timisoara?

Discover Timisoara Events