Select your current position

Pick a role and level — we'll show the growth path, skills and gap analysis.

Development path

Junior

0-2 years

Current

Responsibility: Completing tasks under the guidance of senior colleagues. Learning the codebase, standards, and team processes. Writing code to spec, fixing simple bugs, writing tests.

Key skills:

Apache Kafka Need
E2E Testing Need
JWT / OAuth2 / OIDC Need
PostgreSQL Need
Prompt Engineering for Code Need
Redis Need
API Documentation Need
Database Indexing Need
Query Optimization Need
Network Fundamentals Need
Secure Coding Practices Need
Type Safety & Type Systems Need

Middle

2-5 years

Next

Responsibility: Independently developing features from decomposition to deployment. Participating in code review. Optimizing performance. Mentoring junior developers. Taking part in architecture discussions.

Key skills:

Apache Kafka Need
API Gateway Need
Architecture Decision Records (ADR) Need
Architecture Fitness Functions Need
DDD Strategic Patterns Need
E2E Testing Need
InnerSource Practices Need
JWT / OAuth2 / OIDC Need
PostgreSQL Need
Prompt Engineering for Code Need
Redis Need
Technology Radar Practice Need
Hexagonal Architecture Need
API Documentation Need
Database Indexing Need
Monorepo Tools Need
Query Optimization Need
Network Fundamentals Need
Secure Coding Practices Need
Type Safety & Type Systems Need

Senior

5-8 years

Responsibility: Technical leadership of a team of 3-6 people. Architectural decisions. Code review gatekeeper. Mentoring. Technology selection. 30% coding.

Key skills:

Apache Kafka Need
API Gateway Need
Architecture Decision Records (ADR) Need
Architecture Documentation: C4, arc42 Need
Architecture Fitness Functions Need
DDD Strategic Patterns Need
DDD Tactical Patterns Need
Diagramming: Mermaid, PlantUML, D2 Need
E2E Testing Need
Feature Flags Need
InnerSource Practices Need
JWT / OAuth2 / OIDC Need
PostgreSQL Need
Prompt Engineering for Code Need
Redis Need
Technology Radar Practice Need
Hexagonal Architecture Need
API Documentation Need
Database Indexing Need
Monorepo Tools Need
Query Optimization Need
Network Fundamentals Need
Secure Coding Practices Need
Type Safety & Type Systems Need
Technical Debt Management Need

Lead / Staff

7-12 years

Responsibility: Technical leadership of multiple teams. Domain architecture. Standards. Coordination. Hiring. 10-20% coding.

Key skills:

Apache Kafka Need
API Gateway Need
Architecture Decision Records (ADR) Need
Architecture Documentation: C4, arc42 Need
Architecture Fitness Functions Need
DDD Strategic Patterns Need
DDD Tactical Patterns Need
Diagramming: Mermaid, PlantUML, D2 Need
E2E Testing Need
Feature Flags Need
High Load Architecture Need
InnerSource Practices Need
JWT / OAuth2 / OIDC Need
PostgreSQL Need
Prompt Engineering for Code Need
Redis Need
Technology Radar Practice Need
Hexagonal Architecture Need
Microservices Decomposition Need
API Documentation Need
Database Indexing Need
Monorepo Tools Need
Query Optimization Need
Network Fundamentals Need
Secure Coding Practices Need
Type Safety & Type Systems Need
On-Call Management Need
Technical Debt Management Need

Principal

10+ years

Responsibility: Technology strategy. Cross-team architecture. Company standards. Public expertise. 5-10% coding.

Key skills:

Apache Kafka Need
API Gateway Need
Architecture Decision Records (ADR) Need
Architecture Documentation: C4, arc42 Need
Architecture Fitness Functions Need
DDD Strategic Patterns Need
DDD Tactical Patterns Need
Diagramming: Mermaid, PlantUML, D2 Need
E2E Testing Need
Feature Flags Need
High Load Architecture Need
InnerSource Practices Need
JWT / OAuth2 / OIDC Need
PostgreSQL Need
Prompt Engineering for Code Need
Redis Need
Technology Radar Practice Need
Hexagonal Architecture Need
Microservices Decomposition Need
API Documentation Need
Database Indexing Need
Monorepo Tools Need
Query Optimization Need
Network Fundamentals Need
Secure Coding Practices Need
Type Safety & Type Systems Need
On-Call Management Need
Technical Debt Management Need

Gap analysis: skills to develop

To reach the next level you'll need to develop:

Apache Kafka

Designs Kafka solutions: topic design, partitioning strategy, consumer group management. Implements exactly-once semantics and Dead Letter Topics.

API Gateway

Independently configures API gateway patterns for team services: sets up routing rules, request/response transformations, basic rate limiting and authentication policies. Understands trade-offs between gateway-level and service-level cross-cutting concerns.

Architecture Decision Records (ADR)

Applies ADR practices in technical leadership: writes well-structured Architecture Decision Records with context, options analysis, and consequences. Reviews team ADRs for technical accuracy and maintains ADR repository with consistent numbering and status tracking.

Architecture Fitness Functions

Implements architecture fitness functions for team projects: writes automated tests for architectural constraints (dependency direction, layer isolation), configures ArchUnit/NetArchTest checks in CI. Understands how fitness functions support evolutionary architecture and prevent architectural drift.

DDD Strategic Patterns

Applies DDD Strategic Patterns when designing components. Understands trade-offs. Participates in architectural discussions.

E2E Testing

Designs E2E tests: page object patterns, test data management, CI integration. Ensures reliable execution and manages flaky tests.

InnerSource Practices

Applies InnerSource practices in technical leadership: establishes code contribution standards, reviews cross-team pull requests, and maintains shared library documentation. Facilitates technical knowledge sharing through InnerSource project governance.

JWT / OAuth2 / OIDC

Implements authentication: OAuth2 flows (authorization code, client credentials), JWT best practices, refresh tokens. Configures SSO integration.

PostgreSQL

Designs PostgreSQL schemas: normalization, indexing, constraints. Optimizes queries via EXPLAIN. Manages migrations and data integrity.

Prompt Engineering for Code

Creates structured prompts: templates for code review, architecture proposals, technical writing. Uses few-shot examples and chain-of-thought.

Redis

Designs caching strategy: cache-aside, write-through, cache invalidation patterns. Uses Redis data structures for sessions, rate limiting, pub/sub.

Technology Radar Practice

Applies Technology Radar practices in technical leadership: evaluates new technologies through structured PoCs, contributes technology assessments to team radar, and makes informed adoption/hold/retire decisions. Tracks technology lifecycle and plans migration paths for deprecated tools.

Hexagonal Architecture

Applies Hexagonal Architecture when designing components. Understands trade-offs. Participates in architectural discussions.

API Documentation

Designs API documentation: auto-generation from code, versioned docs, developer guides. Creates getting started tutorials and migration guides.

Database Indexing

Designs indexing strategy: covering indexes, partial indexes, GIN for JSONB. Monitors index usage and bloat. Optimizes write vs read trade-offs.

Monorepo Tools

Independently applies Monorepo Tools in practice. Understands trade-offs of different approaches. Solves typical tasks independently.

Query Optimization

Optimizes queries: CTEs, window functions, materialized views. Profiles via pg_stat_statements. Chooses between ORM and raw SQL based on context.

Network Fundamentals

Applies network knowledge: load balancing, reverse proxy, CDN, SSL/TLS certificates. Designs network topology for applications and microservices.

Secure Coding Practices

Implements comprehensive security: authentication/authorization, encryption, secure headers. Conducts security code reviews and uses SAST tools.

Type Safety & Type Systems

Ensures type safety: strict mode configurations, custom types for domain model, type guards. Uses type-safe ORM and API clients.

Career transitions

Possible career trajectories for the Technical Lead role

📈 Growth 1

Where you can grow from this role

╨а╨╛╤Б╤В ╨▓ ╨░╤А╤Е╨╕╤В╨╡╨║╤В╤Г╤А╤Г ╨╜╨░ ╤Г╤А╨╛╨▓╨╜╨╡ ╨║╨╛╨╝╨┐╨░╨╜╨╕╨╕

Match: 100%

↔️ Lateral 1

Adjacent roles for a lateral move

╨Я╨╡╤А╨╡╤Е╨╛╨┤ ╨▓ people management ╤Б ╤Б╨╛╤Е╤А╨░╨╜╨╡╨╜╨╕╨╡╨╝ ╤В╨╡╤Е╨╜╨╕╤З╨╡╤Б╨║╨╛╨│╨╛ ╨║╨╛╨╜╤В╨╡╨║╤Б╤В╨░

Match: 100%

🔙 Comes from 2

Roles people often move here from

╨а╨╛╤Б╤В ╨▓ ╤В╨╡╤Е╨╗╨╕╨┤╨░ Python-╨║╨╛╨╝╨░╨╜╨┤╤Л

Match: 100%

╨а╨╛╤Б╤В ╨▓ ╤В╨╡╤Е╨╗╨╕╨┤╨░ frontend-╨║╨╛╨╝╨░╨╜╨┤╤Л

Match: 100%