Skip to main content

Software Architecture

From Monoliths to AI Proxies: Real-World Strategy for Testing and Evolving LLM Integrations

Integrating Large Language Models (LLMs) into production systems presents unique architectural, testing, and operational challenges. This article shares practical insights and solutions from real-world experience integrating LLMs into a customer interaction platform. It covers the evolution from a monolithic to a more modular AI Proxy architecture pattern, strategies for testing, deploying and monitoring LLMs, and the emerging Model Context Protocol (MCP) standard. Application developers and software architects will learn proven practices to build robust, reliable and responsible LLM-powered systems.

Common Java Application Anti-patterns and Their Solutions

Software projects often run into trouble when developers mix different code layers together. The article explains how this leads to rigid, brittle code that’s hard to update and reuse. Software architecture problems are examined through biological cell analogies. A practical guide follows for improving existing systems without full rewrites, focusing on testing, API design, and gradual changes.

Java Application Development Tutorial

I’ve been meaning to write a small tutorial for building web applications. Now it’s time! Let’s define the steps and choose some solutions for developing back-end java web application.

I will give my design recommendations and list a technologies I would use. You may have your own opinion, and you may share it in comment. Over time, this post may change since my favourites are also changing over time.