Posting some general questions to get this community going…

I recently moved from a software architect to an engineering manager position after I was asked by my company leadership a few months ago. Mixed feeling about the move. I really like technology and being deep into the code but I am also pretty good at being a manager.

Anyway, why did you make the jump? How has it been?

  • absurddoctor@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    At a previous company, one day the owner setup a meeting with myself and two other colleagues and said “You three are now management”. Until then there had been no official management beyond the two brothers that owned the company, but the three of us had taken on informal leadership roles, so it made some sense. This change came with no additional compensation, no training, and no particularly well defined plan on what the change meant. I really enjoyed the work we did, and I had an inexpensive life style so I hadn’t cared that much about the low compensation up to that point. I didn’t have kids and didn’t expect that to change, so I didn’t make noise about increased compensation. I’m still not sure if that was really a mistake, but not making noise about training definitely. I was confident in my abilities to figure things out along the way. That’s a terrible approach when it comes to managing other people, because those other people get to pay the price while you are learning on the job. That is inevitable to some degree, but the price was much higher than it had to be since I made a lot of avoidable mistakes.

    Eventually an opportunity came up for a development position at another company and I jumped on it. It was another small company, and I was essentially a team of one reporting directly to the owner. Being only responsible for myself again was awesome! The increased compensation was also awesome (by now, I had kids and needed to care more about financial issues for their sake). After a few years it was decided that we needed to expand the team quite a bit; by then a second person had changed teams to work with me. There wasn’t really anyone else in the company in a position to take over growing and managing the team, so I was given the choice of helping to bring someone in from the outside of taking on the role myself. I have been involved in a few cases where a new management position was created and someone was brought in from the outside, and it has never gone well, so I chose to take on the role myself (That isn’t to say bringing in someone from the outside will always fail, that has just been my luck so far, and I wasn’t sure I had learned enough in those situations to prevent a similar failure here).

    I think it’s been a bit over two years now and things seem to be going well. I think by typical standards it is somewhat of a hybrid role; I still get to do some development work, but I try to delegate anything that is likely to require larger chunks of focus time, since that is hard to come by now. I handle all of the people management and the project-management type work. It’s great to see lots of things that I wanted to do actually getting done, and the tinges of ‘sadness’ that I didn’t do them directly myself are becoming more and more rare. It feels weird now when I run into parts of the codebase that are team is responsible for that I don’t know much about; I end up feeling a strange combination of frustration and pride. Frustration that I don’t know everything, and pride that the team can implement things with little to no input from me. I’m not sure either emotion is really appropriate but here we are.

  • invicticide@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I was frustrated by certain aspects of how my team was run, so when that position became available, I applied for and moved into it, thinking I could make some changes that would make the team function better.

    I did make some of those changes and they have helped, but I’ve also found it really challenging to carry responsibility for delivering things that I can’t work on directly. I used to solve problems by writing code; it’s much different to solve problems by coaching people.

    I do have stronger relationships with my colleagues now, since I spend more time communicating with them vs. being head-down in code all the time, and that’s kind of nice, but I’m definitely missing the hands-on work