@forwardimpact/map 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +67 -0
- package/bin/fit-map.js +287 -0
- package/examples/behaviours/_index.yaml +8 -0
- package/examples/behaviours/outcome_ownership.yaml +43 -0
- package/examples/behaviours/polymathic_knowledge.yaml +41 -0
- package/examples/behaviours/precise_communication.yaml +39 -0
- package/examples/behaviours/relentless_curiosity.yaml +37 -0
- package/examples/behaviours/systems_thinking.yaml +40 -0
- package/examples/capabilities/_index.yaml +8 -0
- package/examples/capabilities/business.yaml +205 -0
- package/examples/capabilities/delivery.yaml +1001 -0
- package/examples/capabilities/people.yaml +68 -0
- package/examples/capabilities/reliability.yaml +349 -0
- package/examples/capabilities/scale.yaml +1672 -0
- package/examples/copilot-setup-steps.yaml +25 -0
- package/examples/devcontainer.yaml +21 -0
- package/examples/disciplines/_index.yaml +6 -0
- package/examples/disciplines/data_engineering.yaml +68 -0
- package/examples/disciplines/engineering_management.yaml +61 -0
- package/examples/disciplines/software_engineering.yaml +68 -0
- package/examples/drivers.yaml +202 -0
- package/examples/framework.yaml +73 -0
- package/examples/levels.yaml +115 -0
- package/examples/questions/behaviours/outcome_ownership.yaml +228 -0
- package/examples/questions/behaviours/polymathic_knowledge.yaml +275 -0
- package/examples/questions/behaviours/precise_communication.yaml +248 -0
- package/examples/questions/behaviours/relentless_curiosity.yaml +248 -0
- package/examples/questions/behaviours/systems_thinking.yaml +238 -0
- package/examples/questions/capabilities/business.yaml +107 -0
- package/examples/questions/capabilities/delivery.yaml +101 -0
- package/examples/questions/capabilities/people.yaml +106 -0
- package/examples/questions/capabilities/reliability.yaml +105 -0
- package/examples/questions/capabilities/scale.yaml +104 -0
- package/examples/questions/skills/architecture_design.yaml +115 -0
- package/examples/questions/skills/cloud_platforms.yaml +105 -0
- package/examples/questions/skills/code_quality.yaml +162 -0
- package/examples/questions/skills/data_modeling.yaml +107 -0
- package/examples/questions/skills/devops.yaml +111 -0
- package/examples/questions/skills/full_stack_development.yaml +118 -0
- package/examples/questions/skills/sre_practices.yaml +113 -0
- package/examples/questions/skills/stakeholder_management.yaml +116 -0
- package/examples/questions/skills/team_collaboration.yaml +106 -0
- package/examples/questions/skills/technical_writing.yaml +110 -0
- package/examples/self-assessments.yaml +64 -0
- package/examples/stages.yaml +191 -0
- package/examples/tracks/_index.yaml +5 -0
- package/examples/tracks/platform.yaml +47 -0
- package/examples/tracks/sre.yaml +46 -0
- package/examples/vscode-settings.yaml +21 -0
- package/package.json +49 -0
- package/schema/json/behaviour-questions.schema.json +95 -0
- package/schema/json/behaviour.schema.json +73 -0
- package/schema/json/capability-questions.schema.json +95 -0
- package/schema/json/capability.schema.json +229 -0
- package/schema/json/defs.schema.json +132 -0
- package/schema/json/discipline.schema.json +123 -0
- package/schema/json/drivers.schema.json +48 -0
- package/schema/json/framework.schema.json +68 -0
- package/schema/json/levels.schema.json +121 -0
- package/schema/json/self-assessments.schema.json +52 -0
- package/schema/json/skill-questions.schema.json +83 -0
- package/schema/json/stages.schema.json +88 -0
- package/schema/json/track.schema.json +95 -0
- package/schema/rdf/behaviour-questions.ttl +128 -0
- package/schema/rdf/behaviour.ttl +130 -0
- package/schema/rdf/capability.ttl +466 -0
- package/schema/rdf/defs.ttl +396 -0
- package/schema/rdf/discipline.ttl +313 -0
- package/schema/rdf/drivers.ttl +84 -0
- package/schema/rdf/framework.ttl +166 -0
- package/schema/rdf/levels.ttl +357 -0
- package/schema/rdf/self-assessments.ttl +147 -0
- package/schema/rdf/skill-questions.ttl +155 -0
- package/schema/rdf/stages.ttl +166 -0
- package/schema/rdf/track.ttl +225 -0
- package/src/index-generator.js +65 -0
- package/src/index.js +44 -0
- package/src/levels.js +553 -0
- package/src/loader.js +608 -0
- package/src/modifiers.js +23 -0
- package/src/schema-validation.js +438 -0
- package/src/validation.js +2136 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/capability-questions.schema.json
|
|
2
|
+
|
|
3
|
+
professionalQuestions:
|
|
4
|
+
working:
|
|
5
|
+
- id: scl_pro_work_decomp_1
|
|
6
|
+
text:
|
|
7
|
+
Your API currently handles 100 requests per second but needs to handle
|
|
8
|
+
1000 RPS in 6 months due to a new partnership. How would you approach
|
|
9
|
+
this?
|
|
10
|
+
context:
|
|
11
|
+
The API is a monolithic Node.js application backed by PostgreSQL.
|
|
12
|
+
Response time P99 is currently 200ms and must stay under 500ms.
|
|
13
|
+
decompositionPrompts:
|
|
14
|
+
- What would you need to measure and understand first?
|
|
15
|
+
- How would you identify the scaling bottlenecks?
|
|
16
|
+
- What architectural changes would you consider?
|
|
17
|
+
- How would you phase the work and validate progress?
|
|
18
|
+
lookingFor:
|
|
19
|
+
- Profiles current system before jumping to solutions
|
|
20
|
+
- Considers horizontal vs vertical scaling trade-offs
|
|
21
|
+
- Identifies database as likely bottleneck
|
|
22
|
+
- Plans incremental validation with load testing
|
|
23
|
+
expectedDurationMinutes: 15
|
|
24
|
+
followUps:
|
|
25
|
+
- What if the partnership deal accelerated and you had only 3 months?
|
|
26
|
+
- How would you handle if the new load had very different access
|
|
27
|
+
patterns?
|
|
28
|
+
|
|
29
|
+
practitioner:
|
|
30
|
+
- id: scl_pro_pract_decomp_1
|
|
31
|
+
text:
|
|
32
|
+
Your team maintains a data pipeline that processes events from multiple
|
|
33
|
+
sources. It's becoming increasingly difficult to add new sources. How
|
|
34
|
+
would you redesign it?
|
|
35
|
+
context:
|
|
36
|
+
Currently there are 15 event sources, each with custom integration code.
|
|
37
|
+
Adding a new source takes 3 weeks. The team receives requests for 5 new
|
|
38
|
+
sources per quarter.
|
|
39
|
+
decompositionPrompts:
|
|
40
|
+
- How would you analyze the current pain points systematically?
|
|
41
|
+
- What abstractions or patterns would improve extensibility?
|
|
42
|
+
- How would you migrate existing sources without disruption?
|
|
43
|
+
- How would you measure the success of the redesign?
|
|
44
|
+
lookingFor:
|
|
45
|
+
- Identifies common patterns across existing integrations
|
|
46
|
+
- Proposes schema standardization or adapter pattern
|
|
47
|
+
- Plans migration that doesn't break existing functionality
|
|
48
|
+
- Sets concrete targets for new source onboarding time
|
|
49
|
+
expectedDurationMinutes: 15
|
|
50
|
+
followUps:
|
|
51
|
+
- What if different sources had fundamentally incompatible data models?
|
|
52
|
+
- How would you get buy-in if the team is skeptical of a major rewrite?
|
|
53
|
+
|
|
54
|
+
managementQuestions:
|
|
55
|
+
working:
|
|
56
|
+
- id: scl_mgmt_work_decomp_1
|
|
57
|
+
text:
|
|
58
|
+
Your team is responsible for a system that needs to scale significantly,
|
|
59
|
+
but you don't have dedicated infrastructure expertise. How would you
|
|
60
|
+
build this capability?
|
|
61
|
+
context:
|
|
62
|
+
The system needs to 10x in capacity over the next year. Your team of 6
|
|
63
|
+
engineers has strong application development skills but limited
|
|
64
|
+
infrastructure and performance engineering experience.
|
|
65
|
+
decompositionPrompts:
|
|
66
|
+
- How would you assess your team's current capabilities and gaps?
|
|
67
|
+
- What strategy would you use to build the needed expertise?
|
|
68
|
+
- How would you manage the risk during the scaling effort?
|
|
69
|
+
- How would you balance learning with delivery commitments?
|
|
70
|
+
lookingFor:
|
|
71
|
+
- Honestly assesses capability gaps without blame
|
|
72
|
+
- Considers multiple approaches (hire, train, partner, outsource)
|
|
73
|
+
- Creates risk mitigation plan for capability building period
|
|
74
|
+
- Protects learning time while meeting business needs
|
|
75
|
+
expectedDurationMinutes: 15
|
|
76
|
+
followUps:
|
|
77
|
+
- What if you can't hire and must develop expertise internally?
|
|
78
|
+
- How would you handle if early scaling efforts fail?
|
|
79
|
+
|
|
80
|
+
practitioner:
|
|
81
|
+
- id: scl_mgmt_pract_decomp_1
|
|
82
|
+
text:
|
|
83
|
+
Your organization's infrastructure costs have grown faster than revenue,
|
|
84
|
+
and leadership wants a 30% cost reduction while maintaining performance.
|
|
85
|
+
How would you approach this?
|
|
86
|
+
context:
|
|
87
|
+
Current cloud spend is $2M annually across 15 teams. Some services are
|
|
88
|
+
over-provisioned, others have inefficient architectures. Teams have
|
|
89
|
+
autonomy over their infrastructure but no accountability for costs.
|
|
90
|
+
decompositionPrompts:
|
|
91
|
+
- How would you analyze current spend and identify opportunities?
|
|
92
|
+
- What governance changes would you propose?
|
|
93
|
+
- How would you drive cost consciousness across teams?
|
|
94
|
+
- How would you ensure cost reduction doesn't impact performance?
|
|
95
|
+
lookingFor:
|
|
96
|
+
- Creates visibility into costs at service and team level
|
|
97
|
+
- Proposes accountability model while respecting team autonomy
|
|
98
|
+
- Identifies both quick wins and architectural improvements
|
|
99
|
+
- Establishes guardrails to prevent performance regression
|
|
100
|
+
expectedDurationMinutes: 15
|
|
101
|
+
followUps:
|
|
102
|
+
- What if teams push back on cost accountability?
|
|
103
|
+
- How would you handle if major cost savings require significant
|
|
104
|
+
refactoring?
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/skill-questions.schema.json
|
|
2
|
+
|
|
3
|
+
professionalQuestions:
|
|
4
|
+
awareness:
|
|
5
|
+
- id: arch_pro_aware_1
|
|
6
|
+
text:
|
|
7
|
+
How do you decide where to draw boundaries when structuring new code?
|
|
8
|
+
lookingFor:
|
|
9
|
+
- Thinks about grouping related functionality together
|
|
10
|
+
- Considers how changes in one area might affect others
|
|
11
|
+
- Shows awareness that structure choices affect future maintainability
|
|
12
|
+
expectedDurationMinutes: 5
|
|
13
|
+
foundational:
|
|
14
|
+
- id: arch_pro_found_1
|
|
15
|
+
text: How do you decide on the structure when building a new feature?
|
|
16
|
+
followUps:
|
|
17
|
+
- What alternatives would you consider?
|
|
18
|
+
- How would AI tools change your approach to structuring code?
|
|
19
|
+
lookingFor:
|
|
20
|
+
- Considers multiple structural options before choosing
|
|
21
|
+
- Explains reasoning behind design decisions clearly
|
|
22
|
+
- Applies familiar patterns appropriately to new problems
|
|
23
|
+
expectedDurationMinutes: 5
|
|
24
|
+
working:
|
|
25
|
+
- id: arch_pro_work_1
|
|
26
|
+
text:
|
|
27
|
+
How do you approach designing a system when requirements involve
|
|
28
|
+
competing constraints?
|
|
29
|
+
followUps:
|
|
30
|
+
- How do you validate architectural decisions before committing?
|
|
31
|
+
- How would AI tools help you explore design alternatives?
|
|
32
|
+
lookingFor:
|
|
33
|
+
- Articulates trade-offs clearly with rationale for each choice
|
|
34
|
+
- Designs independently, seeking feedback at appropriate points
|
|
35
|
+
- Considers operational concerns alongside functional requirements
|
|
36
|
+
expectedDurationMinutes: 8
|
|
37
|
+
practitioner:
|
|
38
|
+
- id: arch_pro_pract_1
|
|
39
|
+
text:
|
|
40
|
+
How do you guide your team through significant architectural decisions
|
|
41
|
+
where opinions conflict?
|
|
42
|
+
followUps:
|
|
43
|
+
- How do you balance technical purity with delivery pragmatism?
|
|
44
|
+
- How is AI changing the way your team evaluates architecture?
|
|
45
|
+
lookingFor:
|
|
46
|
+
- Facilitates decision-making that includes diverse perspectives
|
|
47
|
+
- Builds consensus without suppressing valid dissent
|
|
48
|
+
- Documents decisions and rationale for future reference
|
|
49
|
+
expectedDurationMinutes: 8
|
|
50
|
+
expert:
|
|
51
|
+
- id: arch_pro_expert_1
|
|
52
|
+
text:
|
|
53
|
+
How do you define and evolve architectural standards across a large
|
|
54
|
+
organization?
|
|
55
|
+
followUps:
|
|
56
|
+
- How do AI tools change your approach to architectural governance?
|
|
57
|
+
lookingFor:
|
|
58
|
+
- Creates standards that enable teams rather than constrain them
|
|
59
|
+
- Evolves architecture strategy as technology landscape changes
|
|
60
|
+
- Influences architectural direction across organizational boundaries
|
|
61
|
+
expectedDurationMinutes: 10
|
|
62
|
+
|
|
63
|
+
managementQuestions:
|
|
64
|
+
awareness:
|
|
65
|
+
- id: arch_mgmt_aware_1
|
|
66
|
+
text: How do you recognize when your team needs architectural guidance?
|
|
67
|
+
lookingFor:
|
|
68
|
+
- Notices signals of architectural strain like coupling or tech debt
|
|
69
|
+
- Understands when to involve senior engineers in design decisions
|
|
70
|
+
- Connects architecture quality to team delivery outcomes
|
|
71
|
+
expectedDurationMinutes: 5
|
|
72
|
+
foundational:
|
|
73
|
+
- id: arch_mgmt_found_1
|
|
74
|
+
text: How do you support your team in making good architectural decisions?
|
|
75
|
+
followUps:
|
|
76
|
+
- What resources or guidance do you provide?
|
|
77
|
+
lookingFor:
|
|
78
|
+
- Enables team decision-making rather than dictating solutions
|
|
79
|
+
- Provides appropriate guardrails without micromanaging
|
|
80
|
+
- Connects teams with relevant expertise when needed
|
|
81
|
+
expectedDurationMinutes: 5
|
|
82
|
+
working:
|
|
83
|
+
- id: arch_mgmt_work_1
|
|
84
|
+
text:
|
|
85
|
+
How do you balance technical debt management with feature delivery in
|
|
86
|
+
your team?
|
|
87
|
+
followUps:
|
|
88
|
+
- How do you communicate architectural trade-offs to stakeholders?
|
|
89
|
+
lookingFor:
|
|
90
|
+
- Uses a clear framework to prioritize debt vs features
|
|
91
|
+
- Communicates trade-offs in business terms stakeholders understand
|
|
92
|
+
- Ensures the team has capacity for both maintenance and delivery
|
|
93
|
+
expectedDurationMinutes: 8
|
|
94
|
+
practitioner:
|
|
95
|
+
- id: arch_mgmt_pract_1
|
|
96
|
+
text:
|
|
97
|
+
How do you drive architectural alignment across multiple teams in your
|
|
98
|
+
area?
|
|
99
|
+
followUps:
|
|
100
|
+
- How do you handle conflicts between team approaches?
|
|
101
|
+
lookingFor:
|
|
102
|
+
- Creates alignment through shared principles, not mandates
|
|
103
|
+
- Resolves architectural conflicts by surfacing underlying trade-offs
|
|
104
|
+
- Thinks strategically about technical direction across teams
|
|
105
|
+
expectedDurationMinutes: 8
|
|
106
|
+
expert:
|
|
107
|
+
- id: arch_mgmt_expert_1
|
|
108
|
+
text: How do you shape architectural strategy at the organizational level?
|
|
109
|
+
followUps:
|
|
110
|
+
- How do you ensure architectural strategy keeps pace with AI advances?
|
|
111
|
+
lookingFor:
|
|
112
|
+
- Defines architectural vision that aligns business and technical goals
|
|
113
|
+
- Influences technical direction across organizational boundaries
|
|
114
|
+
- Adapts strategy as technology landscape evolves
|
|
115
|
+
expectedDurationMinutes: 10
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/skill-questions.schema.json
|
|
2
|
+
|
|
3
|
+
professionalQuestions:
|
|
4
|
+
awareness:
|
|
5
|
+
- id: cp_pro_aware_1
|
|
6
|
+
text: How do you decide what should run locally vs in the cloud?
|
|
7
|
+
lookingFor:
|
|
8
|
+
- Thinks about trade-offs between local and cloud deployment
|
|
9
|
+
- Shows awareness that cloud introduces operational considerations
|
|
10
|
+
- Recognizes cost, latency, and scalability as factors
|
|
11
|
+
expectedDurationMinutes: 5
|
|
12
|
+
foundational:
|
|
13
|
+
- id: cp_pro_found_1
|
|
14
|
+
text: How would you choose which cloud services to use for a new project?
|
|
15
|
+
lookingFor:
|
|
16
|
+
- Considers project requirements before picking services
|
|
17
|
+
- Weighs managed services against self-hosted options
|
|
18
|
+
- Thinks about cost and operational overhead
|
|
19
|
+
expectedDurationMinutes: 5
|
|
20
|
+
working:
|
|
21
|
+
- id: cp_pro_work_1
|
|
22
|
+
text:
|
|
23
|
+
Describe a cloud architecture you've designed. What services did you use
|
|
24
|
+
and why?
|
|
25
|
+
followUps:
|
|
26
|
+
- How did you handle cost optimization?
|
|
27
|
+
lookingFor:
|
|
28
|
+
- Explains service selection rationale tied to specific requirements
|
|
29
|
+
- Considers cost optimization alongside functionality
|
|
30
|
+
- Designs with operational concerns like monitoring and scaling
|
|
31
|
+
expectedDurationMinutes: 8
|
|
32
|
+
practitioner:
|
|
33
|
+
- id: cp_pro_pract_1
|
|
34
|
+
text:
|
|
35
|
+
How would you design a multi-region, highly available architecture for a
|
|
36
|
+
critical application?
|
|
37
|
+
followUps:
|
|
38
|
+
- What about disaster recovery?
|
|
39
|
+
- How would AI-driven workloads change your architecture?
|
|
40
|
+
lookingFor:
|
|
41
|
+
- Designs for resilience across availability zones and regions
|
|
42
|
+
- Balances high availability with cost constraints
|
|
43
|
+
- Plans for failure scenarios and recovery procedures
|
|
44
|
+
expectedDurationMinutes: 10
|
|
45
|
+
expert:
|
|
46
|
+
- id: cp_pro_expert_1
|
|
47
|
+
text:
|
|
48
|
+
What are the key considerations when defining cloud governance and
|
|
49
|
+
strategy for a large organization?
|
|
50
|
+
lookingFor:
|
|
51
|
+
- Balances governance with team autonomy in cloud usage
|
|
52
|
+
- Considers compliance, security, and cost at organizational scale
|
|
53
|
+
- Shapes cloud strategy that adapts to emerging AI infrastructure needs
|
|
54
|
+
expectedDurationMinutes: 10
|
|
55
|
+
|
|
56
|
+
managementQuestions:
|
|
57
|
+
awareness:
|
|
58
|
+
- id: cp_mgmt_aware_1
|
|
59
|
+
text:
|
|
60
|
+
How do you stay informed about cloud capabilities that could benefit
|
|
61
|
+
your team?
|
|
62
|
+
lookingFor:
|
|
63
|
+
- Actively explores cloud capabilities relevant to team work
|
|
64
|
+
- Evaluates new services for practical team benefit
|
|
65
|
+
- Shares learnings with the team proactively
|
|
66
|
+
expectedDurationMinutes: 5
|
|
67
|
+
foundational:
|
|
68
|
+
- id: cp_mgmt_found_1
|
|
69
|
+
text: How do you support team members in developing cloud platform skills?
|
|
70
|
+
lookingFor:
|
|
71
|
+
- Creates structured learning paths for cloud skills
|
|
72
|
+
- Pairs team members on cloud tasks for knowledge transfer
|
|
73
|
+
- Identifies skill gaps and addresses them proactively
|
|
74
|
+
expectedDurationMinutes: 5
|
|
75
|
+
working:
|
|
76
|
+
- id: cp_mgmt_work_1
|
|
77
|
+
text:
|
|
78
|
+
How do you balance cloud costs with team productivity and delivery
|
|
79
|
+
needs?
|
|
80
|
+
followUps:
|
|
81
|
+
- How do you communicate cloud spending to stakeholders?
|
|
82
|
+
lookingFor:
|
|
83
|
+
- Tracks cloud spending and communicates trends to stakeholders
|
|
84
|
+
- Makes trade-off decisions between cost and developer productivity
|
|
85
|
+
- Establishes team practices for cost-aware cloud usage
|
|
86
|
+
expectedDurationMinutes: 8
|
|
87
|
+
practitioner:
|
|
88
|
+
- id: cp_mgmt_pract_1
|
|
89
|
+
text:
|
|
90
|
+
How do you drive cloud best practices and standards across your team?
|
|
91
|
+
followUps:
|
|
92
|
+
- How do you handle compliance requirements?
|
|
93
|
+
lookingFor:
|
|
94
|
+
- Establishes cloud standards that teams follow willingly
|
|
95
|
+
- Addresses compliance requirements with practical solutions
|
|
96
|
+
- Mentors team members on cloud best practices
|
|
97
|
+
expectedDurationMinutes: 10
|
|
98
|
+
expert:
|
|
99
|
+
- id: cp_mgmt_expert_1
|
|
100
|
+
text: How do you shape organizational cloud strategy and governance?
|
|
101
|
+
lookingFor:
|
|
102
|
+
- Defines cloud governance that enables innovation within guardrails
|
|
103
|
+
- Influences cloud direction across organizational boundaries
|
|
104
|
+
- Adapts strategy for emerging workloads like AI/ML infrastructure
|
|
105
|
+
expectedDurationMinutes: 10
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
# yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/skill-questions.schema.json
|
|
2
|
+
|
|
3
|
+
professionalQuestions:
|
|
4
|
+
awareness:
|
|
5
|
+
- id: cq_pro_aware_1
|
|
6
|
+
text:
|
|
7
|
+
How do you ensure the next person who reads your code understands it?
|
|
8
|
+
lookingFor:
|
|
9
|
+
- Thinks about readability from another developer's perspective
|
|
10
|
+
- Uses naming and structure to communicate intent
|
|
11
|
+
- Shows awareness that code is read more often than written
|
|
12
|
+
expectedDurationMinutes: 5
|
|
13
|
+
foundational:
|
|
14
|
+
- id: cq_pro_found_1
|
|
15
|
+
text: How do you ensure the code you write is readable by others?
|
|
16
|
+
followUps:
|
|
17
|
+
- What naming conventions do you follow?
|
|
18
|
+
- How do you decide when to add comments?
|
|
19
|
+
lookingFor:
|
|
20
|
+
- Uses consistent naming and structure that communicates intent to
|
|
21
|
+
readers
|
|
22
|
+
- Formats code for scanability and groups related logic together
|
|
23
|
+
- Writes comments that explain why, not what
|
|
24
|
+
expectedDurationMinutes: 5
|
|
25
|
+
- id: cq_pro_found_2
|
|
26
|
+
text: What testing practices do you follow when writing code?
|
|
27
|
+
lookingFor:
|
|
28
|
+
- Writes tests as part of development, not as an afterthought
|
|
29
|
+
- Understands the purpose of testing beyond just coverage numbers
|
|
30
|
+
expectedDurationMinutes: 5
|
|
31
|
+
working:
|
|
32
|
+
- id: cq_pro_work_1
|
|
33
|
+
text: How do you approach code review? What do you look for?
|
|
34
|
+
lookingFor:
|
|
35
|
+
- Follows a systematic approach covering correctness, clarity, and
|
|
36
|
+
design
|
|
37
|
+
- Balances thoroughness with keeping reviews timely
|
|
38
|
+
- Gives constructive feedback that helps the author improve
|
|
39
|
+
expectedDurationMinutes: 8
|
|
40
|
+
- id: cq_pro_work_2
|
|
41
|
+
text: How do you decide what to test and what level of testing to apply?
|
|
42
|
+
followUps:
|
|
43
|
+
- How does AI-generated code change your testing approach?
|
|
44
|
+
lookingFor:
|
|
45
|
+
- Chooses test types based on risk and complexity of the code
|
|
46
|
+
- Focuses testing effort where bugs would be most costly
|
|
47
|
+
- Considers the maintenance cost of tests alongside their value
|
|
48
|
+
expectedDurationMinutes: 8
|
|
49
|
+
practitioner:
|
|
50
|
+
- id: cq_pro_pract_1
|
|
51
|
+
text: How have you improved code quality practices in your team?
|
|
52
|
+
lookingFor:
|
|
53
|
+
- Identifies specific quality gaps and addresses them with measurable
|
|
54
|
+
actions
|
|
55
|
+
- Influences team norms around quality through mentoring and example
|
|
56
|
+
- Balances quality investment with delivery commitments
|
|
57
|
+
expectedDurationMinutes: 8
|
|
58
|
+
- id: cq_pro_pract_2
|
|
59
|
+
text:
|
|
60
|
+
How do you balance code quality with delivery speed? Give a specific
|
|
61
|
+
example.
|
|
62
|
+
followUps:
|
|
63
|
+
- When have you chosen to accept technical debt?
|
|
64
|
+
lookingFor:
|
|
65
|
+
- Makes pragmatic trade-offs with clear reasoning about context
|
|
66
|
+
- Communicates quality decisions to stakeholders without jargon
|
|
67
|
+
- Distinguishes between deliberate trade-offs and sloppy shortcuts
|
|
68
|
+
expectedDurationMinutes: 8
|
|
69
|
+
expert:
|
|
70
|
+
- id: cq_pro_expert_1
|
|
71
|
+
text:
|
|
72
|
+
How have you established code quality standards across an organization
|
|
73
|
+
or multiple teams?
|
|
74
|
+
followUps:
|
|
75
|
+
- How did you gain adoption?
|
|
76
|
+
- How do you measure success?
|
|
77
|
+
lookingFor:
|
|
78
|
+
- Creates standards that teams adopt willingly because they solve real
|
|
79
|
+
problems
|
|
80
|
+
- Measures quality through defect rates and change failure, not just
|
|
81
|
+
lint scores
|
|
82
|
+
- Evolves standards as practices change, especially around AI-generated
|
|
83
|
+
code
|
|
84
|
+
expectedDurationMinutes: 10
|
|
85
|
+
- id: cq_pro_expert_2
|
|
86
|
+
text:
|
|
87
|
+
How do you approach reviewing AI-generated code at scale? What practices
|
|
88
|
+
ensure quality?
|
|
89
|
+
lookingFor:
|
|
90
|
+
- Designs review processes that catch AI-specific failure modes like
|
|
91
|
+
plausible but wrong logic
|
|
92
|
+
- Creates verification depth guidelines calibrated to risk, not just
|
|
93
|
+
code origin
|
|
94
|
+
- Establishes organisational patterns for when AI-generated code needs
|
|
95
|
+
deeper scrutiny
|
|
96
|
+
expectedDurationMinutes: 10
|
|
97
|
+
|
|
98
|
+
managementQuestions:
|
|
99
|
+
awareness:
|
|
100
|
+
- id: cq_mgmt_aware_1
|
|
101
|
+
text: How do you communicate the importance of code quality to your team?
|
|
102
|
+
lookingFor:
|
|
103
|
+
- Connects quality to outcomes the team cares about like fewer bugs and
|
|
104
|
+
faster changes
|
|
105
|
+
- Uses concrete examples of quality impact rather than abstract
|
|
106
|
+
principles
|
|
107
|
+
expectedDurationMinutes: 5
|
|
108
|
+
foundational:
|
|
109
|
+
- id: cq_mgmt_found_1
|
|
110
|
+
text:
|
|
111
|
+
How do you help team members improve their coding and testing practices?
|
|
112
|
+
lookingFor:
|
|
113
|
+
- Provides specific, actionable feedback in code reviews rather than
|
|
114
|
+
vague suggestions
|
|
115
|
+
- Creates pairing opportunities that build quality skills through real
|
|
116
|
+
work
|
|
117
|
+
- Identifies individual skill gaps and tailors development approaches
|
|
118
|
+
expectedDurationMinutes: 5
|
|
119
|
+
working:
|
|
120
|
+
- id: cq_mgmt_work_1
|
|
121
|
+
text:
|
|
122
|
+
How do you establish and maintain code review practices in your team?
|
|
123
|
+
followUps:
|
|
124
|
+
- How do you handle disagreements about code quality?
|
|
125
|
+
lookingFor:
|
|
126
|
+
- Establishes review norms that balance thoroughness with turnaround
|
|
127
|
+
time
|
|
128
|
+
- Facilitates quality disagreements toward shared standards rather than
|
|
129
|
+
personal preference
|
|
130
|
+
- Creates review practices that work for AI-generated code, not just
|
|
131
|
+
human-written
|
|
132
|
+
expectedDurationMinutes: 8
|
|
133
|
+
practitioner:
|
|
134
|
+
- id: cq_mgmt_pract_1
|
|
135
|
+
text:
|
|
136
|
+
How do you balance code quality standards with delivery pressure from
|
|
137
|
+
stakeholders?
|
|
138
|
+
followUps:
|
|
139
|
+
- How do you communicate quality trade-offs?
|
|
140
|
+
lookingFor:
|
|
141
|
+
- Translates quality trade-offs into business terms stakeholders can act
|
|
142
|
+
on
|
|
143
|
+
- Pushes back on shortcuts that create future cost while accepting
|
|
144
|
+
pragmatic trade-offs
|
|
145
|
+
- Creates visibility into quality metrics so trade-offs are informed,
|
|
146
|
+
not guesses
|
|
147
|
+
expectedDurationMinutes: 8
|
|
148
|
+
expert:
|
|
149
|
+
- id: cq_mgmt_expert_1
|
|
150
|
+
text:
|
|
151
|
+
How do you drive code quality culture and standards across multiple
|
|
152
|
+
teams?
|
|
153
|
+
followUps:
|
|
154
|
+
- How do you measure quality improvement?
|
|
155
|
+
lookingFor:
|
|
156
|
+
- Creates cross-team quality standards that teams adopt without heavy
|
|
157
|
+
governance
|
|
158
|
+
- Uses metrics like defect escape rate and change lead time to track
|
|
159
|
+
quality trends
|
|
160
|
+
- Shapes engineering culture so quality is a shared value, not a
|
|
161
|
+
compliance exercise
|
|
162
|
+
expectedDurationMinutes: 10
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/skill-questions.schema.json
|
|
2
|
+
|
|
3
|
+
professionalQuestions:
|
|
4
|
+
awareness:
|
|
5
|
+
- id: dm_pro_aware_1
|
|
6
|
+
text: How do you decide how to store and organize data for a new feature?
|
|
7
|
+
lookingFor:
|
|
8
|
+
- Thinks about data relationships before choosing storage
|
|
9
|
+
- Considers how the data will be queried and used
|
|
10
|
+
- Shows awareness that data structure affects performance
|
|
11
|
+
expectedDurationMinutes: 5
|
|
12
|
+
foundational:
|
|
13
|
+
- id: dm_pro_found_1
|
|
14
|
+
text:
|
|
15
|
+
How would you design a simple database schema for a user management
|
|
16
|
+
system?
|
|
17
|
+
lookingFor:
|
|
18
|
+
- Identifies the key entities and relationships before writing SQL
|
|
19
|
+
- Considers how the schema will be queried, not just stored
|
|
20
|
+
- Makes normalization decisions with practical reasoning
|
|
21
|
+
expectedDurationMinutes: 5
|
|
22
|
+
working:
|
|
23
|
+
- id: dm_pro_work_1
|
|
24
|
+
text: How do you approach designing a data model for a complex domain?
|
|
25
|
+
followUps:
|
|
26
|
+
- How do you handle evolving requirements in your data model?
|
|
27
|
+
lookingFor:
|
|
28
|
+
- Balances normalization with query performance needs
|
|
29
|
+
- Makes deliberate trade-offs with clear reasoning
|
|
30
|
+
- Considers how the model will evolve over time
|
|
31
|
+
expectedDurationMinutes: 8
|
|
32
|
+
practitioner:
|
|
33
|
+
- id: dm_pro_pract_1
|
|
34
|
+
text:
|
|
35
|
+
How do you approach data modeling for complex domains with evolving
|
|
36
|
+
requirements?
|
|
37
|
+
lookingFor:
|
|
38
|
+
- Designs models that accommodate change without major rework
|
|
39
|
+
- Applies advanced techniques like event sourcing where appropriate
|
|
40
|
+
- Collaborates with domain experts to validate model accuracy
|
|
41
|
+
expectedDurationMinutes: 10
|
|
42
|
+
expert:
|
|
43
|
+
- id: dm_pro_expert_1
|
|
44
|
+
text:
|
|
45
|
+
How do you establish data modeling standards and practices across an
|
|
46
|
+
organization?
|
|
47
|
+
lookingFor:
|
|
48
|
+
- Creates modeling standards that improve consistency across teams
|
|
49
|
+
- Shapes organizational data architecture to enable interoperability
|
|
50
|
+
- Mentors teams on modeling practices and domain-driven design
|
|
51
|
+
expectedDurationMinutes: 10
|
|
52
|
+
|
|
53
|
+
managementQuestions:
|
|
54
|
+
awareness:
|
|
55
|
+
- id: dm_mgmt_aware_1
|
|
56
|
+
text:
|
|
57
|
+
How do you ensure your team considers data modeling implications in
|
|
58
|
+
their work?
|
|
59
|
+
lookingFor:
|
|
60
|
+
- Ensures modeling decisions are considered during feature planning
|
|
61
|
+
- Communicates how data model quality affects system behaviour
|
|
62
|
+
expectedDurationMinutes: 5
|
|
63
|
+
foundational:
|
|
64
|
+
- id: dm_mgmt_found_1
|
|
65
|
+
text: How do you help team members develop data modeling skills?
|
|
66
|
+
lookingFor:
|
|
67
|
+
- Creates learning opportunities through real project work
|
|
68
|
+
- Pairs less experienced engineers with modeling-skilled colleagues
|
|
69
|
+
- Reviews data models as part of team process
|
|
70
|
+
expectedDurationMinutes: 5
|
|
71
|
+
working:
|
|
72
|
+
- id: dm_mgmt_work_1
|
|
73
|
+
text:
|
|
74
|
+
How do you facilitate data model review and alignment across your team?
|
|
75
|
+
followUps:
|
|
76
|
+
- How do you handle disagreements about modeling approaches?
|
|
77
|
+
lookingFor:
|
|
78
|
+
- Creates review processes that catch modeling issues before they reach
|
|
79
|
+
production
|
|
80
|
+
- Facilitates productive disagreements about modeling by focusing on
|
|
81
|
+
trade-offs and evidence
|
|
82
|
+
- Ensures the team aligns on modeling conventions to reduce
|
|
83
|
+
inconsistency
|
|
84
|
+
expectedDurationMinutes: 10
|
|
85
|
+
practitioner:
|
|
86
|
+
- id: dm_mgmt_pract_1
|
|
87
|
+
text:
|
|
88
|
+
How do you coordinate data modeling decisions across teams to ensure
|
|
89
|
+
consistency?
|
|
90
|
+
lookingFor:
|
|
91
|
+
- Creates cross-team alignment on shared data models and naming
|
|
92
|
+
conventions
|
|
93
|
+
- Facilitates discussions between teams when models need to interoperate
|
|
94
|
+
- Establishes modeling standards that reduce friction at team boundaries
|
|
95
|
+
expectedDurationMinutes: 10
|
|
96
|
+
expert:
|
|
97
|
+
- id: dm_mgmt_expert_1
|
|
98
|
+
text:
|
|
99
|
+
How do you shape organizational data modeling standards and governance?
|
|
100
|
+
lookingFor:
|
|
101
|
+
- Defines data modeling practices and governance adopted across the
|
|
102
|
+
business unit
|
|
103
|
+
- Creates organisational standards that improve data interoperability at
|
|
104
|
+
scale
|
|
105
|
+
- Influences how the organisation values and invests in data
|
|
106
|
+
architecture quality
|
|
107
|
+
expectedDurationMinutes: 10
|