Software Factory

The problem

We could all use AI to write code, and our pace of development had increased. The challenge was making sure quality and reliability kept up. We needed a consistent way to check the work and know it was ready to release as the team built faster.

The solution

I built a shared workflow around Linear, coding agents and their development tools to give the team a consistent process for planning, building and checking AI-assisted changes. AI writes each Linear ticket in a formal format with the problem and acceptance criteria. The ticket then becomes an implementation plan with clear validation steps.

Once the plan is approved, the agent works in isolated Git worktrees across the relevant repositories. The work is checked against the plan, with test results, browser checks and anything still blocked recorded for review. This gives reviewers evidence to assess whether a change is ready as development speeds up.

How it works

The architecture, at a glance.

  1. Linear issue

    AI writes the ticket in a formal format with the problem and acceptance criteria

  2. Approved plan

    Agree scope, affected code and validation steps

  3. Agent worktrees

    Build changes in isolated worktrees across the relevant repositories

  4. Checks & review

    Record test results, browser checks and unresolved issues

Failed checks and unmet acceptance criteria return to development before handoff. The review records what passed and what still needs attention.

Technology

Shared workflow
Coding agent skills, repository instructions and Markdown plans define the steps and checks for each change.
Work tracking
Linear acceptance criteria and GitHub pull requests connect the requirements to the implementation and review evidence.
Isolation & validation
Git worktrees keep parallel changes separate. Repository-specific checks and browser review cover the Next.js frontend and Django backend.

Worth mentioning

Agreeing what good looks like before coding

The goal, constraints, affected code, acceptance criteria and validation steps start as a saved template. That gives the team and agents a clear basis for building and reviewing changes, even when someone else picks up the work.

Keeping parallel development separate

With more work moving at once, changes need room to be built and checked independently. The workflow maps dependencies across all repositories and uses isolated worktrees to keep parallel changes separate.

Making quality visible at review

I made the handoff record the checks that passed, what was reviewed in the browser and anything still blocked. Reviewers can see the evidence and remaining gaps before deciding whether to merge or release.