The facts
In 6 weeks, I shipped and maintained 5 production projects (iOS + Web), totalling roughly 50,000 lines of code, with Lighthouse scores at 96/100 and an architecture that includes SwiftData, CloudKit, MongoDB and Stripe. No, Claude did not code in my place. He amplified my skills and let me focus on what matters: architecture and the value being created.

My background
I am an iOS developer by passion, with the goal of making it my full-time job. You hear everywhere that AI is going to replace developers. I do not buy it. AI will transform the craft, that much is certain. But more than anything, it amplifies those who understand how to use it.
The shipped projects
Calendio (Web SaaS): 95 files, 23,588 lines, Next.js 15 + MongoDB + Stripe, deployed on Vercel. My first SaaS, where I learned the fundamentals: MongoDB connection, Stripe implementation, all of it using Claude in explanatory and learning mode. The MVP is live.
Keepio (iOS): full restructure following an audit Claude ran on the app. Result: 3,000 fewer lines of code, a faster app, and lighter mental overhead.
ios-development-agents: a framework of 7 ultra-granular plugins for iOS development, constantly improved to address my needs faster.
Caffio (iOS): a coffee app where I explored the FoundationModels framework and used Claude to set up a project management system (Agile, 2-week sprints, user stories kept up to date in Jira via MCP).
EchoSwift (Discord bot): thanks to the Discord MCP, Claude helped me build a working bot. It was deployed and operational in 3 hours.
The question naturally arises: how is this possible? The answer is not "AI did all the coding". The real answer is far more nuanced.
Breaking the myths
"AI is going to code in my place"
In reality, AI amplifies developers who know how to use it. On Calendio, when I wanted to implement Stripe, I drove every architectural decision. Claude generated the code, but I was the one defining the structure, identifying gaps (currentPeriodEnd handling, stripeCustomerId on Artisan, limit-checking logic) and demanding zero ts-ignore.
The result: a complete, type-safe Stripe system. But I directed every step.
"AI code is low quality"
That is nuanced. AI code reflects the quality of the instructions it is given.
On Keepio, I asked Claude Code for an audit with notes, recommendations and optimisation help. The architecture went from a classic by-file-type structure to a per-module structure with UseCases, dynamic @Query filtering, and a working CloudKit sync.
I validated the result after understanding the trade-offs (better encapsulation versus deeper navigation in Xcode). I made the call after weighing the pros and cons.
"AI makes you lazy"
The opposite, actually. It raises the level of thinking. You shift from "How do I code this sort function?" to "How do I architect this system to support 10,000 users?". You go from 2 hours debugging an Optional unwrap to 30 minutes with continuous feedback. Procrastination on documentation disappears when it is generated as you go.
The real transformation: I went from "technician writing lines" to "architect designing systems".
My 3-phase workflow
Phase 1: Architecture first (20% of the time)
AI accelerates implementation, but a bad architecture will slow everything down later.
My process:
- Sketch the architecture by hand (diagrams, data flows)
- Ask Claude to challenge my choices: "What are the risks? What are the alternatives?"
- Validate or adjust based on the trade-offs identified
Phase 2: Collaborative implementation (60% of the time)
Claude codes, I validate and adjust.
My process:
- Precise prompts: "Implement CloudKit sync with conflict handling. Use the actor-based pattern for thread safety."
- Systematic validation: read every generated line, test the edge cases
- Fast iterations: refine the prompt rather than fix things by hand
Phase 3: Optimisation and documentation (20% of the time)
Claude excels at refactoring and documentation.
My process:
- Code review: "Analyse this code, identify optimisation opportunities"
- Refactoring: "Refactor this function for readability without changing behaviour"
- Documentation: "Generate the technical documentation for this module with usage examples"
Advanced techniques
The 3-layer prompt
Layer 1, Context: describe the business problem Layer 2, Constraints: specify the technical constraints Layer 3, Action: precise request with the expected format
Result: precise code that fits exactly what you need, often production-ready on the first iteration.
The ultra-granular plugin system
In ios-development-agents, I built 7 specialised Claude plugins: ios-architecture, swift-language, swift-concurrency, swiftui-views, swiftui-state, swiftdata-models, ios-orchestration.
The benefits:
- About 90% token savings thanks to specialisation (2K-token prompt instead of 20K)
- Higher quality because each plugin is an expert in its domain
- Easier maintenance: updating one plugin does not impact the others
What AI does not do
Understand implicit user needs. On Keepio, Claude generated a working list, but no visual feedback for late projects, no quick actions, no progress indicators. User empathy stays human.
Manage long-term technical debt. AI optimises for the immediate solution. On Calendio, I rejected an AI-suggested Redis cache because current traffic does not justify it and MongoDB with proper indexes is more than enough.
My golden rule
AI codes, I decide and I validate. Never the other way around.
The 3 principles to keep
- Architecture first: AI accelerates, but you need a clear vision
- Precise prompts: Context + Constraints + Action = quality code
- Systematic validation: read, test, profile every critical line
What I changed in my practice: I never code boilerplate by hand anymore, I ask AI to challenge my architecture decisions, I generate documentation alongside the code, and I spend 70% of my time thinking and 30% coding.

Commentaires
Aucun commentaire pour le moment. Sois le premier !