Markup and meaning
Technical writing for people who build documentation systems
Practical approaches to docs-as-code, structured authoring, DITA, automation, and AI-assisted documentation.
Open to permanent Senior Technical Writer opportunities with engineering and product teams: developer and API documentation, docs-as-code, structured authoring (DITA XML), and automated CI/CD publishing pipelines.
Articles
Latest articles
Notes on decisions I have made while building and maintaining documentation systems.
-
API
The manual is the API
A coding agent, a support chatbot, and a RAG pipeline all need a reliable way to find and fetch relevant content from a documentation site, without scraping HTML or guessing URLs. How one documentation manual turns its existing corpus into that interface, without building a second system for it.
-
Docs-as-Code
CI/CD for a print artifact: one principle, two projects
Running make locally is one thing. Guaranteeing that every contributor’s push or YAML edit on GitHub produces the same press-ready artifact on a clean machine with a pinned toolchain is another. How two print projects implement that guarantee with GitHub Actions.
-
Astro
You Probably Don’t Need a CMS: Building a Lightweight Admin with Git and Astro
Most of a small organization’s website barely changes. This is an argument for building the smallest editing interface it actually needs, using Astro, Git, YAML, and a small admin layer instead of a full CMS.
-
AI
AI will soon replace GUIs: rebuilding an InDesign leaflet through conversation, not clicks
A GUI hides complex code behind menus and drag handles you operate by hand. AI hides the same complexity behind a conversation. Recreating a hand-built InDesign leaflet as a YAML-to-LaTeX pipeline: abandoned in 2025 as beyond the time I could afford: is what made the difference concrete.
-
DITA XML
Structured authoring’s hidden bill: when DITA XML pays off, and when it doesn’t
DITA XML can shrink the volume a technical writer creates, translates, and maintains: and a firewall vendor once got its documentation praised by the press because of it. But the productivity comes with a complexity bill. Here’s where structured authoring earns its keep, and where it’s overkill.
Index
Explore by topic
Explore how the topics in my work connect.
Circle size shows how many articles use a topic. A line joins two topics that appear together in at least 2 articles, thicker when they share more. Each topic links to its articles.
AI documentation assistant
Explore the articles
Ask a question in plain language. The assistant answers from the articles published on this site, grounded in their text, and lists the ones it used. To look up an exact term, use search.
Answer
Sources
Try rephrasing with a more specific term, browse by topic, or search the articles.
Need methods, templates, and case studies? See the technical writing practice (opens in a new tab).
About the author
Expertise
I work with engineering teams on developer and API documentation, from information architecture and authoring to automated builds, checks, and publishing.
-
Documentation
- Developer documentation
- API documentation
- Technical documentation
- Information architecture
Developer guides and API reference reviewed with engineers, from reference templates to OpenAPI generated from a single source, organized by concept, task, and reference.
Expertise: Developer & API documentation (opens in a new tab) · Documentation process & quality (opens in a new tab) · Multilingual documentation (opens in a new tab)
-
Methods & standards
- Docs-as-code
- Structured authoring
- DITA
- Documentation architecture
Documentation in Git next to the product, topic-based DITA XML with content reuse and conditional text, and an architecture that keeps large documentation sets consistent.
Expertise: Docs-as-code (opens in a new tab) · DITA & structured authoring (opens in a new tab) · Documentation architecture (opens in a new tab)
-
Engineering workflow
- Git and pull-request review
- CI/CD
- Automation
- Markdown, YAML, XML
Reproducible builds with pinned toolchains, automated checks, publishing pipelines, and content generated from data. I use AI for selected documentation tasks, with human review before publication.
Expertise: Automation & CI/CD (opens in a new tab) · AI-assisted documentation (opens in a new tab)
Team integration
How I contribute to a team
How I work as an embedded technical writer within product, engineering, and documentation organizations.
- Developer & API documentation
Technical writing
Authoring developer guides, API references, architecture overviews, and code-adjacent documentation directly with engineers and subject-matter experts. Structured by concept, task, and reference to explain complex systems accurately.
- Information architecture & structured content
Documentation systems
Designing scalable content models, docs-as-code repository structures, and topic-based DITA XML libraries. Establishing shared templates and content reuse so multiple contributors write consistently without duplication.
- CI/CD, automation & validation
Documentation engineering
Building Git workflows, CI/CD automation, and reproducible builds with pinned toolchains. Enforcing quality with automated validation gates—schema checks, link verification, and preflight tests in pull requests.
- Engineering alignment & release integration
Team collaboration
Embedding documentation into sprint cycles and release workflows. Collaborating with engineers, product managers, and translators to ensure documentation is reviewed, validated, and published in lockstep with software releases.
Problems I have worked on
Selected work
Evidence of technical writing, structured authoring, and documentation engineering contributions.
- Developer documentation · Single-sourcing
Single-source API documentation
- Reference data copied manually into API documentation, web pages, and application views drifts out of sync.
- Architected a single YAML source of truth in Git and authored the build pipeline generating interactive OpenAPI/Swagger docs, static HTML tables, and REST JSON payloads from one dataset.
- Demonstrates single-sourcing from a machine-readable data model to reduce content drift across API references, static web documentation, and client application payloads.
See the work: Single-source API documentation Live API docs: Single-source API documentation
- Structured authoring · Content reuse · DITA XML Role: Technical Writer
NuFirewall product documentation
- Keep enterprise firewall software documentation consistent across multiple deliverables and languages without duplicating sources.
- Structured the product documentation suite in DITA XML using centralized conref libraries, ditaval conditional text for target user profiles, and translation-ready modular topics.
- Demonstrates structured authoring in DITA XML with centralized conref reuse and ditaval profiling across deliverables and languages, using reusable content structures to support translation workflows and earning press recognition for documentation quality.
View the case study: NuFirewall product documentation (opens in a new tab) When DITA pays off: NuFirewall product documentation
- Documentation engineering · Automated validation & CI/CD
CI/CD for print deliverables
- Document builds on contributors' machines drifted: toolchain updates altered layouts, and unverified RGB images reached the press.
- Built GitHub Actions CI/CD pipelines with pinned toolchains, automated CMYK color conversion, and non-blocking PDF/X-4 preflight validation for multi-author publications.
- Demonstrates docs-as-code automation for publications, using GitHub Actions, pinned toolchains, automated CMYK conversion, and preflight validation to check PDF/X-4 compliance in CI.
See the work: CI/CD for print deliverables Example CI/CD pipeline: CI/CD for print deliverables (opens in a new tab)
- Documentation architecture · Content lifecycle & maintenance
Technical writing practice
- Keep a bilingual collection of technical-writing methods, case studies, worked examples, and documentation projects accurate and maintainable over more than a decade.
- Architected and maintained the documentation set in Git since 2014, evolving it across formats (WordPress to reST/DITA, now Astro) with automated CI validation, bilingual parity, and an agent-ready documentation API.
- Demonstrates long-term documentation lifecycle management and architectural evolution, maintaining a bilingual technical knowledge base across platform migrations and continuous automated delivery.
See how it is built: Technical writing practice (opens in a new tab) Translating it with AI: Technical writing practice
docs.redaction-technique.org
Technical writing practice
A bilingual collection of technical-writing methods, case studies, worked examples, and documentation projects. Built and maintained in Git since 2014.
Contact
Get in touch
Available for a new opportunity from October 2026
My current Senior Technical Writer contract at Unity ends on October 1, 2026. I am open to a permanent Senior Technical Writer role in developer documentation, documentation architecture, and docs-as-code.
Reach me on LinkedIn or through the contact form to discuss permanent Senior Technical Writer opportunities or documentation systems.