Christoph Fahlbusch
Native app design, strategy, and systems
Thought · March 6, 2026
A designer walks into a codebase…
What started as an experimental "what if I just... did this myself" branch turned into ~60 commits across 289 files. The experiment worked. The team saw the results and said "yeah, let's ship this."
Small problem: my 289-file branch was about as reviewable as a Terms of Service update. Nobody was going to approve that.
So I wrote an instruction file — basically a creative brief, but for git operations — describing how to split the branch into 12 themed, scoped pull requests. Then I handed it to an AI coding assistant.
In 30 minutes it:
- Created 12 branches from main
- Extracted the correct final state of each file group
- Committed, pushed, and opened all 12 PRs with full descriptions
- Audited everything: caught a stray config file, confirmed zero duplicates, verified complete coverage
- Merged latest main into all 12 branches — zero conflicts
- Generated an engineering overview with merge strategy, review estimates, and risk assessment
For context: doing this manually would've easily taken me 4–6 hours. And I would've definitely messed up at least two of those branches. (I say this with confidence because I know myself.)
Here's what I actually learned
Designers can ship code.
Probably also architecture. Maybe also business logic. But the visual layer — the stuff we've agonized over in Figma and then pray gets implemented correctly? AI bridges that gap. Even before the AI revolution I often said "here's the PR, let's pair on it" — but AI drastically sped this up.
Clear instructions matter more than technical skill.
My instruction file was basically a design spec, but for git. File groupings, naming conventions, merge order, PR templates. The AI executed it almost autonomously. Vague prompts get vague results — same as vague design briefs, honestly.
The tedious parts are where AI shines brightest.
I still made all the decisions. AI handled the mechanical git work that would've consumed an entire day of context-switching between terminals.
Build in a verification step.
The AI caught its own mistake during its audit pass. Two extra minutes of "did we miss anything?" saved us from pushing a config file to one of the 12 branches. Classic.
The future isn't designers OR engineers. It's designers working in the codebase with AI as the translator, and engineers focusing on the hard problems.
Now if you'll excuse me, I have 12 PRs to pair on.
(Full transparency: this post was also drafted by the same AI that split my branch. I'm starting to think it might be better at my job than I am. Just kidding. Mostly.)