Freeive

Fail School·Published 2026.05.14·Views 51

An AI Build Course for Developers (Cursor and Claude Code as 3x Amplifiers)

The headline "AI replaces developers" is a lie. Use Cursor and Claude Code as skill amplifiers — 7 good prompt patterns, real .cursorrules and CLAUDE.md ex

AI doesn't replace developers — the developer who uses AI well replaces the one who doesn't.

The lie of "AI replaces developers"

Remember the headlines that flooded LinkedIn and newsletters around this time last year? "LLMs eliminate senior developer jobs." "One Cursor is all you need, no team." Those articles missed two things.

First, most people writing those headlines weren't developers who'd actually used the tools. Second, what actually disappeared wasn't developer jobs — it was shaky developers. The productivity gap between juniors using Cursor and juniors who aren't is now 2x to 5x.

It's already happening in Korean startup dev teams on Slack and GitHub. While you hesitate, the dev next door already automated monorepo refactoring with Claude Code. The issue isn't AI — it's "how well you use it."

3 abilities of devs who use AI well

As AI tools become common, the gap between developers paradoxically grows. Not because of skill — because of mindset.

1. Context design

Throw one line at Cursor — if you don't really understand your own project structure and coding rules, the AI code is useless. Context design is the ability to explicitly structure information so AI can understand your project. Put team conventions in .cursorrules, project rules in CLAUDE.md, and you stop re-explaining the same thing. You also save ~30% of tokens.

2. Verification sense

Developers who receive AI-generated code and ask "is this right?" are completely different from "looks good, merge it." Good ones read the logic flow first, type-check, think about edge cases. "What if this function gets null?" "What about concurrency?" — they apply the same questions to AI code too.

3. Debugging skill

When asking "why doesn't this code work?", a good dev reads logs, error messages, and stack traces, and explains the problem to AI. Hand AI only "Cannot read property 'map' of undefined" and AI loses focus too. Give context: "On line 45, user.orders is undefined, but the API should always return an array here." Claude Code finds the cause in 5 seconds.

Cursor and Claude Code, two tools two philosophies

The right answer to "Cursor vs Claude Code" is both. You just need to know when to use which.

Cursor is the pair programmer. AI everywhere in the IDE — tab completion, inline edit (Ctrl+K), Chat, Composer. For fast single-file edits or handling one or two edge cases, Cursor wins. The complete-in-IDE experience makes it nearly impossible to lose context.

Claude Code is the director. Say "find all payment-related types in this monorepo and refactor to Stripe v3 schema," it plans, scans, and edits multiple files. For complex refactors and features spanning multiple modules, Claude Code is efficient. If the whole team uses Claude, sharing a CLAUDE.md keeps context consistent.

Korean example: Team-Attention's Goobong Jeong said "Cursor for 5-minute jobs, Claude Code for jobs that'll take more than 30 minutes." Sionic AI's Jinhyung Park talks about a "multi-LLM workflow." When Claude is wired through MCP to other tools (code review, build verification), one command can run analysis → hypothesis → implementation → verification.

Criterion: 1–3 files, under 5 minutes → Cursor. Entire module, design needed → Claude Code.

7 good prompt patterns

Pattern 1. Plan → Execute

Before implementing this feature, plan first:
- files to change
- main changes per file
- expected risks
Then write the code.

Prevents AI from rushing to code. If "DB migration is also needed" is caught at the planning step, you don't have to rewrite code.

Pattern 2. Spec-driven

Write a function satisfying this TypeScript interface:

interface UserCreateRequest {
  email: string;
  age: number;
  // ...
}

Throw InvalidInputError on bad input.

A spec first makes AI generation direction sharper.

Pattern 3. Example-driven (3–5 examples)

// Prompt: write validation following this pattern
validateEmail('test@example.com') // true
validateEmail('invalid.email')    // false
validateEmail('a@b.c')            // true
validateEmail('')                 // false

Examples beat a thousand words of explanation. AI learns the pattern and auto-handles edge cases.

Pattern 4. Constraint-first

Build under these constraints:
- sync functions only
- no new dependencies
- function size under 20 lines
- no regex

Constraints prevent over-engineering.

Pattern 5. Diff-based

Only change what's in this code below.
Don't rewrite the whole function — minimum change only.

Useful for refactoring.

Pattern 6. Review-first

When reviewing this code, especially check:
- duplicate code
- null checks
- N+1 problems
- missing error handling

Then propose fixes.

Pre-define the senior reviewer role for AI.

Pattern 7. Iterative refinement

Do a basic implementation first.
Then improve performance 10x.

Asking for everything at once loses consistency. Step-by-step improvement gets optimized results at each step.

Make AI a senior code reviewer

"Code review" is the most hated and most important task in dev work. Claude Code's Code Review is built for this, but using it raw is useless. A good review reflects your team's criteria.

Put review criteria in .cursorrules or CLAUDE.md first.

# Code Review criteria

1. Type safety
   - TypeScript strict mode
   - All function input/output typed
   - No "any"

2. Error handling
   - All Promises have catch
   - API calls log error messages

3. Performance
   - DB N+1 check
   - memo/useMemo optimization
   - Reject if bundle grows +10KB

4. Security
   - SQL injection, XSS
   - Sensitive data in .env

Now just say "start code review" per PR, and Claude Code reviews against your criteria. Senior-dev-speed, no bias, no fatigue-driven quality loss.

Corca's Huidong Bae in Korea: "When we first added AI to our legacy codebase, the team revolted because it was too strict. We wrote 'this legacy section is exempt' in CLAUDE.md and from that moment AI reviewed in tune with the team."

Real examples: .cursorrules and CLAUDE.md

.cursorrules example (Next.js + TypeScript)

# .cursorrules

Coding style
- Max 30 lines per function
- Variables camelCase
- Constants UPPER_SNAKE_CASE
- Components FC<Props>

Error handling
- try-catch only in Server Actions
- Always console.error + UI feedback

Performance
- Use next/image for images
- Show bundle size delta in build log

CLAUDE.md example

# CLAUDE.md

Stack
- Node.js + Express + TypeScript
- PostgreSQL (Supabase)
- React 18 + Tailwind
- Vercel

Hard rules
- All API endpoints under /api/v1
- DB queries only via Prisma ORM
- Env vars must be defined in .env.example

Conventions
- Errors inherit AppError
- Middlewares only under /middlewares
- Types centralized in /types

Last working patterns
- API response: { success, data, error }
- Async work via Bull Queue
- Validation: zod + class-validator

New-feature prompt template

Implement [feature].

Requirements: [spec]

Constraints:
- TypeScript strict
- Test coverage 70%+
- 1000-item processing < 500ms

Plan first, then write tests first.

Wrapping up

AI doesn't replace developers. The developer who uses AI well replaces the one who doesn't. That's the core of this post.

Next: what you should not delegate to AI. Cursor at its best, you still have to make architecture decisions. Security too. Business logic too. The moment you draw that line precisely, you become a real developer of the AI era.

References

  1. Team-Attention (2026), "Building AI workflows with Claude Code," Claude Code Meetup Seoul.
  2. Corca (2026), "Building environments where agents and humans both perform on legacy codebases," Claude Code Meetup Seoul.
  3. SLEXN (2025), Context Management in AI-IDEs (Cursor, Windsurf, Qodo)
  4. SK DevOcean (2025), Automating Code Review with LLMs
  5. Claude Code Code Review Guide
  6. Cursor: Working with Context

Previous: A Non-Dev Builds an App in a Week
Next: The 1,000,000 KRW Mistake — What Not to Delegate to AI


Minchul Kim, CEO of Freeive, Fail School

#failschool#build#cursor#claude-code#ai-dev#cursorrules#claude-md#prompt-patterns

Comments

Comments 0

Checking sign-in status…

Loading comments…

Recent

More notes.