Skip to content

Instantly share code, notes, and snippets.

@tobyl
Last active July 8, 2025 13:12
Show Gist options
  • Select an option

  • Save tobyl/3c12990e84dd1591e6b1d871a340846a to your computer and use it in GitHub Desktop.

Select an option

Save tobyl/3c12990e84dd1591e6b1d871a340846a to your computer and use it in GitHub Desktop.

Developer Progression Matrix

Welcome to the HCC Developer Progression Matrix. The matrix helps to track the skills and attributes required to progress through the various levels. HCC currently recognizes four levels a developer can progress through:

Skills Matrix

A good way to quickly understand what we value at the various levels is to peruse the tables below. We separate into soft skills and hard skills, but we care about both equally, especially as developers move out of the two base levels.

Hard Skills

Level I Level II Level III Sr. Developer
Programming Basic Intermediate Advanced Expert
Framework & Platform
Debugging
Testing
Database Skills
Tooling
Security
Software Architecture
DevOps & Infrastructure

Soft Skills

Level I Level II Level III Sr. Developer
Communication Basic Intermediate Advanced Expert
Collaboration & Teamwork
Adaptability
Productivity
Growth Mindset
Initiative & Ownership
Feedback & Code Review
Impact
Leadership
Product & User Focus
Time & Task Management
Mentorship & Knowledge Sharing

Levels Overview

Some more information about each level.

Level I

Our level I devs are smart, motivated and eager to learn. They may be lacking experience and soft skills, but they're constantly growing and evolving. They typically work on a single app or product, occasionally contributing elsewhere when needed. They reach out for support as required, and aren't afraid to admit they're still lerning. Their knowledge of our company, industry and organization structure is minimal but growing quickly.

Level II

Our level II devs are beginning to evolve. Development and code reviews are smoother and require less back and forth, and knowledge and experience are starting to increase. They're working on one or two products, and maybe even some supporting apps or infrastructure. They're starting to understand the bigger picture of how our organization functions and the areas of responsibility for teams within the company. They're still learning all the time, but it's more about experience and domain knowledge than programming concepts or frameworks. They're tackling more complex problems and finding good solutions and compromises.

Level III

By the time our devs have reached level III they're experts in programming and the relevant frameworks. They move seamlessly and frictionlessly through our apps and products, and they're comfortable communicating and collaborating with other teams. They understand the organization and it's goals, and are actively helping to achieve them. They're as comfortable in meetings, helping to plan and organize the work as they are doing the work.

As strong all rounders the're working on larger projects involving multiple apps or products, but you'll often find them helping out newer team members, reviewing pull requests or improving our apps' performance and security. THey're ready for a challenge, upbeat and crystal clear in their communication.

Senior Developer

Our senior developers are gods. We're not worthy! We're not worthy!

Hard Skills rubric

Programming

  • Junior: Writes functional code with guidance; learning language idioms and style.
  • Intermediate: Writes clean, maintainable code; solves problems independently.
  • Advanced: Designs complex logic; improves team code quality and consistency.
  • Expert: Sets coding standards; mentors others in language and architecture best practices.

Framework & Platform

  • Junior: Uses core framework features with support; follows patterns.
  • Intermediate: Comfortable navigating and customizing framework features.
  • Advanced: Extends frameworks; optimizes usage for scalability and maintainability.
  • Expert: Leads platform decisions; evaluates or builds framework components.

Debugging

  • Junior: Identifies and fixes common bugs with help.
  • Intermediate: Debugs issues independently using tools and logs.
  • Advanced: Diagnoses complex, cross-layer problems efficiently.
  • Expert: Anticipates failure modes; mentors others in problem solving.

Testing

  • Junior: Writes basic unit tests; understands test value.
  • Intermediate: Applies testing at multiple levels (unit, integration, E2E).
  • Advanced: Designs test strategies; improves coverage and reliability.
  • Expert: Champions test culture; builds testing tools and standards.

Database Skills

  • Junior: Reads and writes basic queries; uses ORM safely.
  • Intermediate: Designs schemas and queries for common use cases.
  • Advanced: Optimizes queries and indexes; manages migrations.
  • Expert: Architects data models; leads data strategy and performance efforts.

Tooling

  • Junior: Uses basic dev tools (Git, editor, CLI).
  • Intermediate: Automates tasks; improves local workflows.
  • Advanced: Builds team tools; integrates dev environments and pipelines.
  • Expert: Defines tooling strategy; drives adoption of new tools across teams.

Security

  • Junior: Aware of basic secure coding practices.
  • Intermediate: Applies standard security patterns (e.g., input validation, auth).
  • Advanced: Identifies risks; incorporates security into design.
  • Expert: Leads security reviews; drives security-first culture.

Software Architecture

  • Junior: Understands system components and interactions.
  • Intermediate: Designs features with modular, scalable patterns.
  • Advanced: Leads design of large components or services.
  • Expert: Owns system architecture; sets long-term technical direction.

DevOps & Infrastructure

  • Junior: Deploys with help; understands CI basics.
  • Intermediate: Owns CI/CD pipelines and deployment for features.
  • Advanced: Improves automation, monitoring, and performance.
  • Expert: Designs resilient infrastructure; leads operational excellence.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment