InfoQ Homepage Architecture Content on InfoQ
-
Orchestrating Resilience Building Modern Asynchronous Systems
In this article, we will discuss what problems we had to solve at Twilio to efficiently build a resilient and scalable asynchronous system to handle a complex workflow and the advantages we got from adopting a Workflow Orchestration solution, including abstracting away state management and out-of-the-box support for retries, observability, and audibility.
-
The Incident Lifecycle: How a Culture of Resilience Can Help You Accomplish Your Goals
Don’t get stuck with overwhelmed systems that can cause an outage, like what happened with Taylor Swift concert tickets. Build organizational resilience to incidents through improved coordination and communication during the response, and blameless reviews, root cause analysis, and insightful communication afterward to enable meaningful change.
-
Architecting with Java Persistence: Patterns and Strategies
Explore a spectrum of Java persistence patterns, from data-oriented to domain-centric. Delve into Driver, Mapper, DAO, Active Record, and Repository for robust architectural foundations.
-
Write More, Talk Less: Building Organizational Resilience through Documentation and InnerSource
Better documentation and knowledge sharing creates transparency that aids onboarding, prevents turnover disruption, and withstands reorganizations. Different practices can help, such as communicating asynchronously, creating incentives for documentation, making docs discoverable, understanding team members' preferences, and providing dedicated writing time. And maybe InnerSource can help too.
-
12 Software Architecture Pitfalls and How to Avoid Them
Knowing about potential software architecture pitfalls can help teams by keeping them away from tempting paths that will not take them where they want to go. This article covers some of those pitfalls, and provides guidance on how they can be avoided.
-
Going Global: a Deep Dive to Build an Internationalization Framework
Internationalization (i18n) is a critical process in web development, and requires a robust, well-designed framework to ensure scalability. While some JavaScript libraries exist, this article provides a language-agonistic framework that can be implemented at a global level.
-
From Dependency to Autonomy: Building an In-House E-signing Service
While many companies rely on third-party services, there’s a growing realization that an in-house solution can offer more control, flexibility, and cost savings. In this article, we’ll delve into how to build an e-signing microservice.
-
The False Dichotomy of Monolith vs. Microservices
Taking sides in the debate of microservices v. monolith gets in the way of doing the right thing for our customers. Sometimes, we need microservices. Sometimes, we need a monolith. Most of the time we are better off somewhere between these extremes.
-
Has Your Architectural Decision Record Lost Its Purpose?
Architectural Decision Records (ADRs) are important vehicles for communicating the architectural decisions a development team makes about a system. Lacking a clear definition of what is architectural, and also lacking anywhere else to record important decisions, they can start to drift from their original purpose and lose focus and effectiveness.
-
How Agile Teams Can Improve Predictability by Measuring Stability
In this article, we will present our approach for analysing agile systems as networks of queues and how we have used it to analyse 926 projects in the Public Jira Dataset. We explain how you can measure the Stability Metric (SM) for your queues. Finally, we will present our planned next phase of research.
-
Bridging Silos and Overcoming Collaboration Antipatterns in Multidisciplinary Organisations
There's a worrying trend towards focusing on specialisms at the expense of collaboration, shared responsibility and valuable outcomes, which can take teams away from multi-disciplinary collaboration. This article calls out three collaboration anti-patterns that appeared in more than one organisation, some of the symptoms they cause and some thoughts on how to go about counteracting them.
-
Domain-Driven Cloud: Aligning Your Cloud Architecture to Your Business Model
Domain-Driven Cloud (DDC) is an approach for creating your organization’s cloud architecture based on your business model. Based on Domain-Driven Design (DDD) and the architecture principle of high cohesion and low coupling, this article introduces DDC including the technical and human benefits of aligning your cloud architecture to the bounded contexts in your business model.