Dave Boster

How Fascinating! \(๏◡๏)/

Engineering Leadership

After our small (but mighty) five-person software company, NewFire Group, decided to join a much larger organization with a matching vision and mission, it wasn’t long before I asked myself, “What am I supposed to do as a Development Manager?”.

What is it I’m supposed to do?

As a software developer and small business owner, I thought I had nailed down the essentials for managing a team of talented software developers.

  • We developed a great hiring process, based on the book “Who: The A Method of Hiring” by Dr. Geoff Smart and Randy Street.
  • We had established a career path and salary expectations based on ​the great work and generosity of Paul Stovell at Octopus Deploy.​
    • Note: while the original blog post is no longer available, Paul and Octopus Deploy still make public their Career & Compensation policies online in the Octopus Handbook.

I began to realize that what got me here, wasn’t going to be all I needed to get where I was going. It was a struggle, to say the least, but a starting point for something new. I was now part of an amazing organization, which emphasized trust and respect, servant leadership, transparency, and learning.

In the middle of this struggle, Dave Royce sent me a link to a video about Development Management. This one video has led to so many wonderful things. This amazing presentation has helped me frame my thoughts around development leadership at a large organization and discover the CircleCI Engineering Competency Matrix. Thank you, Dave!!

What Engineering Managers Should Do (and Why We Don’t) • Lena Reinhard • GOTO 2019

CircleCI Engineering Competency Matrix

At the end of Lana’s presentation, there’s a link to their CircleCI Competency Matrix. Lana describes in the article, “Why we re-designed our engineering career paths at CircleCI”, CircleCI Blog, 11-Dec-2018, how they had created the matrix three years earlier and had recently updated it to reflect their growth and lessons learned.

Two thoughts struck me:

  1. The level of transparency, generosity, and strategy from the CircleCI leadership team to share their matrix with the world (via Creative Commons Attribution 4.0).
  2. The sheer difficulty for any organizaton to create something and not just call it “good enough” and move on; to do self-reflection, iterate on what you learned, and then share it with the world.

I took both the previous Career Path & Salary Espectations paragraphs we had and the CircleCI matrix and I did a very humbling deep-dive into the very phrasing of each matrix level. Don’t let the briviety deceive you. Unpacking each sentence is like uncompressing a highly-efficient, and very large, archive file. It’s a lot of work and I found more humbling than reading and reflecting on The Programmer’s Oath, by Robert “Uncle Bob” Martin from November 2015.

side-note I highly recommend Uncle Bob’s most recent update, Clean Code Episode 45: The Programmer’s Oath.

Thought Backlog

An outline of additional thoughts I have for this topic that may get added to this post in the future.

  • Iterative process for introducing it, by facilitating discussions, learning, and reflection (encouraging skepticism and questioning).
  • Use as an individual developer to provide an employer agnostic career development guide or tool.
  • Onboarding Process - Iteration 3 (2023)
  • Boster.dev - thought transparency (show versions of thoughts iterated over time, change log, feed, etc.)

Onboarding Process - Iteration 3

Process

  1. understanding / learning / reflection
  2. self assessment
  3. servant leader assessment
  4. review / feedback / coaching
  5. individual development planning (team member-driven, leader-supported)

Details / Thoughts:

  • Provide a copy for personal use; feel free to use it throughout career in software (if useful)
  • Read through it, write questions down, research topics, and reconcile with current understanding and experience.
    • Sketicism is encouraged.
    • What do the words mean? What pictures do you see?
  • Schedule a 1-1 to talk through each competency.
    • Trust is important, otherwise they may feel reluctant to have an open conversation about what they know/don’t know, done/have not done.
    • This conversation is about establishing a relationship, connecting, and sharing knowledge both ways.
    • Important to share this is like a maturity model in that people in higher job titles may have some lower level compentencies and vice versa.
      • It all depends on individuals, their backgrounds, previous opporunities, etc.
      • This to help people grow and learn, not to demote them.
    • It takes a few meetings to get through it.
      • Plan for one program increment (1 quarter / 3 months).
  • Self Assessment
    • Highlight green for completed and yellow for areas of focus, but try to limit yellow to only 1-3.
    • Identify examples of what it means to have completed it or achieved it; consider proficiency vs mastery.

Year over year (only in second year of it), I’m helping document their growth in areas. It’s not about just checking a box, though, it’s about experiences and in some cases not everyone has the opportunity to level-up in a particular area.

[ development-management  competency-matrix  engineering-leadership  ]