<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Architecture on Artem Demchyshyn</title><link>https://demchaav.github.io/blog/tags/architecture/</link><description>Recent content in Architecture on Artem Demchyshyn</description><image><title>Artem Demchyshyn</title><url>https://demchaav.github.io/blog/images/og-default.png</url><link>https://demchaav.github.io/blog/images/og-default.png</link></image><generator>Hugo</generator><language>en-GB</language><lastBuildDate>Mon, 15 Jun 2026 09:00:00 +0100</lastBuildDate><atom:link href="https://demchaav.github.io/blog/tags/architecture/index.xml" rel="self" type="application/rss+xml"/><item><title>Document Generation Is Backend Infrastructure</title><link>https://demchaav.github.io/blog/posts/documents-are-backend-infrastructure/</link><pubDate>Mon, 15 Jun 2026 09:00:00 +0100</pubDate><guid>https://demchaav.github.io/blog/posts/documents-are-backend-infrastructure/</guid><description>Why document generation deserves to be treated as backend infrastructure, and when a Java project actually needs a document engine.</description></item><item><title>What Drove Me to Build GraphCompose</title><link>https://demchaav.github.io/blog/posts/what-drove-me-to-build-graphcompose/</link><pubDate>Sun, 14 Jun 2026 21:00:00 +0100</pubDate><guid>https://demchaav.github.io/blog/posts/what-drove-me-to-build-graphcompose/</guid><description>From fighting PDFBox coordinates to building a Java-first declarative document layout engine.</description></item><item><title>Lessons from Building a Java PDF Engine</title><link>https://demchaav.github.io/blog/posts/lessons-from-building-a-java-pdf-engine/</link><pubDate>Sun, 14 Jun 2026 20:40:00 +0100</pubDate><guid>https://demchaav.github.io/blog/posts/lessons-from-building-a-java-pdf-engine/</guid><description>Engineering lessons from building layout, pagination, and rendering code in Java.</description></item></channel></rss>