Fleet Management at Spotify (Part 2): The Path to Declarative Infrastructure
At Spotify, we adopted the declarative infrastructure paradigm to evolve our infrastructure platform’s configuration management and control plane approach, allowing us to manage hundreds of thousands ...
Fleet Management at Spotify (Part 3): Fleet-wide Refactoring
For the third part of this Fleet Management series, we discuss fleet-wide refactoring of code across thousands of Git repos at Spotify. We explore the tools and infrastructure built to enable fleet-wi...
Vertical Slices in Practice - Event-Driven.io
I’m a preacher for the CQRS, Vertical Slices, and Feature Folders. I won’t hide that, and I won’t even try. I believe that structuring code based on the business feature helps deliver business value, ...
Explaining Vector Databases in 3 Levels of Difficulty
Vector databases have been getting a lot of attention recently, with many vector database startups raising millions in funding. A vector database is a type of database that stores and manages unstruct...
The Architect’s Blueprint: Understanding Software Styles and Patterns with Cheatsheet
In software development, architecture plays a crucial role in shaping the structure and behavior of software systems. It provides a blueprint for system design, detailing how components interact with ...
Gossip Protocol - System Design
Gossip Protocol is a system design approach for distributed systems. It involves the use of broadcast algorithms and peer-to-peer state management services. This article explains the different types o...
.NET Systems Programming Learned the Hard Way - Aaron Stannard - NDC Oslo 2023

In this presentation, Aaron Standard discusses his experiences and discoveries in learning.net systems programming. He has been a net developer since 2005 and has worked on various projects, including...
An Introduction to Residuality Theory - Barry OReilly - NDC Oslo 2023

In this text, the speaker introduces the concept of Residuality Theory, which offers a new approach to thinking about the systems that engineers and architects work with. The speaker, who is a PhD can...
Domain-Driven Design for a Modular Monolith: Bridging the Gap Between Microservices and Monoliths
Trying to migrate but don’t know how to get started? Maybe a modular monolith, aka Modulith, is the answer. A modular monolith is a monolith that is divided into modules, each with its own bounded con...
Succeeding at Reactive Architecture - Ian Cooper - NDC Oslo 2023

In this talk, Ian Cooper discusses the concept of reactive architectures and how reactive programming can help in building better architectures. He mentions that his interest in speaking and technolog...
Data Infrastructure at IFTTT
Data is a big deal at IFTTT. Our business development and marketing teams rely on data to make critical business decisions. The product team relies on data to run tests, learn about product usage, and...
Rebuilding Twitter Following Clean Architecture and Domain-Driven Design - Amichai Mantinband

Elon Musk tweeted about focusing on hardcore software engineering, which sparked curiosity among many Twitter users. This led to a fictional story where Elon pondered the meaning of hardcore software ...
Slack Leverages Bespoke Tracing Architecture for Message Notifications
Slack leveraged its bespoke tracing architecture to help with investigating notification-delivery issues. Tracing helped resolve notification issues 30% faster and reduced escalations to the developme...
A Contrarian View of Software Architecture - Jeremy Miller - NDC Oslo 2023

Jerry Miller, a long-time open-source .NET developer and senior director of software architecture at a US and Ukrainian medical analytics software company, discussed the challenges faced in maintainin...
Reliable Microservices Data Exchange With Streaming Database
In a microservices architecture, exchanging data between multiple services is a major challenge. The Outbox pattern can address this challenge by promoting asynchronous and decoupled data exchange bet...
Software Design Fundamentals in 2023: Essential Concepts for Modern Software Developers — Part I
In today’s rapidly evolving tech landscape, software developers must stay up-to-date with the latest trends and best practices. This three-part series covers various topics, such as architectural patt...
Software Design Fundamentals in 2023: Essential Concepts for Modern Software Developers — Part II
In this Medium member-only story, aruva - empowering ideas continues their three-part blog series on essential concepts for modern software developers. Part II focuses on programming principles like S...
Software Design Fundamentals in 2023: Essential Concepts for Modern Software Developers — Part III
In this part III of the series, aruva - empowering ideas discusses virtualization and containerization, Iaas, PaaS and SaaS, OAuth and OIDC; anatomy of a JWT token, Web Security principles around cros...
Dev Containers. What are they and why do you need them? - Joseph Guadagno - NDC Oslo 2023

Joe Guidagno, Senior Director for a mortgage company and Vice Chairperson of the .net Foundation, explains the benefits of using Dev Containers in Visual Studio Code. He emphasizes the need to solve t...
High Optionality Programming: Architectural Choices That Mitigate Technical Debt - Aaron Stannard

In this talk, Aaron Stannard discusses software architecture and technical debt, which occurs when a decision made early in a projects life cycle results in significant changes that must be made throu...