SMART Goals for Software Engineers

One of the big challenges I have found going into a management role is finding ways to help the people in my team develop their skills and their career.

I have done some research and have collated some of my favourite examples.

Design Goals

I want all of these goals to conform to the SMART criteria.

S - Specific

These goals must be clear and well defined. We all need to understand when the goal is achieved.

M - Measurable

I need to be able to pull some sort of metric from the goal which is not ambiguous.

A - Agreed Upon

I want to remain in-line with our agile priciples of personal ownership and that should include goals.

R - Realistic

Our primary aim is to see this person succeed! So the goal must be achievable in the allotted time.

T - Time Based

There must be a point in time when we can review and assess whether this goal has been completed.

Goal Categories

Technical Skills

Code Kata

Complete X number of code katas each month.

Goal completion:

  • Document the problem and your solution such that it can be referenced.

Answer Questions on a Technical Forum

Answer X number of questions on Stack Overflow each month.

Goal completion:

  • Document which ones you have answered.

Read Blogs

Read X number of blog posts on a particular subject each week.

Goal completion:

  • An article of your own on the subject
  • A lightning talk (10 minutes) to the team

Proof of concept

Write a proof of concept to solve an area on the current team’s challenge board. Complete this goal by:

Goal completion:

  • Demo the proof of concept to the team

Bus Factor -1

Ask a developer from another team to teach you an area of our codebase you have never touched.

Goal completion:

  • A lightning talk (10 minutes) to the team on that feature

Coverage

Increase the code coverage on a module by X%.

Goal completion:

  • Methods increased by X%
  • Conditionals increased by X%

Documentation

Take X number of badly (or wrongly) documented README.md files and document them correctly.

Goal completion:

  • Show X number of documented README on github.

Soft Skills

Mentoring

Log X hours of time mentoring another developer each week.

Goal completion:

  • A log showing the length of time, the other developer and the general skills you covered

Interviewer

Help us hire the next ace engineer by doing X number of stage 1 telephone interviews for the next hire.

Goal completion:

  • Document the people you interviewed on the telephone

Company Blogger

Write a well researched article for the company blog on a feature we have just released or that is on the roadmap.

Goal completion:

  • Published blog article

References

I have taken inspiration from the following places:


Photo by Ray Hennessy on Unsplash