-
Notifications
You must be signed in to change notification settings - Fork 19
Add engineering levels documentation #4720
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 1 commit
Commits
Show all changes
14 commits
Select commit
Hold shift + click to select a range
c22e5d7
Add engineering levels documentation
allthedoll f625e10
Update src/handbook/peopleops/job-descriptions/engineering-levels.md
allthedoll c2a9269
Add navigation title to engineering levels document
allthedoll ceb1480
Merge branch 'main' into allthedoll/engineering-levels
allthedoll ec63a94
Revise performance review sections in engineering levels
allthedoll c8bce87
Apply suggestion from @ZJvandeWeg
allthedoll 636976c
Update headers
allthedoll 5a8dc5f
Update technical craft
allthedoll bfaedfb
Update ownership and impact
allthedoll f085054
Update level 3 details
allthedoll 035d558
Update level 5 details
allthedoll ea0cacb
Update level 2 details
allthedoll c58446d
Enhance descriptions for system thinking
allthedoll 061b194
Merge branch 'main' into allthedoll/engineering-levels
allthedoll File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
201 changes: 201 additions & 0 deletions
201
src/handbook/peopleops/job-descriptions/engineering-levels.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,201 @@ | ||
| # FlowFuse Engineering Levels | ||
|
|
||
| ## Purpose | ||
|
|
||
| This document defines expectations for Engineers at FlowFuse. | ||
|
|
||
| It exists to: | ||
|
|
||
| - Clarify what strong performance looks like | ||
| - Define scope at each level | ||
| - Support evidence-based quarterly reviews | ||
| - Make promotion decisions predictable and defensible | ||
|
|
||
| This applies to: | ||
|
|
||
| - Software Engineers, including the CTO when operating as an engineer | ||
| - Infrastructure Engineers | ||
|
|
||
| Levels reflect scope of ownership and influence. | ||
|
|
||
| "Meets Expectations" at a level represents strong performance. | ||
|
|
||
| Promotion requires sustained demonstration of next-level behaviors. | ||
|
|
||
|
allthedoll marked this conversation as resolved.
Outdated
|
||
|
|
||
| # Core Dimensions | ||
|
allthedoll marked this conversation as resolved.
Outdated
|
||
|
|
||
| All Engineers are evaluated across five dimensions. | ||
|
|
||
| ## 1. Technical Craft | ||
|
|
||
| Quality, maintainability, and soundness of engineering work. | ||
|
|
||
| Examples: | ||
|
allthedoll marked this conversation as resolved.
|
||
| - Code quality and architectural decisions | ||
| - Infrastructure design and automation | ||
| - Security and reliability posture | ||
| - Testing rigor and maintainability | ||
| - Clear technical documentation | ||
|
|
||
|
|
||
| ## 2. Ownership and Impact | ||
|
|
||
| Reliable delivery of meaningful engineering outcomes. | ||
|
|
||
| Examples: | ||
|
allthedoll marked this conversation as resolved.
|
||
| - Delivering committed work predictably | ||
| - Converting ambiguity into executable plans | ||
| - Driving measurable improvements | ||
| - Following through on commitments | ||
|
|
||
|
|
||
| ## 3. System Thinking | ||
|
allthedoll marked this conversation as resolved.
Outdated
|
||
|
|
||
| Understanding and improving the broader engineering system. | ||
|
|
||
| Examples: | ||
| - Anticipating cross-service dependencies | ||
| - Identifying architectural risk | ||
| - Improving operational patterns | ||
| - Designing for long-term maintainability | ||
| - Reducing systemic friction | ||
|
|
||
|
|
||
| ## 4. Collaboration and Influence | ||
|
|
||
| Working effectively with other engineers and amplifying impact through others. | ||
|
|
||
| Examples: | ||
| - Clear technical communication | ||
| - Constructive code review | ||
| - Mentorship | ||
| - Cross-team alignment | ||
|
|
||
|
|
||
| ## 5. Ecosystem Stewardship | ||
|
|
||
| Responsible contribution to the health of our open source and user ecosystem. | ||
|
|
||
| Examples: | ||
| - Professional engagement in public channels | ||
| - Addressing community-reported issues in owned areas | ||
| - Improving documentation and error clarity | ||
| - Reducing recurring ecosystem friction | ||
|
|
||
| Community work is considered real work and should be planned and visible. | ||
|
|
||
|
|
||
|
allthedoll marked this conversation as resolved.
Outdated
|
||
| # Levels | ||
|
|
||
| Levels represent increasing scope of ownership and influence. | ||
|
|
||
|
|
||
| ## Level 1 - Guided Contributor | ||
|
|
||
| Scope: Well-defined tasks within a team. | ||
|
|
||
| Demonstrates: | ||
|
|
||
| - Delivers assigned work reliably with guidance | ||
| - Provides honest time estimates with guidance and flags when work is at risk of slipping | ||
| - Produces maintainable work aligned with standards | ||
| - Understands local systems and dependencies | ||
| - Engages constructively in feedback | ||
| - Acts professionally in ecosystem interactions | ||
|
|
||
| Promotion to Level 2 requires: | ||
| - Independent ownership of moderately complex work | ||
| - Reduced reliance on step-by-step direction | ||
|
allthedoll marked this conversation as resolved.
Outdated
|
||
|
|
||
|
|
||
| ## Level 2 - Independent Owner | ||
|
|
||
| Scope: Features, services, or infrastructure components. | ||
|
|
||
| Demonstrates: | ||
|
|
||
| - Independently scopes and delivers moderately complex work | ||
| - Estimates moderately complex work accurately; raises blockers proactively rather than at deadline | ||
| - Anticipates and mitigates local risks | ||
| - Improves local system quality | ||
| - Participates meaningfully in planning and estimation | ||
| - Handles ecosystem issues in owned areas | ||
|
|
||
| Promotion to Level 3 requires: | ||
| - Ownership of complex systems or multi-sprint initiatives | ||
| - Evidence of mentoring or influence beyond individual contribution | ||
|
|
||
|
|
||
| ## Level 3 - Domain Leader | ||
|
|
||
| Scope: Major systems, critical infrastructure domains, or multi-person initiatives. | ||
|
|
||
| A Level 3 engineer operates as a force multiplier within Engineering. | ||
|
|
||
| Demonstrates: | ||
|
|
||
| - Independently designs and delivers complex systems or initiatives | ||
| - Maintains reliable throughput within planned capacity and improves estimation | ||
| - Owns a meaningful engineering domain, whether application, infrastructure, or operational | ||
| - Anticipates cross-team impact and prevents downstream issues | ||
| - Elevates the quality of others through code review and mentorship | ||
| - Improves architectural or operational patterns | ||
| - Identifies recurring ecosystem or reliability friction and drives reduction | ||
|
|
||
| Level 3 performance requires sustained domain-level impact, not isolated strong projects. | ||
|
allthedoll marked this conversation as resolved.
Outdated
|
||
|
|
||
| Promotion to Level 4 requires: | ||
| - Sustained cross-team technical influence | ||
| - Strategic impact beyond a single domain | ||
|
|
||
|
|
||
| ## Level 4 - Cross-Team Strategist | ||
|
|
||
| Scope: Multiple teams or core engineering domains. | ||
|
|
||
| Demonstrates: | ||
|
|
||
| - Shapes technical direction across teams | ||
| - Models and reinforces commitment discipline across team; identifies systemic patterns in estimation drift and drives structural fixes | ||
| - Drives systemic reliability or architectural improvements | ||
| - Influences roadmap through engineering insight | ||
| - Leads resolution of major production or architectural challenges | ||
| - Strengthens company credibility in the engineering ecosystem | ||
|
|
||
| Promotion to Level 5 requires: | ||
| - Multi-quarter strategic impact | ||
| - Ensures the organization maintains healthy throughput and delivery trust at scale; sets the standard for how engineering commitments are made and communicated company-wide | ||
| - Organization-level engineering leadership | ||
|
|
||
|
|
||
| ## Level 5 - Organizational Authority | ||
|
|
||
| Scope: Company-wide engineering direction. | ||
|
|
||
| Demonstrates: | ||
|
|
||
| - Defines multi-year engineering strategy | ||
|
allthedoll marked this conversation as resolved.
Outdated
|
||
| - Makes high-impact architectural tradeoffs | ||
| - Elevates engineering standards across the organization | ||
|
allthedoll marked this conversation as resolved.
|
||
| - Represents FlowFuse engineering at an industry level | ||
| - Drives operational excellence company-wide | ||
|
|
||
| This level is rare and not time-based. | ||
|
|
||
|
|
||
| # Performance and Reviews | ||
|
|
||
| Quarterly reviews: | ||
|
|
||
| - Gather evidence against each core dimension | ||
| - Identify demonstrated level behaviors | ||
| - Identify next-level behaviors to develop | ||
|
|
||
| Annual reviews: | ||
|
|
||
| - Synthesize quarterly evidence | ||
| - Evaluate sustained scope and impact | ||
| - Inform compensation and promotion decisions | ||
|
|
||
| Performance evaluation is based on observable behavior and documented impact. | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.