Where Does an Indie Developer's Time Go? From 22 Hours to 8 Hours with an AI-Assisted Workflow
1. Where an Indie Developer's Time Goes
I've been doing indie development for five years, and my biggest realization is that the hard part isn't the technology—it's the fragmented workflow. For a small feature of just a few hundred lines of code, actual coding time might only account for 30%, with the rest spent on:
- Requirement clarification: turning vague ideas in your head into a clear task list
- Technical research: reading docs, comparing solutions, studying others' implementations
- Writing boilerplate: CRUD, parameter validation, error handling—repetitive work takes up the bulk
- Writing tests and documentation: the easiest to procrastinate on, and the easiest to accrue debt
- Pre-PR self-review: going over the diff, writing a clear description, walking through a checklist
I once tracked my time on a medium-sized feature (a backend module with permission management): about 22 hours total, of which less than 7 hours were pure coding. The remaining 15 hours were "glue time"—it's not that I didn't know how to do it, it's that I had to reorganize everything from scratch each time.
This is the indie developer's pain point: you have no colleagues to share the workflow with—every step is on you.
2. I Broke the Workflow into Six AI-Assisted Stages
I gradually reworked my workflow into a mode of "deep AI involvement." From idea to PR, a requirement now roughly goes like this:
1. Requirement clarification (15 minutes)
Throw the vague idea at the AI and have it ask questions back. I say: "Play the product manager and ask me about everything ambiguous in this requirement." It often asks more questions than I expect—that's exactly where the value is.
2. Task decomposition (10 minutes)
Have the AI break the clarified requirement into independently verifiable subtasks, each with explicit acceptance criteria. I go through them manually and cut out over-engineered parts.
3. Technical design (20 minutes)
Give the AI constraints (tech stack, deployment environment, team size) and have it produce 2-3 candidate solutions with trade-offs. I only make the decision.
4. Coding implementation (task by task)
Let the AI generate code task by task, following the decomposition. Key technique: provide context for only one task at a time, keeping the context clean—generation quality is noticeably more stable.
5. Test generation
First write the test case descriptions for critical paths yourself, then have the AI expand edge cases. AI excels at enumeration; humans excel at judging which edges are worth testing—test-first beats retrofitting tests by a wide margin.
6. PR self-review and description
Throw the diff at the AI, have it self-check against a checklist (naming, error handling, logging, security risks), then have it draft the PR description based on the diff, which I revise and finalize.
3. Before and After: Same Module, 22 Hours → 8 Hours
For that same backend module, I re-timed after reworking the workflow:
| Stage | Before | After |
|---|---|---|
| Requirement clarification | 3 hours | 0.5 hours |
| Technical research | 3 hours | 1 hour |
| Coding | 7 hours | 2.5 hours |
| Testing | 5 hours | 2 hours |
| PR review + description | 4 hours | 2 hours |
| Total | 22 hours | 8 hours |
Total time dropped to about 36% of the original. But two more important changes:
First, cognitive load dropped. Coding time went from 7 hours to 2.5 hours—not because AI writes fast, but because I no longer need to "think while writing." Once things are thought through during task decomposition, the coding stage is almost pure execution.
Second, less debt. Tests and documentation used to be sacrificed under deadline pressure; now, because AI generates this content at low cost, I actually do it fully every time. Part of the time saved goes into more careful human review—that part can't be skipped, and shouldn't be.
4. A Reusable Prompt Template
This is the template I've repeatedly refined for the "coding implementation" stage, suitable for any conversational coding assistant:
你是一位资深工程师,帮我实现以下任务。
## 背景项目
- 技术栈:[如 Python 3.12 + FastAPI + PostgreSQL]
- 项目结构:[简述目录结构与相关模块]
- 运行环境:[如 Docker + 某云平台]
## 本次任务
[只放一个子任务,附上验收标准]
## 约束条件
- 遵循项目现有的命名与错误处理风格
- 不引入新依赖,除非说明理由
- 涉及外部调用时必须处理超时与重试
## 输出要求
1. 先用3-5句话说明实现思路,不要直接给代码
2. 等我确认思路后,再输出完整代码与关键注释
3. 最后列出你不确定的地方,需要我提供更多信息The two rules—"explain your approach before writing code" and "list what you're unsure about"—were added after many painful lessons. They catch most generations that go off the rails from the start.
5. Some Honest Notes
- AI cannot replace your understanding of your own system. The more precise the context you give, the better the output; if you're too lazy to provide context, you'll spend more time fixing things.
- Review generated code. AI saves typing and organizing time—the responsibility for judgment remains with humans.
- On model selection, my approach: use strong models for heavy work, lightweight models for light tasks (editing comments, formatting)—this cuts costs significantly. As for pricing, refer to each provider's official pricing page; small teams should do a monthly usage audit.
- A stable API access channel matters—avoid wasting time bouncing back and forth between multiple tools.
Closing Thoughts
Going from 22 hours to 8 hours, what I saved isn't just time—it's the ability to ship a first version while an idea is still fresh. For an indie developer, that may be the most valuable part of all.
If you want to start building your own AI-assisted development workflow, begin with a stable model access channel: https://api.thistoken.ai/register
---
Ready to try it yourself? Sign up at https://api.thistoken.ai/register to get your API key and start building.
Хотите попробовать Token.AI?
Создайте API Key уровня проекта, включите каналы в консоли и настройте маршрутизацию, бюджеты и журналы аудита.
注册 ThisToken.AI 并获取 API Key