Can One Person Really Develop Entire Projects? 200% AI Utilization with CDK + Lambda + Cursor

Can One Person Really Develop Entire Projects? 200% AI Utilization with CDK + Lambda + Cursor

Hero Image Development environment managing everything from infrastructure to frontend with monorepo structure

🤦‍♂️ How I Used to Develop in the Past

Problem: Creating one repository per Lambda function

  • 10 projects = 10 repositories
  • Copy-paste hell for common code
  • Jumping between 10 repositories every deployment

Current: Managing everything in one project with CDK + Lambda + Cursor

  • IaC code, server code, frontend code, demo pages all in one place
  • AI understands the entire context and assists development
  • One person can develop entire projects
// Now managing everything in one project like this
project/
├── infrastructure/     # CDK code
├── lambda-functions/   # Server logic
├── frontend/          # Frontend
├── demo-pages/        # Demo pages
└── docs/              # Rulebook and guides

🚀 The Magic of Simultaneous Development Speed and Maintainability Improvement

200% Development Speed Improvement

The Power of AI Context Sharing

  • Cursor understands the entire project structure
  • Auto-generates server code by looking at infrastructure code
  • Auto-generates frontend integration code by looking at server API
  • Quickly adds new features with consistent patterns

Real Experience: Adding one new API

  1. Define Lambda function in CDK (30 seconds)
  2. Cursor generates server code based on existing patterns (1 minute)
  3. Auto-generates frontend integration code (1 minute)
  4. Deployment script follows existing patterns (30 seconds)

Total: 3 minutes. Used to take at least 30 minutes before.

Dramatically Improved Maintainability

Code Consistency Assurance

// All Lambda functions use the same pattern
export const handler = async (event: APIGatewayProxyEvent) => {
  try {
    // Apply common middleware
    const result = await processRequest(event);
    return successResponse(result);
  } catch (error) {
    return errorResponse(error);
  }
};

Simplified Version Control

  • Track all changes in one repository
  • Component-based folder structure instead of feature-based branches
  • Deployment can be done all at once or selectively

💡 But There Were These Challenges Too

Biggest Challenge: Rulebook Management

The Trap of Massive Source Code

  • Too complex for AI to understand the entire project
  • AI repeating past trial-and-error mistakes
  • Inconsistent code patterns confusing AI

Solution: Systematic Rulebook Creation

# Project Rulebook (docs/rulebook.md)

## 1. Lambda Function Writing Rules
- All functions use common/middleware.ts
- Error handling uses standardError class
- Environment variables managed in config/environment.ts

## 2. CDK Infrastructure Patterns
- Lambda functions use constructs/lambda-construct.ts
- API Gateway paths unified in kebab-case
- Project tags mandatory for all resources

## 3. Prohibited Actions
- Direct AWS SDK calls prohibited (use wrapper functions)
- Hardcoded ARNs prohibited (use CDK references)
- Use structured logging instead of console.log

When this rulebook is properly recognized by Cursor, AI develops with consistent patterns.

🎯 Now One Person Can Handle Entire Projects

Benefits of MSA Design + Monorepo Management

Separated Design, Integrated Management

Category Old Method Current Method
Repository Function-based separation Project integration
Deployment Individual deployment Selective batch deployment
Code Reuse Copy-paste Common modules
AI Utilization Limited Full context
Development Speed Slow Fast

Actual Project Structure

my-fullstack-project/
├── cdk/
│   ├── lib/
│   │   ├── api-stack.ts      # API Gateway + Lambda
│   │   ├── frontend-stack.ts  # S3 + CloudFront
│   │   └── database-stack.ts  # DynamoDB
│   └── bin/app.ts
├── lambdas/
│   ├── user-service/
│   ├── auth-service/
│   └── common/               # Common utilities
├── frontend/
│   ├── src/
│   └── dist/
├── demo/
│   └── landing-page/
└── docs/
    ├── rulebook.md           # Rulebook for AI
    └── architecture.md

🔧 Development Workflow with Cursor

Process of Adding New Features

  1. Requirements Definition (1 minute)
    • “Create user profile lookup API”
  2. Cursor Auto-generates (2 minutes)
    • Add Lambda function to CDK stack
    • Implement Lambda function (based on rulebook)
    • Generate frontend integration code
  3. Deploy and Test (2 minutes)
    • npm run deploy
    • Test immediately on demo page

Total: 5 minutes. This is the power of 200% AI utilization.

Token Consumption Optimization Tips

What I Learned Using Ultra Version

  • Well-made rulebook prevents AI from wandering
  • Include only relevant files in context window
  • Register frequently used patterns as snippets
// Register frequently used Lambda function template as snippet
const lambdaTemplate = `
export const handler = async (event: APIGatewayProxyEvent) => {
  // Standard pattern based on rulebook
};
`;

💡 Conclusion: Solo Fullstack Development Became Reality

Summary of Benefits

  • 200% development speed improvement
  • Dramatically improved maintainability
  • Consistent code quality through AI context sharing
  • One person can develop entire projects

Precautions

  • Rulebook management is key
  • Initial structure design requires time investment
  • Consider token consumption (Ultra version recommended)

Developing this way really makes a difference in productivity. I’m curious about how others with similar experiences manage their projects!

If you have better tips, please share them in the comments 🙏