@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.
Files changed (83) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +67 -0
  3. package/bin/fit-map.js +287 -0
  4. package/examples/behaviours/_index.yaml +8 -0
  5. package/examples/behaviours/outcome_ownership.yaml +43 -0
  6. package/examples/behaviours/polymathic_knowledge.yaml +41 -0
  7. package/examples/behaviours/precise_communication.yaml +39 -0
  8. package/examples/behaviours/relentless_curiosity.yaml +37 -0
  9. package/examples/behaviours/systems_thinking.yaml +40 -0
  10. package/examples/capabilities/_index.yaml +8 -0
  11. package/examples/capabilities/business.yaml +205 -0
  12. package/examples/capabilities/delivery.yaml +1001 -0
  13. package/examples/capabilities/people.yaml +68 -0
  14. package/examples/capabilities/reliability.yaml +349 -0
  15. package/examples/capabilities/scale.yaml +1672 -0
  16. package/examples/copilot-setup-steps.yaml +25 -0
  17. package/examples/devcontainer.yaml +21 -0
  18. package/examples/disciplines/_index.yaml +6 -0
  19. package/examples/disciplines/data_engineering.yaml +68 -0
  20. package/examples/disciplines/engineering_management.yaml +61 -0
  21. package/examples/disciplines/software_engineering.yaml +68 -0
  22. package/examples/drivers.yaml +202 -0
  23. package/examples/framework.yaml +73 -0
  24. package/examples/levels.yaml +115 -0
  25. package/examples/questions/behaviours/outcome_ownership.yaml +228 -0
  26. package/examples/questions/behaviours/polymathic_knowledge.yaml +275 -0
  27. package/examples/questions/behaviours/precise_communication.yaml +248 -0
  28. package/examples/questions/behaviours/relentless_curiosity.yaml +248 -0
  29. package/examples/questions/behaviours/systems_thinking.yaml +238 -0
  30. package/examples/questions/capabilities/business.yaml +107 -0
  31. package/examples/questions/capabilities/delivery.yaml +101 -0
  32. package/examples/questions/capabilities/people.yaml +106 -0
  33. package/examples/questions/capabilities/reliability.yaml +105 -0
  34. package/examples/questions/capabilities/scale.yaml +104 -0
  35. package/examples/questions/skills/architecture_design.yaml +115 -0
  36. package/examples/questions/skills/cloud_platforms.yaml +105 -0
  37. package/examples/questions/skills/code_quality.yaml +162 -0
  38. package/examples/questions/skills/data_modeling.yaml +107 -0
  39. package/examples/questions/skills/devops.yaml +111 -0
  40. package/examples/questions/skills/full_stack_development.yaml +118 -0
  41. package/examples/questions/skills/sre_practices.yaml +113 -0
  42. package/examples/questions/skills/stakeholder_management.yaml +116 -0
  43. package/examples/questions/skills/team_collaboration.yaml +106 -0
  44. package/examples/questions/skills/technical_writing.yaml +110 -0
  45. package/examples/self-assessments.yaml +64 -0
  46. package/examples/stages.yaml +191 -0
  47. package/examples/tracks/_index.yaml +5 -0
  48. package/examples/tracks/platform.yaml +47 -0
  49. package/examples/tracks/sre.yaml +46 -0
  50. package/examples/vscode-settings.yaml +21 -0
  51. package/package.json +49 -0
  52. package/schema/json/behaviour-questions.schema.json +95 -0
  53. package/schema/json/behaviour.schema.json +73 -0
  54. package/schema/json/capability-questions.schema.json +95 -0
  55. package/schema/json/capability.schema.json +229 -0
  56. package/schema/json/defs.schema.json +132 -0
  57. package/schema/json/discipline.schema.json +123 -0
  58. package/schema/json/drivers.schema.json +48 -0
  59. package/schema/json/framework.schema.json +68 -0
  60. package/schema/json/levels.schema.json +121 -0
  61. package/schema/json/self-assessments.schema.json +52 -0
  62. package/schema/json/skill-questions.schema.json +83 -0
  63. package/schema/json/stages.schema.json +88 -0
  64. package/schema/json/track.schema.json +95 -0
  65. package/schema/rdf/behaviour-questions.ttl +128 -0
  66. package/schema/rdf/behaviour.ttl +130 -0
  67. package/schema/rdf/capability.ttl +466 -0
  68. package/schema/rdf/defs.ttl +396 -0
  69. package/schema/rdf/discipline.ttl +313 -0
  70. package/schema/rdf/drivers.ttl +84 -0
  71. package/schema/rdf/framework.ttl +166 -0
  72. package/schema/rdf/levels.ttl +357 -0
  73. package/schema/rdf/self-assessments.ttl +147 -0
  74. package/schema/rdf/skill-questions.ttl +155 -0
  75. package/schema/rdf/stages.ttl +166 -0
  76. package/schema/rdf/track.ttl +225 -0
  77. package/src/index-generator.js +65 -0
  78. package/src/index.js +44 -0
  79. package/src/levels.js +553 -0
  80. package/src/loader.js +608 -0
  81. package/src/modifiers.js +23 -0
  82. package/src/schema-validation.js +438 -0
  83. 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