Author: Rich Liebling

  • Posted on

    Programming and Abstraction

    I want to share a few good articles I read in the last week on programming. The first two use Elixir and Erlang for their examples, but the concepts apply to programming in any language. In Don’t Repeat Your Domain Knowledge, Yiming’s main point is that the well known DRY (“Don’t Repeat Yourself”) principle applies most importantly to domain knowledge. More and more the community seems to recognize that taking DRY too far can be quite harmful.

    Read more...

  • Posted on

    Leading vs Managing

    What is Leadership? Too often people talk about managing and leading without being clear about what they mean. This can be particularly problematic when trying to mentor a developing manager. Managers have many responsibilities requiring a variety of skills and lack of clarity in our language can make it harder for managers to learn and improve. In this post, I want to discuss “leading” and “managing” as behaviors (or skills) rather than a particular job (eg “engineering manager”).

    Read more...

  • Posted on

    Bumper Cars or Go Karts?

    Which is your company playing? Does it feel like your company is playing bumper cars? In bumper cars, there’s typically an open area to drive with no particular direction or order to things. In go karts, there’s generally a track with a well defined direction. In the organizational analogy of bumper cars each person or team may have a goal in mind but they keep getting bumped off course by another team (or person) heading in a different direction.

    Read more...

  • Posted on

    About Me

    I’ve been leading software engineering teams since 2001. Prior to that, as an individual contributor I couldn’t stop thinking about how the team could be better managed, making it inevitable I would go into management to try to do it better. Fundamentally I believe software development works best as a team sport, which makes good leadership essential. That leadership is needed to ensure folks collaborate effectively as a team. I have many strong opinions on engineering, leadership and management.

    Read more...

  • Posted on

    More on tech debt

    In response to a discussion at work, i wrote some further thoughts on tech debt captured here. (See my earlier post Tech Debt Tradeoffs) Timeline/Context I want to help people explicitly consider the timeline for the return on investment. So, for example, if you are going to release your big project in 3 weeks, certain options will be off the table. But, if you have 3 months they might be clearly superior to what you’d do in the 3-week situation.

    Read more...