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
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:
Middle
2-5 years
Responsibility: Independently developing features from decomposition to deployment. Participating in code review. Optimizing performance. Mentoring junior developers. Taking part in architecture discussions.
Key skills:
Senior
5-8 years
Responsibility: Designing the architecture of components and services. Solving complex technical problems. Managing technical debt. Code review as a quality gatekeeper. Mentoring middle developers. Choosing technologies for new tasks.
Key skills:
Lead / Staff
7-12 years
Responsibility: Technical leadership of a team or area. Designing system architecture. Coordinating with other teams. Establishing standards and best practices. Participating in hiring. Planning the technical roadmap.
Key skills:
Principal
10+ years
Responsibility: Technical strategy at the company or domain level. Cross-organizational influence. Solving systemic business problems through technology. Mentoring lead engineers. Publicly representing the company.
Key skills:
Gap analysis: skills to develop
To reach the next level you'll need to develop:
Writes comprehensive API guides: quickstart, authentication flow, error handling, use cases. Creates code samples in multiple languages (curl, Python, JavaScript, Go). Maintains terminology and style consistency across all API docs sections.
Creates comprehensive architecture documentation with architects: system context, container diagrams, component diagrams (C4). Documents data flows, external system integrations, deployment topology. Keeps documentation up to date.
Creates complex technical diagrams: C4 model (all 4 levels), data flow diagrams, state machines, ER diagrams. Uses diagrams-as-code tools (Mermaid, PlantUML). Maintains visual consistency and diagram readability.
Confidently works with 2-3 docs-as-code frameworks. Configures navigation, search, versioning, custom components. Uses MDX/RST extensions, plugins for diagrams, code highlighting. Integrates docs build into CI/CD.
Designs knowledge base information architecture: taxonomy, navigation, search optimization. Creates content governance: templates, naming conventions, review processes. Ensures content freshness through scheduled reviews.
Documents project Kubernetes architecture: deployments, services, ingress, ConfigMaps with diagrams. Creates deployment and application management guides in K8s for the DevOps team. Describes troubleshooting procedures and common issues in operational runbooks.
Documents project database schemas: tables, relationships, indexes, migrations with ER diagrams. Creates PostgreSQL guides for developers: best practices, conventions, common queries. Describes backup, restore, and maintenance processes in operational documentation.
Documents project monitoring systems: metrics, dashboards, alerts with descriptions and thresholds. Creates runbook documentation for incident response based on Grafana dashboards. Describes Prometheus integration with other observability stack components in architectural guides.
Creates comprehensive REST API documentation in OpenAPI/Swagger: paths, schemas, security, examples. Documents API design conventions: naming, pagination, filtering, error format. Configures Swagger UI / Redoc for interactive documentation.
Independently creates runbooks for production systems: deployment procedures, incident response, disaster recovery. Ensures step-by-step clarity and unambiguity of instructions. Conducts dry-run testing of runbooks with the operations team.
Regularly writes technical posts: deep-dive articles, comparison articles, best practices guides. Optimizes content for SEO and developer audience. Works with CMS (WordPress, Ghost, dev.to). Creates content plans for engineering blogs.
Creates comprehensive user documentation: information architecture, content hierarchy, cross-references. Writes for different audiences (beginners, advanced users, admins). Uses user feedback to improve documentation.
Documents algorithmic complexity of API methods and includes performance guidelines in reference guides. Creates benchmark documentation for comparing different approaches to solving tasks in SDKs. Describes algorithm optimizations and limitations in architectural decision records.
Fully works in docs-as-code workflow: branch, write, PR, review, merge, deploy. Configures CI/CD for automated documentation building and publishing. Uses linting (markdownlint, vale) for text quality control.
Independently creates comprehensive API documentation based on OpenAPI/Swagger specifications. Documents authentication, rate limiting, pagination, versioning. Writes getting started guides and tutorials for API consumers.