Konstantin Pavlov

Konstantin Pavlov

Software Engineer

Building robust, scalable applications on the JVM. Here I share technical insights into software architecture and the integration of AI into modern systems.

The cookie story: when build failures became sweet accountability

A deceptively simple rule transforms a chaotic development team: break the build, buy cookies. What starts as lighthearted motivation evolves into a …

Contract-first vs. code-first development: why API contracts matter from day one

Discover why starting with API contracts first—not code—leads to clearer, more maintainable microservices. Learn the differences between contract-first and …

Secure Java logging with Logback

Deploying application into secure environment adds some restrictions on logging and log management. OWASP community gives some useful recommendations.

Recent

Tachyon MCP 1.0 is here!

The reasons behind Tachyon MCP 1.0 and its design: a standalone Netty server, ordinary Java handlers, a Kotlin DSL, support for two MCP versions, and tasks …

Tachyon MCP: A Spec-Forward Java Runtime for the MCP Ecosystem

Tachyon is a standalone Java MCP server built on Netty — no framework required, with first-class protocol extensions, virtual-thread handlers, and a stateless …

Integration Testing on the JVM: My Ideal Process, End to End

Master robust integration testing for JVM web services. Learn how to simulate databases, Kafka, and LLMs with Testcontainers and Mokksy for fast, parallel …

Higher-Order Attacks on AI Code Agents

Direct prompt injection is just the beginning. Higher-order attacks manipulate agents into producing malicious code, propagating intent across systems, and …

When Your AI Code Agent Becomes an RCE Engine

If your AI code agent treats repository content as instructions, any contributor can execute commands. This article maps the direct injection attack surface and …