Hack hack hack...

An open journal-- some of it written for you, but most of it is for me.

Goal Setting for Devs

I heard you, goals are important. I get it. I’ve watched the Ted talks and read the zillionth article on the importance of goals. I understand the psychology and the physiology. I’ve got a dirty secret though. I haven’t been able to set goals for developers. We’ve tried KPIs and they don’t seem to filter down to the individual contributor level. When I ran our apprenticeship program two years ago I tried weekly goals, bi-weekly goals, monthly goals and quarterly goals. The problem was, the constants, the areas the goals could be clearly defined were mostly areas of personal development – writing blog posts, learning keyboard shortcuts, giving a lunch and learn, etc. I had a much harder time defining goals for them to improve in their core job function, namely contributing well built features and pushing good code.

Recently we took a shot at changing our criteria for hiring and job responsibilities to being value based rather than bring task or milestone based. This rubric broke down our company values into behaviors and defined the expectations for each level within engineering. The resulting document sat well with the team and I think we are gettng closer, but I still can’t help but feel unfortable about the subjectivity of how to define a good productive dev. What devs do is complicated, which makes promotions and evaluation complicated. I don’t care whether you wrote a blog post this week if you pushed a great feature. I do care that you helped someone else push their feature or jumped in on a tough bug when everyone pretended they didn’t see it. But how do I formulate concrete actionable goals around that? Anything I come up with feels so arbitrary.

When we tried KPIs for the engineering team it made sense to have goals around the product. But for individual contributors who didn’t have a choice about what feature they build or how the product evolves from a high level, I could connect them to the department goal in a meta way, but not on an individual basis. How could they be held responsible for the adoption success a feature set, for example, that they didn’t have much agency in designing or implementing?

The best I can do for goal setting is to pull out actionable points from our longer-arching conversations and hold them accountable on the things that matter to them both. It feels like there has to be something better, but I haven’t been smart enough to figure it out.