Skip to main content
Fabien Fouassier
Back to Writing

How AI Changed the Way I Develop Software

From skeptic to power user — how AI reshaped my workflow without replacing judgment, experience, or discipline.

AIToolingSeptember 29, 2025·4 min readRead article
How AI Changed the Way I Develop Software

AI transformed my role from coder to pilot. I spend less time typing and more time driving architecture, quality, and product decisions. The result: faster delivery with stronger foundations — not despite AI, but because of how I use it.

Key takeaways

  • AI handles execution; engineers handle judgment and direction
  • Guardrails (strict linting, tests, reviews) are non-negotiable — AI must pass the same gates
  • The real gain is time for architecture and DX, not just faster code output

From Coder to Pilot

I've been a developer long enough to remember life before AI tools. Back then, my process was simple: shape the solution in my head, search the web to validate it, and once I had enough confidence, dive into the code. It worked — but it was slow, repetitive, and often frustrating.

Everything changed when AI entered my workflow. At first it was rough. When ChatGPT 3.5 came out, it was barely more than a faster Google with a knack for writing snippets. But even then I saw the potential. If this was just the beginning, I knew it could fundamentally reshape the way I worked. And it has.

AI didn't replace me — it changed my role.

Today, I spend less time typing code and more time driving the product forward:

  • I focus on architecture and developer experience (DX), which has always been a top priority for me.
  • I let AI handle the heavy lifting: writing code, generating tests, drafting docs, even refactoring infra setup.
  • I validate, guide, and polish.

Think of it like flying a plane: AI is the engine, but I'm still the pilot. My knowledge, my experience, and my analytical skills matter more than ever.

Where AI Fits in My Workflow

I now use AI for almost everything code-related, unless it's a trivial change that takes a minute.

Boilerplate and refactoring: AI handles repetitive code with ease

Debugging and problem-solving: I provide full context, and AI often finds in minutes what I've spent hours chasing

Example: I once struggled for days with a Next.js middleware that worked locally but failed in CI. After narrowing it down to Docker, I gave AI the context. Within minutes, it spotted the issue. After a small refactor, the middleware worked and the CI time dropped from 10 minutes to under 5.

Learning new stacks: On the Richemont mission, I had to write Swift without prior deep knowledge. AI accelerated my learning curve, helping me build complex features while still letting me understand what was going on.

AI isn't just for coding either. I use it for ADR writing, repo hygiene, documentation, architecture decisions, and even debugging CI pipelines.

The Boundaries I Set

AI isn't perfect — and using it blindly is a recipe for messy, unreadable code. I've seen it propose variables without typings, single-letter names, or ignored rules. That's not acceptable.

Here's how I ensure rigor isn't lost:

Strict guardrails: Strong lint and TypeScript rules, plus tests that AI must pass before I even review the code

Layered validation: I run deep code reviews myself and sometimes ask AI in a fresh context to review again

Structured process: For complex tasks, I never ask AI to just "spit out code." I first ask for a plan, then have it execute step by step

This may sound tedious, but it saves time later. A clean, well-understood codebase is an asset. A mess, even if generated quickly, is a liability.

The Impact

Developer Experience (DX): Cleaner, more robust codebases. I now focus on maintainability and readability instead of firefighting. It's a joy to work in code that feels solid.

Product Delivery: Faster than ever, but also more reliable. I have more time to test and polish features instead of rushing them out.

My Philosophy

For me, AI-assisted development means I'm still in charge. AI accelerates, but it doesn't replace judgment, experience, or discipline.

  • Don't outsource ownership. If you don't understand the code, you can't maintain it.
  • Don't trade rigor for speed. AI lets you move faster, but only if you enforce quality.
  • Use AI as a partner, not a crutch. Let it generate, but guide, review, and refine.

In one sentence: AI is my pair programmer, but I'm the one holding the wheel.