Karl Matthias<p>I got two AI agents, Claude and Gemini, to help generate a doc for new developers on how to work with one of our services. In the end, I am quite pleased with what it did.</p><p>Example:<br><code># Developer's Guide to the User-Profile Service<br><br>Welcome! This document is the comprehensive guide for developers working on the<br>User-Profile service. It outlines our architecture, established patterns, and<br>development workflow. Adhering to these conventions is key to maintaining a<br>clean, consistent, and scalable codebase.<br><br>## Table of Contents<br><br>1. [**Getting Started: Your First 5 Minutes**](<a href="https://k.matthias.org/tags/getting-started-your-first-5-minutes" class="hashtag" rel="nofollow noopener" target="_blank">#getting-started-your-first-5-minutes</a>)<br>2. [**Core Architectural Principles**](<a href="https://k.matthias.org/tags/core-architectural-principles" class="hashtag" rel="nofollow noopener" target="_blank">#core-architectural-principles</a>)<br>3. [**Codebase Tour**](<a href="https://k.matthias.org/tags/codebase-tour" class="hashtag" rel="nofollow noopener" target="_blank">#codebase-tour</a>)<br>4. [**Quick Decision Guides**](<a href="https://k.matthias.org/tags/quick-decision-guides" class="hashtag" rel="nofollow noopener" target="_blank">#quick-decision-guides</a>)<br>5. [**The Golden Path: Adding a New Feature**](<a href="https://k.matthias.org/tags/the-golden-path-adding-a-new-feature" class="hashtag" rel="nofollow noopener" target="_blank">#the-golden-path-adding-a-new-feature</a>)<br>6. [**Deep Dive: Key Patterns & Conventions**](<a href="https://k.matthias.org/tags/deep-dive-key-patterns--conventions" class="hashtag" rel="nofollow noopener" target="_blank">#deep-dive-key-patterns--conventions</a>)<br> - [The Data Layer (`stores/`)](<a href="https://k.matthias.org/tags/the-data-layer-stores" class="hashtag" rel="nofollow noopener" target="_blank">#the-data-layer-stores</a>)<br> - [Event Handling (`event_consumer/`)](<a href="https://k.matthias.org/tags/event-handling-event_consumer" class="hashtag" rel="nofollow noopener" target="_blank">#event-handling-event_consumer</a>)<br> - [Command Handling (`command_consumer/`)](<a href="https://k.matthias.org/tags/command-handling-command_consumer" class="hashtag" rel="nofollow noopener" target="_blank">#command-handling-command_consumer</a>)<br> - [The API Layer (`webapi/`)](<a href="https://k.matthias.org/tags/the-api-layer-webapi" class="hashtag" rel="nofollow noopener" target="_blank">#the-api-layer-webapi</a>)<br> - [Error Handling Patterns](<a href="https://k.matthias.org/tags/error-handling-patterns" class="hashtag" rel="nofollow noopener" target="_blank">#error-handling-patterns</a>)<br> - [Testing (`*_test.go`)](<a href="https://k.matthias.org/tags/testing-_testgo" class="hashtag" rel="nofollow noopener" target="_blank">#testing-_testgo</a>)<br> - [Long-Running Tasks (`temporal/`)](<a href="https://k.matthias.org/tags/long-running-tasks-temporal" class="hashtag" rel="nofollow noopener" target="_blank">#long-running-tasks-temporal</a>)<br> - [Observability Best Practices](<a href="https://k.matthias.org/tags/observability-best-practices" class="hashtag" rel="nofollow noopener" target="_blank">#observability-best-practices</a>)<br> - [Configuration Management](<a href="https://k.matthias.org/tags/configuration-management" class="hashtag" rel="nofollow noopener" target="_blank">#configuration-management</a>)<br> - [Performance Considerations](<a href="https://k.matthias.org/tags/performance-considerations" class="hashtag" rel="nofollow noopener" target="_blank">#performance-considerations</a>)<br> - [Cross-Cutting Concerns](<a href="https://k.matthias.org/tags/cross-cutting-concerns" class="hashtag" rel="nofollow noopener" target="_blank">#cross-cutting-concerns</a>)<br>7. [**Development Cheatsheet**](<a href="https://k.matthias.org/tags/development-cheatsheet" class="hashtag" rel="nofollow noopener" target="_blank">#development-cheatsheet</a>)<br>8. [**Glossary of Terms**](<a href="https://k.matthias.org/tags/glossary-of-terms" class="hashtag" rel="nofollow noopener" target="_blank">#glossary-of-terms</a>)</code></p>