AI-assisted development · Engineering workflow · Product judgment
How I use AI in my development workflow as a software engineer
A practical system for using AI to understand codebases, shape ambiguous work, implement carefully, and verify what ships—without outsourcing engineering judgment.
AI is most useful to me when it makes the engineering process clearer. I use it to inspect more context, compare more options, and shorten the distance between an ambiguous problem and a verified solution—not to outsource judgment.
The operating loop
AI accelerates the work; verification determines what survives.
The operating principle
AI works inside my process, not above it.
The model does not attend the stakeholder conversation, own the production incident, or explain a tradeoff to the team. I do. That changes which work I accelerate and which decisions stay firmly human.
My goal is not to generate more code. It is to reduce the distance between an unclear problem and a verified solution.
Speed and accountability belong in different columns.
Inspect and draft
Move quickly through repository context and mechanical work.
- Search
- Compare
- Scaffold
- Refactor
- Challenge
Decide and own
Make product, architecture, security, and shipping decisions.
- Understand
- Choose
- Review
- Explain
- Own outcomes
My workflow
Five loops move the work from context to confidence.
Every stage has a human gate and a concrete exit artifact.
- InputContext
User outcome, constraints, nearby code, and existing patterns.
- DecisionPlan
Facts, assumptions, risks, scope, and acceptance criteria.
- DraftBuild
Mechanical implementation within known boundaries.
- EvidenceVerify
Types, tests, build, browser journey, and diff review.
- SystemLearn
Turn corrections into tests, tokens, docs, or rules.
Where it helps
The tool changes role across the development lifecycle.
Leverage is useful only when its corresponding check is explicit.
| Decision | AI contribution | Human check |
|---|---|---|
| Discovery | Map code, data flow, and nearby patterns | Is the context complete and relevant? |
| Product shaping | List states, edge cases, and acceptance criteria | Does this match the real user decision? |
| Implementation | Draft components, tests, migrations, and docs | Does it respect system boundaries and craft? |
| Debugging | Generate focused hypotheses from concrete signals | Which hypothesis survives reproduction? |
| Review | Challenge accessibility, performance, and scope | What does the actual diff and product prove? |
The boundaries
Some work should never be delegated blindly.
Credentials, private customer information, patient data, and confidential business material stop at an approval boundary. Generated code also does not get to establish an architectural pattern by accident.
I read what ships. AI can draft quickly, but responsibility cannot be delegated.
Three gates remain non-delegable.
- InputApproved context
Sanitize and confirm the environment before sensitive material enters a tool.
- DesignDeliberate architecture
New patterns require a reason, not merely generated precedent.
- ReleaseVerified ownership
A responsible engineer understands, tests, reviews, and owns what ships.
A practical example
A feature should leave behind evidence, not only a diff.
Six artifacts turn an ambiguous workflow into reusable product knowledge.
- OutcomeUser statement
Describe the result in the user’s language.
- ContextRepository map
Find adjacent behavior, primitives, state, and tests.
- ScopeBounded plan
Expose assumptions, edge cases, and stop conditions.
- ChangeDraft diff
Delegate mechanics while shaping behavior directly.
- ProofVerified journey
Exercise responsive, accessible, loading, empty, and error states.
- MemoryReusable rule
Preserve the lesson as a test, token, component, or note.
The result
AI gives me leverage when the feedback loop stays honest.
The value is not that AI can type faster. It is that I can inspect more context, compare more options, and verify more thoroughly—while remaining accountable for every decision. Used this way, AI does not replace the engineering workflow. It makes the workflow more deliberate.