InfoQ Homepage Architecture & Design Content on InfoQ
-
Scaling Cloud and Distributed Applications: Lessons and Strategies
The article shares goals and strategies for scaling cloud and distributed applications, focusing on lessons learned from cloud migration at Chase.com at JP Morgan Chase. The discussion centers on three primary goals and the strategies addressing the goals, concluding how these approaches were achieved in practice. For those managing large-scale systems, these lessons provide valuable guidance!
-
Micro-Frontends: a Sociotechnical Journey toward a Modern Frontend Architecture
Micro-frontends differ from components by emphasising autonomy and flow over standardisation and reuse—a sociotechnical shift aligned with Conway's law. Migration should be gradual, starting where autonomy is most beneficial and ensuring that the architecture aligns with the team structure. Duplication can benefit the flow and enable iterative delivery, rather than requiring extensive rewrites.
-
Building Distributed Event-Driven Architectures across Multi-Cloud Boundaries
Multi-cloud event-driven architectures are now essential, not optional. With most organizations already multi-cloud, success depends on optimizing latency, ensuring resilience, and managing event consistency across providers. Key practices include code-level tuning, robust recovery policies, duplicate prevention, observability, and strong team readiness.
-
Holistic Engineering: Organic Problem Solving for Complex Evolving Systems
Late projects. Architectures that drift from their original design. Code that mysteriously evolves into something nobody planned. These persistent problems in software development often stem not from technical failures, but from forces we pretend don't exist—reward systems that incentivize the wrong behaviors, organizational structures that ignore domain boundaries, and human dynamics.
-
When Reverse Proxies Surprise You: Hard Lessons from Operating at Scale
Operating massive reverse proxy fleets reveals hard lessons: optimizations that work on smaller systems fail at scale; mundane oversights like missing commas cause major outages; and abstractions meant to simplify become hidden fragility points. Success requires profiling on target hardware, relentlessly monitoring boring details, keeping hot paths lean, and trusting instrumentation over theory.
-
Building Resilient Platforms: Insights from over Twenty Years in Mission-Critical Infrastructure
Building resilient platforms requires understanding the art and science of creating infrastructure that others depend on for critical applications. This perspective applies to anyone who builds software consumed by others at scale. Whether developing infrastructure platforms, software development platforms, or messaging systems, principles address how to build software that others consume at scale
-
Empowering Teams: Decentralizing Architectural Decision-Making
In today’s rapidly evolving tech landscape, centralized architectural decision-making can become a bottleneck to delivery performance and innovation. Through stories from our own journey, we’ll share how decentralizing decisions improved alignment across teams, empowered faster decision-making, and fostered a culture of ownership.
-
Beyond Accidental Quality: Finding Hidden Bugs with Generative Testing
Generative testing uncovers hidden software bugs by exploring the input space and verifying system invariants. This surpasses example-based tests that rely on known scenarios and can miss edge cases.
-
Building a RAG Application with Spring Boot, Spring AI, MongoDB Atlas Vector Search, and OpenAI
The RAG paradigm redefines AI: it combines generative models and business data for accurate, contextualised responses. The article shows how to integrate Spring Boot, Spring AI, MongoDB Atlas and OpenAI into a powerful and flexible pipeline capable of transforming the way businesses access and create value from data, with applications ranging from finance and healthcare to customer service.
-
Three Questions That Help You Build a Better Software Architecture
To architect effectively for an MVP, teams must answer three questions in order: Is the business idea worth pursuing? What performance and scalability are needed? How much maintainability and supportability are required? These guide Minimum Viable Architecture decisions. Empirical testing helps reject costly assumptions early and adapt architecture as the MVP evolves.
-
If Architectures Could Talk, They’d Quote Your Boss
Software architecture reflects how organizations communicate and make decisions. Failures stem from misaligned incentives, unclear ownership, and structural gaps—not technical flaws. Architects must design not just systems, but the conditions for systems to thrive, using platform thinking to reduce friction and foster autonomy.
-
Bringing AI Inference to Java with ONNX: a Practical Guide for Enterprise Architects
Java applications can now run transformer-based AI models directly within the JVM—without Python, REST wrappers, or microservices. This guide shows how to integrate ONNX-powered inference with tokenizer support, GPU acceleration, modular deployment, and observability, enabling architects in regulated domains to adopt AI without disrupting compliance or CI/CD workflows.