Monday, October 31, 2016

Software developer on steroids - Level 2

Getting from a Jr. Software developer to Software developer Level 1 might have seemed like a long way to go but this is just the first step for a Software developer career in ApexSQL and all the future steps have even steeper learning and growth curve

If you've certified as a Level 1 dev then it means:
  a) You've been working in a fully functional team the company can rely on
  b) Have been a leader at least for a specific task or a goal within the team to carry your own weight
  c) Have gained enough experience with how we work and have already mentored other colleagues or can do so now
  d) You've grown and developed your hard skills just enough so that for any new challenges you encounter you already know how to approach resolving them even when it requires more learning
  e) You are successfully saving time to stakeholders and are working with them vs. working for them or thinking there is us-and-them

Time period

How long will it take to get from the day 1 in ApexSQL to a Software developer Level 2 will depend on each person individually - if you started as a Jr. Software developer (Level 0) then you'll need at least 3.5 to 4 years to be able to check off all of the items below

No regression

The first expectation is that you constantly confirm the level you're currently at which means you don't regress by no longer doing the work you were successfully doing before, or by doing it slower (i.e. you caught lazies)

If you had regression in your performance then it is critical to first make sure you get back on track and have consistent high performance of at least 3 or more months in a row - not doing so risks actual regression back to a Level 0

Soft skills + 1

When doing a Level 2 values review expectations will be one step higher than those for a Level 1 performance review

If you had a "Needs improvement" score for any of the values but have still managed to certify for Level 1 then those values if not improved in the meantime will read as "Unsatisfactory" during the Level 2 review which is a showstopper

If you had a "Meets expectations" score for a value then you need to have displayed consistent or improved values match in order to keep reading "Meets expectations" for the Level 2

Hard skills++;

Jr. Software developers can best testify the amount of new development knowledge and skills gained when going from Level 0 to Level 1 - the same goes for a Level 1 dev aiming to certify as Level 2

Each team has a bit different hard skills requirements depending on the owned product set so the only common metric here is how have those hard skills helped you be more efficient during work

Success = results / time;

The better hard skills you gained then you'll contribute to your team with more results over less time

Value added time saver

Can you confirm all of this:
  1) Are you self-sufficient enough so that others don't need to "manage" you by asking questions and giving directions / frequently correct you
  2) Do you communicate proactively and in an actionable manner with the stakeholders / no surprises caused by you and your team
  3) Do you educate stakeholders and provide suggestions and guidance yourself
  4) Can you be a role model for all Software developer Level 1 peers

Achievements

Additional information we should put on a table before starting the perf review for Level 2 is the list of achievements you can brag about since you've certified for Level 1

If you don't have anything exceptional to show for as a Level 1 dev then how can you justify you have earned the next level

This is also a great personal litmus test you can do for yourself before reaching out - are you able to provide a list of at least three achievements that you are proud of during your Level 1 tenure?

But don't say that i.e. you're proud of showing up for work every day or that you've managed to complete 3 sprints in a row as these are just normal everyday expectations so you won't be doing yourself a favor

For example:
  a) Took initiative to build a component / engine / feature which helped the team by ...
  b) Improved communication of the team with the stakeholders
  c) Helped the team achieve PUQ superiority by fixing X bugs in Y time / by improving performance by x% / by identifying and fixing usability issues
  d) Mentored new colleagues so that they have achieved ...
  e) Suggested [and helped implement] a feature / functionality that directly helped with Platinum goal
  f) Successfully managed X subcontracted projects
  g) Worked with team SEs to ensure uninterrupted team content flow
  h) Took ownership of a standard and helped everyone enforce it

Also such achievements are good to have but aren't the ones we're looking for:
  a) Learned to write thread safe code like a boss - good for you
  b) Read 3 books on design patterns - congrats
  c) Went to a .NET conference - nice
  d) Learned angular / js / css - great if it'll help you get the job done, but the focus is on the achievements that are "done" and have directly helped with your team and the company goals

No comments:

Post a Comment