Deep Dives
As you’re building, you’ll want to go in deeper into specific areas of frontend and backend development. These deep dives are designed to help you gain deeper knowledge in specific areas.We recommend you write a blog post about your learnings (once every 2-3 weeks) and share it online. Recruiters and hiring managers love to see that you’re proactive about learning and growing, and don’t just have surface-level knowledge.
Frontend
UI/UX Engineering
- Component-driven development
- Design systems
- Responsive and adaptive design
- Micro-interactions
- User behavior analysis
- Design thinking for engineers
- Refactoring UI ($99 - One-time payment)
State Management
- React state management (Context, Redux, Recoil, Zustand)
- Immutable state patterns
- State machines and statecharts
- Optimizing state updates for performance
Frontend Performance
- Critical rendering path
- Lazy loading and code splitting
- Bundle size optimization
- Memory management
- Runtime performance profiling
- Rendering optimizations
- Perceived performance techniques
Browser APIs & Web Standards
- Service Workers
- Web Workers
- Intersection Observer
- ResizeObserver
- IndexedDB and Cache API
- Web Components
Animation & Graphics
- CSS animations and transitions
- Canvas API
- SVG animation
- WebGL fundamentals
- Three.js and 3D web graphics
- Animation libraries (GSAP, Framer Motion)
- Game development concepts for web
Accessibility
- WCAG guidelines
- Screen reader compatibility
- Keyboard navigation
- Accessible forms and interactions
- Color and contrast considerations
- Internationalization and localization
- Accessibility testing
Frontend Testing
- Component testing
- E2E testing
- Visual regression testing
- Performance testing
- User testing
- Test-driven development for frontend
Frontend Security
- XSS prevention
- CSRF protection
- Content Security Policy
- CORS configuration
- Secure authentication flows
- Client-side data protection
- Secure handling of user data
Progressive Web Apps
- Service worker lifecycle
- Offline capabilities
- Background sync
- Push notifications
- App shell architecture
- Installation and app manifest
- Lighthouse audits and optimization
Web Components
- Custom elements
- Shadow DOM
- HTML templates
- Component libraries
- Styling strategies
- Interoperability with frameworks
Backend
Distributed Systems Design
- Communication patterns
- Coordination
- Scalability
- Resilience
- Maintainability
- Data Models and Query Languages
- Storage and Retrieval
- Encoding and Evolution
Database Engineering
- Relational database design
- NoSQL database patterns
- Database normalization and denormalization
- Query optimization
- Database indexing strategies
- Connection pooling
- Caching layers
- Database migration strategies
- Fundamentals of Database Engineering
- Mastering PostgreSQL
- [Mastering MySQL]https://planetscale.com/learn/courses/mysql-for-developers)
Network Engineering
- IP fundamentals
- TCP vs UDP
- TLS/SSL fundamentals
- OSI Model
- HTTP/HTTPS fundamentals
- DNS resolution
- Load balancing
- CDN fundamentals
- WebSockets and real-time communication
API Design
- RESTful API best practices
- GraphQL schema design
- gRPC service definition
- API versioning strategies
- API documentation
- API security
- Rate limiting and throttling
- Contract testing
Caching Strategies
- Cache invalidation
- Cache consistency
- Multi-level caching
- Cache eviction policies
- Distributed caching
- Cache warming
- Redis optimization techniques
- CDN caching strategies
Message Queues
- Message broker selection
- Pub/sub patterns
- Queue processing strategies
- Retry mechanisms
- Dead letter queues
- Message serialization
- Kafka stream processing
- RabbitMQ exchange types
Authentication & Authorization
- OAuth 2.0 and OpenID Connect
- JWT implementations
- Role-based access control
- Attribute-based access control
- Multi-factor authentication
- Session management
- Password handling best practices
- Single sign-on systems
Backend Security
- OWASP top 10 vulnerabilities
- Input validation and sanitization
- API security best practices
- Data encryption at rest and in transit
- Secrets management
- Security headers
- Penetration testing
- Secure coding practices
Containerization & Orchestration
- Docker image optimization
- Kubernetes architecture
- Container security
- ConfigMaps and Secrets
- Pod lifecycle management
- Service mesh implementation
- Helm charts
- Container registry management
Microservices
- Service discovery
- API gateway patterns
- Circuit breaker pattern
- Bulkhead pattern
- Service mesh
- Data consistency in microservices
- Bounded contexts
- Decomposition strategies
Serverless Computing
- Function design patterns
- Cold start mitigation
- State management
- Event-driven serverless
- Serverless frameworks
- Cost optimization
- Testing serverless applications
- Serverless security concerns
Backend Testing
- Unit testing
- Integration testing
- Contract testing
- Performance testing
- Load testing
- Chaos engineering
- Mocking and stubbing
- Test containers
CI/CD
- Pipeline design
- Continuous integration best practices
- Continuous deployment vs delivery
- Environment management
- Feature flags
- Canary deployments
- Blue/green deployments
- Infrastructure as code