Defines company algorithmic strategy. Decides on custom vs off-the-shelf algorithms. Evaluates algorithmic complexity when designing new systems. Publishes research and shares experience at conferences.
Roles · Backend Developer (Python) · Principal
What a Principal } should know
36 core skills, 67 in total. Expectations per skill, and what changes at the next level.
This page lists what a Principal } is expected to know and do, skill by skill. Core skills are the ones a manager and peers assess in a review cycle; the rest count only in self-assessment. Main areas: Programming Fundamentals, Backend Development, Database Management.
Core skills for a Principal
Grouped by area. The label on the right is the expected depth: Awareness, Working, Advanced or Expert.
Programming Fundamentals · 8
Defines concurrency strategy at company level. Evaluates new approaches (TaskGroups in Python 3.11+, uvloop). Designs distributed async systems. Establishes best practices for scaling async applications.
Defines quality strategy at organizational level. Implements quality metrics in team OKRs. Shapes code quality culture. Evaluates ROI of quality investments.
Defines data management strategy at company level. Evaluates trade-offs between different storage approaches. Designs cross-service data structures. Establishes best practices for the entire organization.
Defines architectural patterns at company level. Creates reference architecture for new projects. Publishes articles and presents on patterns. Adapts enterprise patterns to the Python ecosystem.
Defines parallelism strategy for the entire platform. Evaluates new approaches (sub-interpreters Python 3.12+). Designs distributed computation frameworks. Establishes best practices for scaling CPU-intensive tasks.
Defines OOP architectural standards at company level. Chooses between OOP and functional approaches for different tasks. Designs domain models for complex business domains. Mentors senior and lead developers.
Defines typing standards at company level. Participates in PEP discussions on typing. Evaluates runtime type checkers (pydantic, beartype). Shapes gradual typing strategy for legacy code.
Backend Development · 5
Defines event streaming strategy at company level. Evaluates Kafka vs Pulsar vs Redpanda. Designs event-driven architecture at organizational scale. Establishes event standards.
Defines caching architecture at company level. Evaluates consistency vs availability trade-offs. Designs geo-distributed caching. Establishes caching effectiveness metrics.
Defines company framework strategy. Evaluates new frameworks (Litestar, Starlette). Designs platform-level solutions. Contributes to open-source frameworks.
Defines company caching strategy. Evaluates Redis vs alternatives (Dragonfly, KeyDB). Designs multi-region caching. Establishes best practices.
Defines company async processing strategy. Designs event-driven architecture. Evaluates managed services vs self-hosted. Establishes task processing standards.
Database Management · 5
Shapes data architecture strategy. Designs enterprise data model. Defines data mesh principles.
Defines indexing strategy at company level. Establishes standards and automated review. Designs indexing for sharded systems.
Shapes database evolution strategy. Designs cross-service migration orchestration. Defines tooling and automation.
Defines company database strategy. Evaluates PostgreSQL vs NewSQL. Designs multi-region database architecture. Establishes DBA practices.
Defines optimization strategy at company level. Establishes DBA practices. Designs architecture for query performance.
API & Integration · 4
Shapes documentation strategy at company level. Creates developer experience program. Evaluates documentation as product.
Shapes testing strategy at company level. Evaluates testing ROI. Implements API quality metrics.
Shapes API lifecycle management at company level. Designs API evolution strategy. Evaluates versioning impact on developer experience.
Defines company API strategy. Designs multi-API orchestration. Evaluates API management platforms. Establishes organizational API roadmap.
Cloud & Infrastructure · 3
Defines company cloud strategy. Evaluates multi-cloud vs single-cloud. Designs cloud-native architecture. Establishes cloud CoE.
Shapes container strategy at company level. Evaluates Docker vs alternatives (Podman). Designs image supply chain security.
Defines company K8s strategy. Evaluates managed vs self-hosted. Designs multi-cluster architecture. Establishes platform engineering practices.
DevOps & CI/CD · 1
Shapes company CI/CD strategy. Evaluates GitHub Actions vs alternatives. Designs platform-level CI/CD.
Testing & QA · 2
Shapes integration testing strategy at company level. Implements platform-level testing tools. Defines SLOs for test reliability.
Shapes testing culture across the organization. Defines testing quality metrics. Implements best practices at company level.
Security · 3
Shapes company identity strategy. Evaluates IAM platforms. Designs zero-trust architecture.
Shapes security strategy. Defines security standards. Evaluates compliance requirements. Builds security culture.
Shapes secure SDLC. Defines security requirements. Implements DevSecOps practices.
Architecture & System Design · 1
Defines company system architecture. Designs multi-region deployment. Establishes architecture principles. Mentors architects.
Observability & Monitoring · 2
Shapes company monitoring strategy. Evaluates Prometheus vs Datadog vs alternatives. Designs observability platform.
Shapes observability strategy. Defines logging architecture at scale. Evaluates log platforms.
Version Control & Collaboration · 2
Shapes review culture in the organization. Defines review processes. Implements review metrics.
Shapes version control strategy. Evaluates monorepo tools. Designs git infrastructure at scale.
Additional skills
Not assessed by the team, but part of the self-assessment and the development plan.
} in the open competency matrix: 67 skills across 5 levels. The matrix is free for individuals and stays free.