InfoQ Homepage Architecture & Design Content on InfoQ
-
Redesigning Banking PDF Table Extraction: a Layered Approach with Java
PDF table extraction often looks easy until it fails in production. Real bank statements can be messy, with scanned pages, shifting layouts, merged cells, and wrapped rows that break standard Java parsers. This article shares how we redesigned the approach using stream parsing, lattice/OCR, validation, scoring, and selective ML to make extraction more reliable in real banking systems.
-
Lakehouse Tower of Babel: Handling Identifier Resolution Rules across Database Engines
Lakehouse architectures enable multiple engines to operate on shared data using open table formats such as Apache Iceberg. However, differences in SQL identifier resolution and catalog naming rules create interoperability failures. This article examines these behaviors and explains why enforcing consistent naming conventions and cross-engine validation is critical.
-
Building Hierarchical Agentic RAG Systems: Multi-Modal Reasoning with Autonomous Error Recovery
In this article, the author explores how hierarchical agentic RAG systems coordinate specialized workers through structured orchestration to improve accuracy, reliability, and explainability in complex enterprise analytics workflows. The article uses Protocol-H as a to show how deterministic routing, reflective retry, and modality-aware reasoning support safer multi-source query execution.
-
Stateful Continuation for AI Agents: Why Transport Layers Now Matter
Agent workflows make transport a first-order concern. Multi-turn, tool-heavy loops amplify overhead that is negligible in single-turn LLM use. Stateful continuation cuts overhead dramatically. Caching context server-side can reduce client-sent data by 80%+ and improve execution time by 15–29% .
-
Replacing Database Sequences at Scale without Breaking 100+ Services
The article discusses the challenges faced during a migration from a relational database to NoSQL, focusing on the importance of database sequences for unique identifiers. It outlines the development of a new sequence service using DynamoDB and a two-tier caching architecture.
-
Beyond RAG: Architecting Context-Aware AI Systems with Spring Boot
This article introduces Context-Augmented Generation (CAG) as an architectural refinement of RAG for enterprise systems. It shows how a Spring Boot-based context manager can incorporate user identity, session state, and policy constraints into AI workflows, improving traceability, consistency, and governance without altering existing retrievers or LLM infrastructure.
-
Event-Driven Patterns for Cloud-Native Banking: Lessons from What Works and What Hurts
Event-driven architecture helps banks decouple systems, scale services, and create clear activity trails. But it also introduces complexity, new failure modes, and operational challenges. Chris Tacey-Green explains where it adds value in banking systems and the practical patterns, such as inbox/outbox and stable event contracts, needed to make it reliable.
-
Architecting Autonomy at Scale: Raising Teams without Creating Dependencies
Modern engineering needs a shift from "gates" to "guardrails." Scale via decentralized architecture that treats teams like adults—building judgment through Socratic coaching, shared platforms, and automated drift detection. Move beyond bottlenecks to an interdependent model where AI governance and ADRs preserve context without killing velocity. Empower autonomy while maintaining alignment.
-
Architectural Governance at AI Speed
In the GenAI era, code is a commodity, but alignment is not. Traditional review boards can't scale with AI-generated output. This article explores "Declarative Architecture" - transforming ADRs and Event Models into automated guardrails. Move beyond "dumping left" to a model where the conformant path is the path of least resistance, enabling decentralized governance without losing cohesion.
-
Architecting Portable Systems on Open Standards for Digital Sovereignty
Digital sovereignty is about maintaining control of critical systems by limiting reliance on any single vendor. Open standards and portable architectures reduce lock‑in and keep migration options open, even when providers change pricing, licensing, or viability. Full independence is impossible, but disciplined design and clear guardrails strengthen resilience.
-
Configuration as a Control Plane: Designing for Safety and Reliability at Scale
Configuration has evolved from static deployment files into a live control plane that directly shapes system behavior. The evolution of configuration management highlights why misconfigurations can trigger large outages and how hyperscalers deploy changes safely using staged rollouts, validation, blast radius limits, and automated rollback at scale.
-
Beyond Memory Safety: What Makes Rust Different – Lessons from Autonomous Robotics
This article explores that question through the lens of a real-world Rust project: a system responsible for controlling fleets of autonomous mobile robots. While Rust's memory safety is a strong foundation, its true power lies in the type system and ownership rules. The session will go beyond memory safety and explore ways to encode behavior and protocols directly into types.