A | B | C | D | E | F | G | H | I | J | K | L | M | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | DevOps Technical Mastery | ||||||||||||
2 | Master the technique | ||||||||||||
3 | This skill is about technical mastery for DevOps, including monitoring and incidents handling, dev cycle, and quality. To reach one level in Technical Mastery, one need to reach this level in all sub-skills. | ||||||||||||
4 | Level | Expertise reach | Reached | Not yet | Description | Reached | Not yet | Hard requirements | Reasons | Reached | Not yet | Soft requirements | Reasons |
5 | 1 | Self | Is able to develop simple features and is actively learning with the help of their peers May infrequently have issues following patterns/practices in existing code / infrastructure | DevOps: | |||||||||
6 | - Codes simple features and handles simple bugs autonomously | - Knows when to ask for help, and who to ask and doesn't get stuck on a problem | |||||||||||
7 | - Writes clear, readable and non error-prone code (ex: avoid side-effects) | ||||||||||||
8 | - Has a good understanding of how our infrastructure works | ||||||||||||
9 | - Has a basic knowledge in all tools and at ease with some of them (shell and basic JS, Docker, Kubernetes, Terrraform, Azure, OVH, Mongo Atlas, Nginx..) | ||||||||||||
10 | Monitoring / Incident | ||||||||||||
11 | - Uses efficiently logs and monitoring tools (netdata, Datadog, Nginx log) to troubleshoot a problem or analyze performance issues | ||||||||||||
12 | - Participates in on-call rotations | ||||||||||||
13 | - Reacts in case of incident | ||||||||||||
14 | Dev Cycle: | ||||||||||||
15 | - Follows our dev cycle process and practices | - Global understanding of application code | |||||||||||
16 | - Generally writes good PRs (short, clear, with a good description) | ||||||||||||
17 | - Listens to feedback and does not repeat the same mistakes more than a few times | ||||||||||||
18 | Quality: | ||||||||||||
19 | - Knows the documented practices / code conventions | - Always writes tests whenever it's straightforward to do so (test file already exists, or there are multiple examples to get inspired from) | |||||||||||
20 | - Always makes sure that when asking for a functional review, the tests explicitely written in the tickets all pass without any obvious bug | - Writes code with readability, testability and edge cases in mind | |||||||||||
21 | - Does some basic boy scout to improve the code / infrastructure quality | ||||||||||||
22 | 2 | Others in Squad | Does a good job on his squad scope, may need help for the most complex features | DevOps: | |||||||||
23 | - Handles autonomously most of features (design + code), may need help for the most complex ones | - Is proficient in our code / infrastructure enough to help a newcomer and explain the ropes | |||||||||||
24 | - Writes good code (clear, testable, documented) / apply good practice | ||||||||||||
25 | - Always tries to automate task and create easy to maintain and repeatable solution | ||||||||||||
26 | - Ensures to provide tools that are easy to use for dev | ||||||||||||
27 | - Architecture choices are relevant, and fit well with the overall infrastructure. | ||||||||||||
28 | - Is at ease with most of our technology (shell and basic JS, Docker, Kubernetes, Terrraform, Azure, OVH, Mongo Atlas, Nginx) | ||||||||||||
29 | Monitoring / Incident | ||||||||||||
30 | - Creates / improves dashboards, monitors, alerting | ||||||||||||
31 | - Supports dev for deployment / release | ||||||||||||
32 | - Does a relevant analysis on alert (identify false positive, evaluate urgency) and finds the origin of common issues | ||||||||||||
33 | - Solves common incident autonomously | ||||||||||||
34 | Dev Cycle: | ||||||||||||
35 | - Consistently writes good PRs (logically split, can rewrite the commit history to make it more readable if necessary) | - Only writes readable and maintainable tests | |||||||||||
36 | - Proactively challenges spec when it can lead to simplification | ||||||||||||
37 | Quality: | ||||||||||||
38 | - Does some refactorings to improve the quality of the existing code | ||||||||||||
39 | - Gets few remarks during functional reviews, features behave as described in the spec | ||||||||||||
40 | 3 | Squad | Expert in their squad Always goes the extra mile to improve the code / infrastructure quality and its architecture | DevOps: | |||||||||
41 | - Writes great code (easy to understand, use and maintain, and that can be easily adapted for future needs) which is production-ready (no visible bug, safely repeatable) | - Fixes complicated issues outside of the traditional domain | |||||||||||
42 | - Designs and implements complex features | - Finds elegant solutions to problems | |||||||||||
43 | - Is a go-to expert on a subset of technologies (shell and basic JS, Docker, Kubernetes, Terrraform, Azure, OVH, Mongo Atlas, Nginx) | - Keeps up with the industry best practices | |||||||||||
44 | Monitoring / Incident | - Takes initiatives to fix issues before being assigned to them / before someone else notices it | |||||||||||
45 | - Finds origin of majority of incident / performance issue | - Setup tools / enrich collected data to improve monitoring / alerting | |||||||||||
46 | - Solves a majority of incident autonomously | ||||||||||||
47 | - Communicates effectively on incident : get support when needed, communicate within the team and outside (company / client | ||||||||||||
48 | - Follows up after incident : document, cleanup fix if needed, postmortem, take action to avoid recurring incident | ||||||||||||
49 | Dev Cycle: | ||||||||||||
50 | - Writes great PRs (comments about their length or readability are an exception, they follow each other logically and are almost never chained) | ||||||||||||
51 | - Splits tasks or tickets whenever possible, before development starts, so that they can be done more easily | ||||||||||||
52 | Quality: | ||||||||||||
53 | - Creates very few bugs / incident | ||||||||||||
54 | - Regularly does some significant refactoring to improve the code quality | ||||||||||||
55 | 4 | Other squads | Technical reference for other devs Pushes technical improvements in their squad Coordinates with other squads to improve the general QoS / workflow / R&D production quality | DevOps: | |||||||||
56 | - Is a reference on DevOps subject (R&D support) - writes examplary code that others can learn from - gives good technical advice / explanation | - Good understanding of application code | |||||||||||
57 | - Has planned complex features or huge refactos (2-3 months, require planning ahead), splitting them in manageable chunks | ||||||||||||
58 | Monitoring / Incident | - Works with other squads to anticipate potential issues / create alignment | |||||||||||
59 | - Is autonomous on incident resolution, even for complex case | ||||||||||||
60 | - Has written great post mortem | ||||||||||||
61 | - Finds trade off between quick fix and clean fix to solve incident | ||||||||||||
62 | - Improves proactively security : mitigate security risk, communicate on security | ||||||||||||
63 | - Detects risks and pro actively take action to avoid / mitigate potential issues impacting QoS | ||||||||||||
64 | Quality: | ||||||||||||
65 | - Anticipates potential issues / create alignment | ||||||||||||
66 | - Is known to create almost no bug | ||||||||||||
67 | 5 | Leads team / impact others | Very experienced and skillful dev Has a global vision of the code and infrastructure and drives the technical improvement at the R&D level Always there for the tricky stuff | DevOps: | |||||||||
68 | - Has made an obvious impact on the company's technical trajectory | - Is a collaborator in a widely-used open-source project, or a main collaborator in a smaller one | |||||||||||
69 | - Is sought out for technical guidance, is the go-to person for their area of expertise when architectural choices need to be made | - Is a renowned stackoverflow user (or similar platform) | |||||||||||
70 | - Has debugged difficult issue, and is often called for help to debug the hairiest problems the team encounters | - Negotiates with multiple squads to push a refacto or a code improvement | |||||||||||
71 | - Drives the archi vision in the R&D: - Make architectural decisions to anticipate potential technical issues - Establishes a technical roadmap impacting R&D | ||||||||||||
72 | Monitoring / Incident | ||||||||||||
73 | - Does strategic choices to improve QoS | ||||||||||||
74 | - Is the go to person for complex incident resolution | ||||||||||||
75 | 6 | Company / Market | Superstar | - Makes technological decisions that impact directly the success of the company | - Writes blog article, speaks in event, is active in a community | ||||||||
76 | - Drives the R&D long-term strategy: - Able to predict accurately the big challenges to come in the next years - Build a vision with concrete actions to face them. - Has a track record of builiding a relevant and effective action plan | - Is a main collaborator in a widely-used open-source project | |||||||||||
77 | - Is an influencer inside the company: people trust them and follow them naturally when they start an initiative / a project | ||||||||||||
78 | - Has a good network of experts to consult on various subjects |