I’ve been living a split life for six months now.
At my day-job, I am a manager. I have to track schedules, work with programmers, plan, cajole outside vendors, project future usage, and defend project priorities. It is new for me, at least as a full-time thing, and I enjoy it. From the reactions of upper management, I am pretty good at it as well.
On the side, I develop websites for clients. I don’t usually run the project management portion of this, preferring to simply program, working closely with my partners & clients.
A unique position for me
This is a unique position for me because as a rule, I have not been able to both manage and program. The mindsets are too different.
I need a clear separation of responsibilities and time in order to reset myself into the other mindset. I’ve tried mixing the two before, but it just doesn’t work for me.
The reason it doesn’t work for me is due to the very nature of the programmer mind, I think. When I am programming, I just don’t see managing as “real work”. I find myself thinking, “I’ll fit that non-work in later, when I’ve solved this interesting problem here.” Or I think, “That (management stuff) can slide, it isn’t relevant unless the work gets done.”
Sound familiar to you coders reading this?
One interesting observation I’ve made is that if I am managing, I can have a task list a dozen items long, and I’ll tick off each one of them. I’ll call the people needing calling, and I’ll email the people needing emailing. I’ll plan, write and think through the items on my list.
On the other hand, if I am programming, then that’s what I do. I can have just one important personal or business phone call to make and it will almost certainly not happen. It just doesn’t occur to me, or if it does, then “I’ll get to it in a minute.”
I always thought I was a bad planner
I’m not, I’ve just almost always been a programmer, and so that way seems natural to me. If it isn’t in front of my face, if I am not actively interrupted, I am probably not going to do it and break my “flow”.
What I’m learning
I can do both, I can plan and I can program. I just can’t “timeslice” as closely as my egotistical programmer brain would have me believe. I can’t just take five minutes to catch up on that manager crud. I need to have a block of time, I need to get into the same kind of “flow” I’d get into as a programmer. It just doesn’t feel the same and so it took me months to figure this out.
I’m also learning, by seeing it up close in my manager role, that programmers can be the most arrogant sons of bitches I know outside of lawyers. We’re just quieter and less eloquent about it.
For the most part, we really do believe that we could do ‘most anyone’s job, we just don’t want to do so. The funny thing is that (we) managers know this, and for the most part we tolerate it with amusement. It keeps the coders happy and it doesn’t hurt anything. We just don’t let the ones with the biggest egos talk to clients without careful coaching.
Newsflash. (This is as much to me as to anyone reading this) Just because you can program a thing doesn’t mean you can do the job better than people who choose that as their focus. It means you can help, nothing more.
Technorati Tags: programming, coding, management, philosophy, life lessons
















0 responses so far ↓
There are no comments yet...Kick things off by filling out the form below.
Leave a Comment