Practice and reinforce the concepts from Lesson 3
By completing this workshop, you will:
ai-code-workshop/
├── src/ # Source code
├── tests/ # Test suites
├── docs/ # Documentation
├── benchmarks/ # Performance tests
└── security/ # Security audit results
You'll build a production-ready microservice with AI assistance, focusing on code quality and professional standards.
Professional Prompt Template:
Generate a RESTful API service architecture in [language] with:
- Clean architecture pattern (controllers, services, repositories)
- Database integration with connection pooling
- Authentication middleware using JWT
- Request validation and error handling
- Logging and monitoring setup
- API documentation (OpenAPI/Swagger)
- Docker containerization
- Environment configuration management
Include production-grade considerations:
- Rate limiting
- CORS configuration
- Health check endpoints
- Graceful shutdown handling
Evaluate AI-generated code against these criteria:
Architecture & Design
Code Standards
Security
Performance
Round 1: Core Functionality
Review the generated code and request:
1. Unit tests for all service methods
2. Integration tests for API endpoints
3. Error handling improvements
4. Input sanitization enhancement
Round 2: Production Hardening
Enhance for production deployment:
1. Add circuit breaker pattern
2. Implement retry logic with exponential backoff
3. Add distributed tracing headers
4. Include metrics collection
Round 3: Documentation & DevOps
Complete the professional setup:
1. Generate comprehensive API documentation
2. Create CI/CD pipeline configuration
3. Add database migration scripts
4. Include monitoring dashboards
Create performance tests for your API:
// Example performance test structure
const scenarios = [
{
name: 'Light Load',
vus: 10, // Virtual users
duration: '30s',
thresholds: {
http_req_duration: ['p(95)<200'], // 95% of requests under 200ms
http_req_failed: ['rate<0.1'], // Error rate under 10%
}
},
{
name: 'Heavy Load',
vus: 100,
duration: '60s',
thresholds: {
http_req_duration: ['p(95)<500'],
http_req_failed: ['rate<0.2'],
}
}
];
Optimization Prompt:
Analyze this code for performance bottlenecks and suggest optimizations:
[Your code]
Focus on:
1. Database query optimization
2. Memory usage reduction
3. CPU-intensive operations
4. Network call efficiency
5. Caching opportunities
Document your findings:
Metric | Before Optimization | After Optimization | Improvement |
---|---|---|---|
Response Time (p95) | ___ ms | ___ ms | ___% |
Throughput | ___ req/s | ___ req/s | ___% |
Memory Usage | ___ MB | ___ MB | ___% |
CPU Usage | ___% | ___% | ___% |
Perform a comprehensive security review using AI assistance:
Authentication & Authorization
Input Validation & Sanitization
Data Protection
API Security
Security Review Prompt:
Perform a security audit on this code:
[Your API code]
Check for:
1. OWASP Top 10 vulnerabilities
2. Authentication bypasses
3. Data exposure risks
4. Injection vulnerabilities
5. Cryptographic weaknesses
Provide specific code fixes for each issue found.
Create a security findings report:
## Security Audit Report
### Critical Findings
1. **Issue:** [Description]
**Risk Level:** High/Medium/Low
**Fix:** [Code solution]
**Status:** Fixed/Pending
### Security Improvements Implemented
- Added input validation for all endpoints
- Implemented rate limiting: 100 req/min
- Enhanced password policy requirements
- Added security headers (HSTS, CSP, etc.)
Submit your applications to AI for review:
Review Prompt Template:
Please review this code for:
1. Code quality and best practices
2. Potential bugs or errors
3. Security vulnerabilities
4. Performance optimizations
5. Readability improvements
[Your code here]
For each application:
Choose the most critical feedback items and:
Code Quality: How do you verify AI-generated code is production-ready?
Learning Impact: How has using AI changed your approach to coding?
Dependency Balance: How do you balance using AI help with developing your own skills?
Error Patterns: What types of errors does AI commonly make in code generation?
Design your personal workflow:
1. Initial Request: ________________
2. Code Review: ___________________
3. Testing: _______________________
4. Improvement: ___________________
5. Documentation: _________________
6. Final Validation: _______________
Create your own checklist for AI-assisted coding:
Build a complete full-stack application with AI assistance:
Application: Task Management System
Requirements:
Process:
Documentation:
✅ DO:
❌ DON'T:
When AI code doesn't work:
Submit a portfolio containing:
Next lesson focuses on debugging with AI - you'll learn how AI can help you find and fix bugs faster than ever. Save any buggy code you encounter during this activity for next time!