forked from Medium/snowflake
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathconstants.js
1211 lines (1180 loc) · 53.8 KB
/
constants.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
// @flow
import * as d3 from 'd3'
export type TrackId = 'MOBILE' | 'WEB_CLIENT' | 'CMS' | 'SERVERS' |
'PROJECT_MANAGEMENT' | 'COMMUNICATION' | 'CRAFT' | 'INITIATIVE' |
'CAREER_DEVELOPMENT' | 'ORG_DESIGN' | 'WELLBEING' | 'ACCOMPLISHMENT' |
'MENTORSHIP' | 'EVANGELISM' | 'RECRUITING' | 'COMMUNITY'
export type Milestone = 0 | 1 | 2 | 3 | 4 | 5
export type MilestoneMap = {
'MOBILE': Milestone,
'WEB_CLIENT': Milestone,
'CMS': Milestone,
'SERVERS': Milestone,
'PROJECT_MANAGEMENT': Milestone,
'COMMUNICATION': Milestone,
'CRAFT': Milestone,
'INITIATIVE': Milestone,
'CAREER_DEVELOPMENT': Milestone,
'ORG_DESIGN': Milestone,
'WELLBEING': Milestone,
'ACCOMPLISHMENT': Milestone,
'MENTORSHIP': Milestone,
'EVANGELISM': Milestone,
'RECRUITING': Milestone,
'COMMUNITY': Milestone
}
export const milestones = [0, 1, 2, 3, 4, 5]
export const milestoneToPoints = (milestone: Milestone): number => {
switch (milestone) {
case 0: return 0
case 1: return 1
case 2: return 3
case 3: return 6
case 4: return 12
case 5: return 20
default: return 0
}
}
export const pointsToLevels = {
'0': '1.1',
'5': '1.2',
'11': '1.3',
'17': '2.1',
'23': '2.2',
'29': '2.3',
'36': '3.1',
'43': '3.2',
'50': '3.3',
'58': '4.1',
'66': '4.2',
'74': '4.3',
'90': '5.1',
'110': '5.2',
'135': '5.3',
}
export const maxLevel = 135
export type Track = {
displayName: string,
category: string, // TK categoryId type?
description: string,
milestones: {
summary: string,
signals: string[],
examples: string[]
}[]
}
type Tracks = {|
'MOBILE': Track,
'WEB_CLIENT': Track,
'CMS': Track,
'SERVERS': Track,
'PROJECT_MANAGEMENT': Track,
'COMMUNICATION': Track,
'CRAFT': Track,
'INITIATIVE': Track,
'CAREER_DEVELOPMENT': Track,
'ORG_DESIGN': Track,
'WELLBEING': Track,
'ACCOMPLISHMENT': Track,
'MENTORSHIP': Track,
'EVANGELISM': Track,
'RECRUITING': Track,
'COMMUNITY': Track
|}
export const tracks: Tracks = {
"MOBILE": {
"displayName": "Mobile",
"category": "A",
"description": "Develops expertise in mobile platform engineering, such as iOS, Android, or React Native",
"milestones": [{
"summary": "Works effectively within established iOS or Android architectures, following current best practices",
"signals": [
"Delivers features requiring simple local modifications",
"Adds simple actions that call server endpoints",
"Reuses existing components appropriately",
],
"examples": [
"Added existing button to a different iOS surface",
"Added follow button for publications on Android",
"Fetched data from an API, and used existing styling to render the UI for it",
],
}, {
"summary": "Develops new instances of existing architecture, or minor improvements to existing architecture",
"signals": [
"Defines new useful and appropriate proto-generated objects",
"Creates simple new activities on Android",
"Migrates code from old patterns to new patterns",
],
"examples": [
"Upgraded SDWebImage to a new major version",
"Added support for rendering a new and complex UITableViewCell type of item",
"Prototyped a simple new feature quickly",
],
}, {
"summary": "Designs major new features and demonstrates a nuanced understanding of mobile platform constraints",
"signals": [
"Implements complex features with a large product surface area",
"Works effectively with a reactive programming framework",
"Adds support for new iOS features after a major iOS version upgrade",
],
"examples": [
"Designed iOS caching strategy for offline reading",
"Built Levelhead's stickers functionality on Android",
"Informed the team about recent best practice changes and deprecations",
],
}, {
"summary": "Builds complex, reusable architectures that pioneer best practices and enable engineers to work more effectively",
"signals": [
"Pioneers architecture migration strategies that reduce programmer burden",
"Fixes subtle memory management issues",
"Implements interactive UX that bring delight",
],
"examples": [
"Upgraded CocoaPods to a new major version",
"Designed architecture for fetching and rendering stream items",
"Migrated persistance layer to reactive programming",
],
}, {
"summary": "Is an industry-leading expert in mobile engineering or sets strategic mobile direction for an eng team",
"signals": [
"Defines long-term goals and ensures active projects are in service of them",
"Designs and builds innovative, industry-leading UI interactions",
"Invents new techniques to responsibly stretch limits of the Android platform",
],
"examples": [
"Defined and drove complete migration plan to Swift or Kotlin",
"Implemented Android recycler views before platform support existed",
"Pioneered application-level abstractions for multi-app environment",
],
}],
},
"WEB_CLIENT": {
"displayName": "Web client",
"category": "A",
"description": "Develops expertise in web client technologies, such as React, Angular, or Vue",
"milestones": [{
"summary": "Works effectively within established web client architectures, following current best practices",
"signals": [
"Makes minor modifications to existing screens",
"Builds basic components that work well with each other",
"Uses CSS appropriately, following style guide",
],
"examples": [
"Implemented sticky footer on the post page",
"Hooked up the action to dismiss a post from a stream",
"Built a PaymentHistory component that has basic interactions and works within a larger application",
],
}, {
"summary": "Develops new instances of existing architecture, or minor improvements to existing architecture",
"signals": [
"Makes sensible abstractions based on template and code patterns",
"Specs and builds interactive components independently",
"Prototypes simple new features quickly",
],
"examples": [
"Built credit card input component",
"Created shared buttons template",
"Built a reusable modal system that used Render Props appropriately",
],
}, {
"summary": "Designs major new features and demonstrates a nuanced understanding of browser constraints",
"signals": [
"Provides useful design feedback and suggests feasible alternatives",
"Performs systemic tasks to significantly minimize bundle size",
"Acts a caretaker for all of web client code",
],
"examples": [
"Stood up Redux (or equivalent) and kept it from growing too complex",
"Implemented a client-side routing scheme",
"Designed and implemented ResponseScreen container",
],
}, {
"summary": "Builds complex, reusable architectures that pioneer best practices and enable engineers to work more effectively",
"signals": [
"Pioneers architecture migrations that reduce programmer burden",
"Implements complex UI transitions that bring delight",
"Makes architectural decisions that eliminate entire classes of bugs",
],
"examples": [
"Maintained SEO in a React/Angular/Vue based website",
"Built a complex web application from top to bottom",
"Built a reusable library that can be used in multiple projects",
],
}, {
"summary": "Is an industry-leading expert in web client or sets strategic web client direction for an eng team",
"signals": [
"Invents new techniques to innovate and overcome browser constraints",
"Identifies and solved systemic problems with current architecture",
"Defines a long-term vision for web client and ensures projects are in service of it",
],
"examples": [
"Invented CSS in JS",
"Defined and drove migration strategy",
"Implemented unidirectional data flow to completion",
],
}],
},
"CMS": {
"displayName": "CMS",
"category": "A",
"description": "Develops expertise in front-end development and/or CMSes, such as HTML5/CSS, WordPress, and especially, Drupal",
"milestones": [{
"summary": "Can assist in building CMS powered websites",
"signals": [
"Writes HTML and CSS that matches comps created by the design team",
"Sets up and maintains a local environment of the CMS",
"Collaborates with the design team during the design process to create well-crafted sites that are not time-consuming to build.",
],
"examples": [
"Installed a WordPress plugin without breaking the site",
"Wrote well-factored SASS in a Drupal build",
"Followed a proper fork/pull model when building features",
],
}, {
"summary": "Sets up and maintains simple CMS projects",
"signals": [
"Knows how to build reusable layouts using grid systems",
"Writes reusable components that speeds up front-end development",
"Follows testing best practices for WordPress or Drupal",
],
"examples": [
"Wrote unit tests for custom WordPress or Drupal modules",
"Delivered pixel perfect layouts",
"Built responsive layouts",
],
}, {
"summary": "Builds and maintains complex CMS installations and manages their lifecycle",
"signals": [
"Can lead the development of a complex WordPress or Drupal site build",
"Designs easily replicable local environments",
"Makes major version upgrades to libraries",
],
"examples": [
"New developers to the project can onboard seamlessly by cloning a repo and running a single setup script",
"Set up and maintained an Acquia based deploy pipeline",
"Set up and maintained a robust BEHAT testing configuration",
],
}, {
"summary": "Builds complex and reusable architectures that handle heavy amounts of user traffic",
"signals": [
"Designs complex sites that have deep integration with multiple non-native systems",
"Demonstrates deep knowledge of the underlying CMS systems",
"Introduces new platforms and technologies to meet client needs",
],
"examples": [
"Piloted a successful headless-CMS project",
"Migrated a large site from Adobe to Drupal 8",
"Contributed to core open-source modules",
],
}, {
"summary": "An industry-leading expert in CMS development or sets strategic foundational direction for a team",
"signals": [
"Sees trends and new processes coming and adapts our (and our clients') business to take advantage of them",
"Defines the strategic vision for foundational work and supporting technologies",
"Invents industry-leading techniques to solve complex problems",
],
"examples": [
"Presented at Drupalcon",
"Added another CMS platform to our technical stack",
"Invented a novel way to use ML to gain greater insights into user behavior across a site",
],
}],
},
"SERVERS": {
"displayName": "Servers",
"category": "A",
"description": "Develops expertise in server side engineering, using technologies such as NodeJS/Hapi, Rails, or similar",
"milestones": [{
"summary": "Works effectively within established server side frameworks, following current best practices",
"signals": [
"Adds NodeJS endpoints to a Hapi RESTful server",
"Adds route validation to a Hapi route",
"Makes minor server changes to support client needs",
],
"examples": [
"Used Joi make sure a POST route had a proper payload",
"Queried a mongo database and loaded the results with async/await",
"Wrote unit tests for an endpoint",
],
}, {
"summary": "Develops new instances of existing architecture, or minor improvements to existing architecture",
"signals": [
"Assesses correctness and utility of existing code and avoids blind copy-pasting",
"Determines data needs from product requirements",
"Created models based on data requirements",
],
"examples": [
"Wrote code and tests (unit and integration) for an entire endpoint",
"Stood up a basic RESTful API on Hapi 17",
"Updated Joi version and implemented fixes for dependencies",
],
}, {
"summary": "Designs standalone systems of moderate complexity, or major new features in existing systems",
"signals": [
"Acts as primary maintainer for existing critical systems",
"Integrates third party services effectively",
"Writes guidelines and documentation for new service maintenance",
],
"examples": [
"Implemented Google Auth login to a service",
"Implemented payments integration with Stripe",
"Built and maintainted a suite of swagger documentation for an API",
],
}, {
"summary": "Builds complex, reusable architectures that pioneer best practices for other developers, or multi-system services",
"signals": [
"Delivers complex systems that achieve their goals",
"Avoids subtle architectural mistakes when considering new systems",
"Makes appropriate buy vs build choices",
],
"examples": [
"Designed a microservice architecture",
"Wrangled multiple teams and SMEs from a client's organization",
"Created a service to deeply integrate GitHub and Basecamp",
],
}, {
"summary": "Is an industry-leading expert in server side development or sets strategic server side direction for an dev team",
"signals": [
"Designs transformational projects of significant complexity and scope",
"Makes decisions that have positive, long term, wide ranging consequences",
"Identifies and solves systemic problems with current architecture",
],
"examples": [
"Researched, vetted, and selected Go as Tallwave's statically typed language",
"Defined a migration plan and oversaw a clients' transition to a new architecture",
"Defined and implemented proprietary IP core to the company's success",
],
}],
},
"PROJECT_MANAGEMENT": {
"displayName": "Project management",
"category": "B",
"description": "Delivers well-scoped programs of work that meet their goals, on time, to budget, harmoniously",
"milestones": [{
"summary": "Effectively delivers on individual tasks",
"signals": [
"Estimates small tasks accurately",
"Delivers tightly-scoped projects efficiently",
"Writes effective technical specs outlining approach",
],
"examples": [
"Provided solid feedback and analysis on an issue in the tracker",
"Implemented a well-scoped feature on time",
"Appropriately communicated when a specific item was going to be late",
],
}, {
"summary": "Effectively delivers small projects",
"signals": [
"Performs research and considers alternative approaches",
"Balances pragmatism and polish appropriately",
"Defines and hits interim milestones",
],
"examples": [
"Delivered dashboard widgets that integrate with state",
"Noted when technical debt was intentionally created and documented it appropriately",
"Refactored a complex function into something simpler",
],
}, {
"summary": "Effectively delivers projects through a small team",
"signals": [
"Delegates tasks to others appropriately",
"Integrates business needs into project planning",
"Chooses appropriate project management strategy based on context",
],
"examples": [
"Ran project retro to assess improvement opportunities",
"Completed launch checklist unprompted for well controlled rollout",
"Facilitated project kickoff meeting to get buy-in",
],
}, {
"summary": "Effectively delivers projects through a large team, or with a significant amount of stakeholders or complexity",
"signals": [
"Finds ways to deliver requested scope faster, and prioritizes backlog",
"Manages dependencies on other projects and teams",
"Leverages recognition of repeated project patterns",
],
"examples": [
"Oversaw technical delivery of a medium-large client project",
"Managed infrastructure migration to a new platform",
"Involved client stakeholders, designers, and digital personnel at project start",
],
}, {
"summary": "Manages major company pushes delivered by multiple teams",
"signals": [
"Considers external constraints and business objectives when planning",
"Leads teams of teams, and coordinates effective cross-functional collaboration",
"Owns a key company or client metric",
],
"examples": [
"Managed large technical migration to a new service or platform",
"Lead technical delivery, launch, and handoff of a multi-site CMS project",
"Delivered multi-month development project on time",
],
}],
},
"COMMUNICATION": {
"displayName": "Communication",
"category": "B",
"description": "Shares the right amount of information with the right people, at the right time, and listens effectively",
"milestones": [{
"summary": "Communicates effectively to close stakeholders when called upon, and incorporates constructive feedback",
"signals": [
"Communicates project status clearly and effectively",
"Collaborates with others with empathy",
"Asks for help at the appropriate juncture",
],
"examples": [
"Provided insightful commentary and feedback in a design studio",
"Updated project status changes in GitHub promptly",
"Wrote an update to the Developer Guidelines",
],
}, {
"summary": "Communicates with the wider team appropriately, focusing on timeliness and good quality conversations",
"signals": [
"Practices active listening and suspension of attention",
"Ensures stakeholders are aware of current blockers",
"Chooses the appropriate tools for accurate and timely communication",
],
"examples": [
"Received and integrated critical feedback positively",
"Created cross-team Slack channel for project work",
"Spoke to appropriate representatives and got buy-in before writing spec",
],
}, {
"summary": "Proactively shares information, actively solicits feedback, and facilitates communication for multiple stakeholders",
"signals": [
"Resolves communication difficulties between others",
"Anticipates and shares schedule deviations in plenty of time",
"Manages project stakeholder expectations effectively",
],
"examples": [
"Directed team response effectively during outages",
"Gave a substantial Dev Huddle presentation on Headless CMS",
"Disagreed effectively with a client and drove them to a new point of view",
],
}, {
"summary": "Communicates complex ideas skillfully and with nuance, and establishes alignment within the wider organization",
"signals": [
"Communicates project risk and tradeoffs skillfully and with nuance",
"Contextualizes and clarifies ambiguous direction and strategy for others",
"Negotiates resourcing compromises with other teams",
],
"examples": [
"Lead off-site workshop on interviewing",
"Wrote Tallwave's growth framework and rationale",
"Aligned the entire organization around a new multi-team process",
],
}, {
"summary": "Influences outcomes at the highest level, moves beyond mere broadcasting, and sets best practices for others",
"signals": [
"Defines processes for clear communication for the entire team",
"Shares the right amount of information with the right people, at the right time",
"Develops and delivers plans to execs, c-suite members at client organizations, and board members",
],
"examples": [
"Organized and managed communications around a Client Summit",
"Created the communication plan for a large organizational change",
"Presented to the board about key company metrics and projects",
],
}],
},
"CRAFT": {
"displayName": "Craft",
"category": "B",
"description": "Embodies and promotes practices to ensure excellent quality products and services",
"milestones": [{
"summary": "Delivers consistently good quality work",
"signals": [
"Tests new code thoroughly, both locally, and in production once shipped",
"Writes tests for every new feature and bug fix",
"Writes clear comments and documentation",
],
"examples": [
"Caught a bug on a project before it went live",
"Landed non-trivial PR without multiple rounds of extensive feedback",
"Wrote non-brittle unit tests",
],
}, {
"summary": "Increases the robustness and reliability of codebases, and devotes time to polishing products and systems",
"signals": [
"Refactors existing code to make it more testable",
"Adds tests for uncovered areas",
"Deletes unnecessary code and deprecates proactively when safe to do so",
],
"examples": [
"Requested tests for a PR when acting as reviewer",
"Improved code coverage substantially on a project",
"Fixed a TODO for someone else in the codebase",
],
}, {
"summary": "Improves others' ability to deliver great quality work",
"signals": [
"Implements systems that enable better testing",
"Gives thoughtful code reviews as a domain expert",
"Adds tooling to improve code quality",
],
"examples": [
"Implemented a robust dummy data solution for testing",
"Created fixture system for testing frameworks",
"Implemented a CI system to generate reports on code quality",
],
}, {
"summary": "Advocates for and models great quality with proactive actions, and tackles difficult and subtle system issues",
"signals": [
"Builds systems so as to eliminate entire classes of programmer error",
"Focuses the team on quality with regular reminders without being annoying",
"Coordinates on-call priorities and projects",
],
"examples": [
"Iterated repeatedly to develop Tallwave's underlying solution",
"Defined and oversaw plan for closing Heartbleed vulnerability",
"Implemented a complex eslint config tailored to a new dev approach",
],
}, {
"summary": "Enables and encourages the entire organization to make quality a central part of the development process",
"signals": [
"Defines policies for the engineering org that encourage quality work",
"Identifies and eliminates single points of failure throughout the organization",
"Secures time and resources from execs to support great quality",
],
"examples": [
"Negotiated resources for internal projects with exec team",
"Onboarded an internal QA team",
"Detailed and enforced new policies on the Guidelines",
],
}],
},
"INITIATIVE": {
"displayName": "Initiative",
"category": "B",
"description": "Challenges the status quo and effects positive organizational change outside of mandated work",
"milestones": [{
"summary": "Identifies opportunities for organizational change or product improvements",
"signals": [
"Writes thoughtful Basecamp messages about improvement opportunities",
"Raises meaningful tensions in tactical meetings",
"Asks leadership team probing questions during all-hands or other meetings",
],
"examples": [
"Wrote about problems with GitHub on Basecamp",
"Wrote about content policy problems on Basecamp",
"Reported a site issue in GitHub",
],
}, {
"summary": "Causes change to positively impact a few individuals or minor improvement to an existing product or service",
"signals": [
"Picks bugs off the backlog proactively when blocked elsewhere",
"Makes design quality improvements unprompted",
"Takes on Guidelines tasks proactively when blocked elsewhere",
],
"examples": [
"Advocated on own behalf for a change in role",
"Implemented flow typing on a small internal project",
"Audited web client performance in Chrome and proposed fixes",
],
}, {
"summary": "Causes change to positively impact an entire team or instigates a minor feature or service",
"signals": [
"Demonstrates concepts proactively with prototypes",
"Fixes complicated bugs outside of regular domain",
"Takes ownership of systems that nobody owns or wants",
],
"examples": [
"Defined style guide to resolve style arguments",
"Proposed and implemented a prototype to demonstrate a concept",
"Recognized a warning sign on a client project and dealt with it effectively",
],
}, {
"summary": "Effects change that has a substantial positive impact on the development organization or a major product impact",
"signals": [
"Champions and pioneers new technologies to solve new classes of problem",
"Exemplifies grit and determination in the face of persistent obstacles",
"Instigates major new features, services, or architectures",
],
"examples": [
"Created the interviewing guide and toolkit",
"Introduced a prettier to the dev team and saw its adoption through",
"Built a boilerplate/template app for Hapi that includes things like auth, plugins, and directory organization",
],
}, {
"summary": "Effects change that has a substantial positive impact on the whole company",
"signals": [
"Creates a new function to solve systemic issues",
"Galvanizes the entire company and garners buy in for a new strategy",
"Changes complex organizational processes",
],
"examples": [
"Piloted a new process for team collaboration that made the team better",
"Made substantial updates to the sales process to set the implementation team up for best chances for success",
"Created new processes for the design team to integrate with the development workflow",
],
}],
},
"CAREER_DEVELOPMENT": {
"displayName": "Career development",
"category": "C",
"description": "Provides strategic support to engineers to help them build the career they want",
"milestones": [{
"summary": "Gives insight into opportunities and helps identify individuals' strengths and weaknesses",
"signals": [
"Advocates on behalf and in defense of a group member",
"Shares opportunities for improvements and recognizes achievements",
"Explains appropriate available industry paths",
],
"examples": [
"Collected and delivered feedback",
"Discussed career options and areas of interest informally",
"Provided insights into different career paths",
],
}, {
"summary": "Formally supports and advocates for one person and provides tools to help them solve career problems",
"signals": [
"Ensure a group member has an appropriate role on their team",
"Offers effective career advice to group members, without being prescriptive",
"Creates space for people to talk through challenges",
],
"examples": [
"Set up and attended regular, constructive 1:1s",
"Provided coaching on how to have difficult conversations",
"Taught group members some of the Don't Suck at Work lessons",
],
}, {
"summary": "Inspires and retains a small group of people and actively pushes them to stretch themselves",
"signals": [
"Discusses paths, and creates plans for personal and professional growth",
"Advocates to align people with appropriate roles within organization",
"Works with team leads to elevate emerging leaders",
],
"examples": [
"Reviewed individual group member progression every 6 weeks",
"Suggested appropriate group member for Team Lead position",
"Arranged a requested switch of discipline for a group member",
],
}, {
"summary": "Manages interactions and processes between groups, promoting best practices and setting a positive example",
"signals": [
"Manages team transitions smoothly, respecting team and individual needs",
"Develops best practices for conflict resolution",
"Ensures all group members' roles are meeting their career needs",
],
"examples": [
"Completed training on situational leadership",
"Built a resourcing plan based on company, client, and individual goals",
"Provided a calm voice of reason during crisis and de-escalated tensions",
],
}, {
"summary": "Supports the development of a signficant part of the dev team, and widely viewed as a trusted advisor",
"signals": [
"Supports and develops senior leaders",
"Identified leadership training opportunities for senior leadership",
"Pushes everyone to be as good as they can be, with empathy",
],
"examples": [
"Provided coaching to team leads and managers",
"Devised Guidelines curriculum for team leads",
"Advocated to execs for development training resources and programs",
],
}],
},
"ORG_DESIGN": {
"displayName": "Org design",
"category": "C",
"description": "Defines processes and structures that enables the strong growth and execution of a diverse dev team",
"milestones": [{
"summary": "Respects and participates in processes, giving meaningful feedback to help the organization improve",
"signals": [
"Reflects on meetings that leave them inspired or frustrated",
"Teaches others about existing processes",
"Actively participates and makes contributions within organizational processes",
],
"examples": [
"Lead an effective tactical meeting with empathy",
"Explained tactical meeting format to a new hire",
"Provided feedback on sprint planning meeting",
],
}, {
"summary": "Identifies opportunities to improve existing processes and makes changes that positively affect the team",
"signals": [
"Defines meeting structure and cadence that meets team needs",
"Engages in organizational systems thinking",
"Advocates for improved diversity and inclusion, and proposes ideas to help",
],
"examples": [
"Defined a recurring meeting structure for a small client project",
"Improved code review process on a small project",
"Defined standard channels for communication with contractors",
],
}, {
"summary": "Develops processes to solve ongoing organizational problems",
"signals": [
"Creates programs that meaningfully improve organizational diversity",
"Solves long-standing organizational problems",
"Reallocates resources to meet organizational needs",
],
"examples": [
"Coordinated with team members plans to evangelize our stuff to the community",
"Collaborated with the sales team to improve the sales process",
"Created documentation around creating TRDs and shared them with the company",
],
}, {
"summary": "Thinks deeply about organizational issues and identifies hidden dynamics that contribute to them",
"signals": [
"Evaluates incentive structures and their effect on execution",
"Analyzes existing processes for bias and shortfall",
"Ties abstract concerns to concrete organizational actions or norms",
],
"examples": [
"Identified recruiting difficulties and worked with HR to shorten time to hire",
"Wrote and pitched proposal to bring a medium-significant change to the organization",
"Tailored Snowflake to use as a hiring tool",
],
}, {
"summary": "Leads initiatives to address issues stemming from hidden dynamics and company norms",
"signals": [
"Builds programs to train leadership in desired skills",
"Creates new structures that provide unique growth opportunities",
"Leads planning and communication for reorgs",
],
"examples": [
"Lead efforts to increase number of mobile developers",
"Directed resources to meaningfully improve diversity at all levels",
"Built the growth framework rubric",
],
}],
},
"WELLBEING": {
"displayName": "Wellbeing",
"category": "C",
"description": "Supports the emotional well-being of group members in difficult times, and celebrates their successes",
"milestones": [{
"summary": "Uses tools and processes to help ensure colleagues are healthy and happy",
"signals": [
"Keeps confidences unless legally or morally obliged to do otherwise",
"Assumes good intent when dealing with 'difficult' people",
"Avoids blame and focuses on positive change",
],
"examples": [
"Ensured group members were taking enough vacation",
"Put themself in another's shoes to understand their perspective",
"Checked in with colleague showing signs of burnout",
],
}, {
"summary": "Creates a positive, supportive, engaging team environment for group members",
"signals": [
"Sheds light on other experiences to build empathy and compassion",
"Validates ongoing work and sustains motivation",
"Proposes solutions when teams get bogged down or lose momentum",
],
"examples": [
"Coordinated a small celebration for a project launch",
"Connected tedious A/B testing project with overall company goals",
"Used a Dev Huddle to share new wins from a project and lessons learned and mistakes to avoid",
],
}, {
"summary": "Manages expectations across peers, leads in the org, promotes calm, and prevents consensus building",
"signals": [
"Trains group members to separate stimulus from response",
"Maintains a pulse on individual and team morale",
"Helps group members approach problems with curiosity",
],
"examples": [
"Worked closely with a peer or direct report to improve a performance issue",
"Completed training on compromise and negotiation techniques",
"Reframed a problem as a challenge, instead of a barrier, when appropriate",
],
}, {
"summary": "Advocates for the needs of teams and group members, and proactively works to calm the organization",
"signals": [
"Ensures team environments are safe and inclusive, proactively",
"Grounds group member anxieties in reality",
"Tracks team retention actively and proposes solutions to strengthen it",
],
"examples": [
"Relieved org tension around company direction by providing extra context",
"Encouraged group members to focus on what they can control",
"Guided people through complex organizational change",
],
}, {
"summary": "Manages narratives, channels negativity into inspiration and motivation, and protects the entire team",
"signals": [
"Recognizes and points out narratives when appropriate",
"Acts as an inspiration for the team even when under pressure and stress",
"Increases the psychological safety of the entire team",
],
"examples": [
"Converted group member from a problem haver to a problem solver",
"Shared bad news without white-washing it, but while remaining focused on improvement and the future",
"Cultivated and championed a culture of empathy within the entire team",
],
}],
},
"ACCOMPLISHMENT": {
"displayName": "Accomplishment",
"category": "C",
"description": "Inspires day to day excellence, maximizes potential and effectively resolves performance issues with compassion",
"milestones": [{
"summary": "Helps individuals identify blockers and helps them identify next steps for resolution",
"signals": [
"Notices when someone is stuck and reaches out",
"Helps others break down problems into feasible, tangible next steps",
"Talks through problems non-judgmentally",
],
"examples": [
"Identified a problem (technical or organizational) and suggested a feasible solution",
"Unblocked a group member",
"Reinforces and affirms positive feedback for good work",
],
}, {
"summary": "Helps individuals resolve difficult performance issues, with insight, compassion, and skill",
"signals": [
"Gathers context outside the immediate problem",
"Recognizes issues within personal environment and suggests change",
"Works to encourage ownership of actions and responsibilities",
],
"examples": [
"Completed Crucial Conversations training",
"Convinced a group member to solve a problem directly, rather than doing it for them",
"Gave honest feedback about poor performance, with compassion",
],
}, {
"summary": "Intervenes in long-standing performance issues with targeted behavior change or performance plans",
"signals": [
"Aggregates signals of poor performance and creates process for improvement",
"Investigates motivation and externalities for consistent poor performance",
"Puts together comprehensive, achievable performance plans",
],
"examples": [
"Worked with group member to address persistent communication failures",
"Arranged a transfer to another team, resulting in improved performance",
"Managed group member closely to maximize chances of PIP success",
],
}, {
"summary": "Mediates escalated situations, empowers underperforming teams, and resolves conflict",
"signals": [
"Recognizes heightened situations and toxic or aggressive interactions",
"Inserts themself into conflict where appropriate to calm and mediate",
"Encourages open dialog and builds trust between parties in conflict",
],
"examples": [
"Empowered a team to drive forward amidst uncertainty",
"Protected team from externalities so they could focus on goals",
"Mediated sit-down between team members to address tension",
],
}, {
"summary": "Resolves complex organizational dysfunction, or persistent conflict at senior levels",
"signals": [
"Takes control of dysfunctional teams to organise chaos",
"Repairs broken team dynamics and builds harmony",
"Presides over a well-oiled team of teams",
],
"examples": [
"Turned around the performance of a problematic team",
"De-escalated serious tensions between teams",
"Rebuilt trust between senior team leads",
],
}],
},
"MENTORSHIP": {
"displayName": "Mentorship",
"category": "D",
"description": "Provides support to colleagues, spreads knowledge, and develops the team outside formal reporting structures",
"milestones": [{
"summary": "Informally mentors individuals in an ad-hoc way, supports new hires, and conveys institutional knowledge",
"signals": [
"Makes themself available for informal support and advice",
"Acts as sounding board for peers and more junior members",
"Provides sound advice when asked",
],
"examples": [
"Acted as an onboarding buddy",
"Paired with a developer to help them with an unfamiliar area",
"Avoids siloing information when it can be usefully shared with others",
],
}, {
"summary": "Mentors people proactively, and guides people to realizations rather than providing the answer",
"signals": [
"Takes time to explain concepts and best practices, and why we do them",
"Asks questions to illuminate concepts, rather than stating them",
"Allows others to lead efforts when it will help their development",
],
"examples": [
"Shared interesting article with a team member to help with their growth",
"Offered unprompted feedback to help growth, with empathy",
"Lead from behind to support someone new to a leadership role",
],
}, {
"summary": "Teaches small groups of developers and contributes to Tallwave's shared knowledge base",
"signals": [
"Works to avoid single point of failure from a project and process",
"Finds tools that work best for a team member's personality",
"Finds specific actions that team members can take to improve their skillsets",
],
"examples": [
"Gave a presentation on payment systems and how to implement them",
"Wrote a Guidelines post on mitigating DDOS attacks on an AWS hosted site",
"Walked a team member through a Udemy course and checked in regularly to gauge progress",
],
}, {
"summary": "Encourages people to mentor each other, and creates ways for them to do so",
"signals": [
"Defines an entire curriculum for a discipline",
"Draws positive attention to well-modeled mentor and teaching behaviors",
"Creates detailed documentation for how an entire service or architecture was developed and what to learn from it",
],
"examples": [
"Created and lead an internal Women in Dev group",
"Organized a series of topics to discuss in a Dev Huddle with an outside speaker",
"Designed a course on complex server side topics and taught it to interns",
],
}, {
"summary": "Instills and promotes a culture of learning and development within the team",
"signals": [
"Sets incentive structures to recognize and reward mentorship",
"Empowers team members to develop themselves",
"Role models productive and healthy mentor relationships",
],
"examples": [
"Instituted the professional education budget for developers",
"Mentored mentors",
"Started an advisor program and lined up external mentors",
],
}],
},
"EVANGELISM": {
"displayName": "Evangelism",
"category": "D",
"description": "Promotes Tallwave to the outside world and establishes it as an attractive and thoughtful place to work",
"milestones": [{
"summary": "Represents Tallwave well externally, and influences individuals positively",
"signals": [
"Shares personal and organizational successes with their network",
"Attends Tallwave-hosted events and talks with guests",
"Communicates genuine and honest excitement about their work externally",
],
"examples": [
"Shared a Tallwave product launch post on Twitter",
"Acted as a guide for a non-friend visitor to the office",
"Supported PR efforts by giving a quote or having a photo taken",
],
}, {
"summary": "Participates more centrally in small events, and takes simple actions that positively influence groups of people",
"signals": [
"Takes meaningful action to introduce people to Tallwave",
"Joined public Slack group and represented Tallwave appropriately, and well",
"Organizes positive small or medium-sized events that bring people to Tallwave",
],
"examples": [
"Volunteered as a helper for Phoenix Design Week",
"Organized a short tour of the office by college students",
"Talked at a Cocoaheads event hosted at the Tallwave office",
],
}, {
"summary": "Works hard to positively influence large groups of people on their views of Tallwave",
"signals": [
"Mentors or participates in a high visibility way in an external organization",
"Builds fruitful partnerships with external organizations",
"Writes blog posts about Tallwave that receive moderate traffic",
],
"examples": [
"Represented Tallwave on a panel at a conference of industry experts",