Level 12
Communication
- Is able to express the same ideas to distinct audiences
- Does not rely on emotion to communicate an idea
- excellent ability to communicate status to all interested parties, including when the news is bad. Using a whiteboard to summarize project status is an excellent example of communication at this level.
- is active in user groups and meetups (but why is this significant?)
- regularly peer reviews others’ code
- gives feedback (Clean Code study group is indirect feedback)
Leading
- breaks things down into small steps that those less experienced can follow with ease
- is able to clarify expectations to find common ground with clients and colleagues without ruffling feathers
- sets examples (reproducible patterns) of how to work (does exemplary work)
- able to lead / motivate in challenging circumstances!
- Insights are similar to level 11 but perhaps with a bit more frequency and possibly more depth.
Learning
- tests new ideas by sharing inside company
- experiments (and documents results) like this https://css-tricks.com/radeventlistener-a-tale-of-client-side-framework-performance/
- writes the occassional blog post (as an exercise in organizing one’s thoughts)
- presents regularly at local meetups and conferences
- formalize your internal knowledge in an external format (get your knowledge out of your brain)
- Seeks to understand the roles and responsibilities of others to try and find ways to make them more successful
Ownership
Fully owns a project (consisting of multiple developers)
- (Always) Identifies who will work on the project and what they will do. This could be the result of consensus or a decision by a single person
- Is (always) reponsible for QA on the project (which means you will choose the QA processes that will be followed and will make sure the process get followed, that the code passes QA)
- Communicates regularly with the PM / Client on project progress and risks
- Anticipates potential issues with the code or solution and plans work accordingly (ex.: internal IT department of client has to approve everything. In response, estimates include extra time for fixing issues spotted by Sonar reports. Ex: Client states they do not need to rank well in Google. In response, we still follow best practices and estimate and price accordingly so that 6 months down the road when Google does matter, the work is already done.
Technical
- Solves tasks in a way with some consideration to a big picture
- Sees the big picture purely from an intermediate developers perspective
- Able to articulate pros and cons of various solutions to any given problem
- Keeps up with the latest tech and wants to use it
- Has a good idea about best practices
- Usually hates working with legacy code because it doesn’t always resemble their idea of best practice
- Starting to have some ingrained habits - good and bad
- Understands that code they write is optimised for something but is not necessarily able to decide what it is best to optimise for