I've been experimenting with AI coding tools daily for the past year with a small engineering team (all senior 15+, FAANG backgrounds). Wrote down everything we learned, the parts that worked and the parts that didn't.
Some things that surprised us:
- AI is slower than writing code yourself on any single task. The win is not speed, it's parallelism. We made our dev environments duplicable and now work on multiple PRs simultaneously.
- AI is dramatically better on clean code than on technical debt. It's like a mirror that shows you how much chaos you've been tolerating.
- Out of the box tools give mediocre results. We invested heavily in configuration (20 AGENTS.md files, 6,553 lines total) and in augmenting the agent with skills: typechecking, test runners, read-only access to tickets, logs, Sentry. The agent self-debugs and fetches its own context now.
- Never trust the output. We built a pr-reviewer agent whose only job is to criticize code changes against the original specs. Strongly typed languages help enormously here, the compiler is your cheapest AI reviewer.
- Mental context-switching is the new must-have skill for engineers. You orchestrate, the AI executes (for now).
Would love to hear what's working for other teams, I'm sure our approach is not the only one.
1 comment
[ 2.6 ms ] story [ 12.1 ms ] threadSome things that surprised us:
- AI is slower than writing code yourself on any single task. The win is not speed, it's parallelism. We made our dev environments duplicable and now work on multiple PRs simultaneously.
- AI is dramatically better on clean code than on technical debt. It's like a mirror that shows you how much chaos you've been tolerating.
- Out of the box tools give mediocre results. We invested heavily in configuration (20 AGENTS.md files, 6,553 lines total) and in augmenting the agent with skills: typechecking, test runners, read-only access to tickets, logs, Sentry. The agent self-debugs and fetches its own context now.
- Never trust the output. We built a pr-reviewer agent whose only job is to criticize code changes against the original specs. Strongly typed languages help enormously here, the compiler is your cheapest AI reviewer.
- Mental context-switching is the new must-have skill for engineers. You orchestrate, the AI executes (for now).
Would love to hear what's working for other teams, I'm sure our approach is not the only one.