Sunday, March 27, 2011

Tell me more about this marbles analogy...

Sure. And please note its not that I'm calling the folks on my team a bunch of marbles. Rather, the marbles are the issues a manager has to deal with every day. The point is, there's no focus on one single thing, like there is for an engineer. A manager has to be able to deal with a little bit of everything, and context switch almost constantly. One moment you're advising product management on the feasibility of a new feature, and the next you're deciding if a bug should be fixed or deferred, or being asked for advice on a topic you may know little about. Then, you've got recruiting to do, performance reviews to think about, and perhaps an action item or two you took in your last meeting. Sometimes you're reacting to a fire, and other times you're thinking proactively about change. For the manager, responsibilities are all over the map.

For the engineers that you manage, it should ideally be the opposite. Their job is to take on a coding project and get deep into the weeds with it. The more minutiae and boring (in their mind) meetings you can shield them from, the more the good engineers will thank you, and the more productive they will be. They don't want to be discussing the requirements...they want to be coding them.

If I were to title a different blog about the mindset of an engineer, it might be called "Getting the real work done." In fact, letting go of that mentality, that feeling of "I'm not being useful unless I'm coding," was one of my biggest struggles when I transitioned into management, but that's a story for another post.

Saturday, March 26, 2011

About Loose Marbles...What's with the name?

Loose Marbles is a blog about my experiences as a software engineering manager. Throughout my career, even when I'm not looking for a new opportunity, I'm always thinking about the experiences I'm having on the job, and specifically how I would talk about them when asked in my next job interview. In part, this is because I'm not very good at thinking on my feet, so I prefer to anticipate questions and have an answer in my pocket. But also, I just feel that constant introspection is a good learning experience. We should always be thinking about the takeaways from our experiences as they happen, and recording them in "permanent storage". A perpetual post-mortem, if you will.

So the first question I expect to be asked in any future interview is "What does management mean to you?"

I'll answer with an analogy: "Its like somebody dumps a bag of marbles on a flat table, and your job is to make sure none of them rolls off the edge."