Develop engineers who can leverage AI tools effectively while maintaining deep technical understanding and professional engineering standards.
- Real-world standards from day one
- AI as a tool, not a crutch
- Understanding > Output
- Professional accountability for all code
- 6 months intensive
- 20-30 hours/week commitment
- Remote-first with synchronous reviews
Project: Unbeatable Tic-Tac-Toe Engine
Technical Goals:
- Environment setup (Git, Python, testing frameworks)
- Algorithm design and implementation (minimax, alpha-beta pruning)
- Performance optimization
- Comprehensive testing
Professional Skills:
- Code organization and documentation
- PR-based workflow
- Code review participation
- Performance profiling
AI Integration:
- Use AI for learning concepts
- Generate test cases
- Explore optimizations
- Must defend all implementation choices
Deliverables:
- Working game with unbeatable AI
- Comprehensive test suite
- Performance benchmarks
- Technical documentation
Project: HTTP Server from Scratch in Rust
Technical Goals:
- TCP/IP socket programming
- HTTP protocol implementation
- Concurrent request handling
Professional Skills:
- RFC interpretation
- Error handling strategies
- System debugging
- Resource management
AI Integration:
- Protocol clarification
- Debugging assistance
- Pattern exploration
- Performance optimization ideas
Deliverables:
- HTTP/1.1 compliant server
- Benchmark results
- Architecture documentation
- Comparison with production servers
Project: JSON Parser with Query Language
Technical Goals:
- Parser combinators
- Type-driven development
- Error handling and reporting
- Query language design
Professional Skills:
- API design
- Documentation-first development
- Property-based testing
- Type system leverage
AI Integration:
- Grammar exploration
- Test case generation
- Type signature assistance
- Edge case discovery
Deliverables:
- Full JSON parser
- Query language implementation
- Comprehensive type safety
- Usage documentation
Project: Distributed Key-Value Store
Technical Goals:
- Consensus algorithm (simplified Raft)
- Network partition handling
- Consistency guarantees
- Failure recovery
Professional Skills:
- Distributed debugging
- System observability
- Chaos engineering basics
- Production readiness
AI Integration:
- Failure scenario generation
- Test harness development
- Performance analysis
- Bug reproduction
Deliverables:
- Working distributed KV store
- Chaos testing results
- Operations runbook
- Architecture decisions record
Project: Domain-Specific AI Development Assistant
Technical Goals:
- Agent architecture design
- Prompt engineering
- Evaluation framework
- Tool integration
- RAG implementation
Professional Skills:
- Eval-driven development
- Cost optimization
- Safety considerations
- User experience design
AI Integration:
- Meta-level: using AI to build AI
- Evaluation automation
- Performance monitoring
- Iterative improvement
Deliverables:
- Working AI assistant
- Evaluation suite with metrics
- Cost analysis
- Improvement roadmap
Project: Student's Choice - Full System
Requirements:
- Must integrate multiple paradigms
- Production-ready implementation
- Comprehensive documentation
- Performance benchmarks
- AI-assisted development throughout
- Monday: Module kickoff, new concepts
- Wednesday: Mid-week check-in, pairing session
- Friday: Code review, technical discussion
- Async: Project work, peer reviews
-
Self-Review Checklist
- Does it work correctly?
- Can I explain every decision?
- Is it tested thoroughly?
- Would I deploy this?
-
Peer Review
- One apprentice reviews another's code
- Focus on understanding and clarity
- Required before mentor review
-
Mentor Review
- Technical correctness
- Professional standards
- Architecture decisions
- AI usage effectiveness
-
Review Defense
- Verbal explanation of key decisions
- Live debugging demonstration
- Performance analysis
- Trade-off discussions
Technical Competence
- Correctness of implementation
- Performance characteristics
- Error handling
- Test coverage
Professional Skills
- Code clarity and documentation
- Review participation
- Communication ability
- Debugging proficiency
AI Integration
- Effective use without dependency
- Understanding of generated code
- Critical evaluation skills
- Tool selection judgment
Mentorship
- 1:1 weekly meetings
- Code review participation
- Architecture discussions
- Career guidance
Peer Learning
- Pair programming sessions
- Group debugging workshops
- Architecture review meetings
- Knowledge sharing presentations
Resources
- Curated learning materials
- AI tool access
- Development environment
- Production-like infrastructure
An apprentice graduate will be able to:
- Build complex systems from first principles
- Effectively leverage AI without dependency
- Debug and maintain any codebase
- Make sound architectural decisions
- Communicate technical concepts clearly
- Work at professional engineering standards
Graduates will have:
- 5 non-trivial projects showcasing different paradigms
- Public code repository with professional standards
- Technical blog posts explaining their projects
- Demonstrated AI integration skills
- Real code review experience
- Basic programming experience (any language)
- Commitment to 20-30 hours/week
- Willingness to be challenged
- Growth mindset