Skip Navigation

Advice for shifting into a software developer management role

I've thought it over, and I've decided the best next step for me is to shift from a software developer to a management role.

I've worked a lot of high stress, fast paced positions, mostly in R&D groups/companies, which I always excelled at. I now understand why I did well in that type of environment (undiagnosed ADHD), and how to be properly organized enough to perform in an SDM role (ADHD meds lol).

Honestly sitting in meetings for 30+ hours a week doesn't sound so bad anymore. Racing to get a lot of technical work done in a tight timeline now sounds miserable. I've had some amazing SDMs, and I'm confident I can be better at it than most I've worked under.

So: any and all thoughts, what books or resources would you have recommended to yourself, what companies or roles might be a particularly good fit.

5
5 comments
  • Read the old Dilbert strips to learn everything you should -not- do about being a manager 🤡

    Regarding skills, the most important is having keen ears and being good at **understanding **what people want. People might say or write something, but mean another thing, for any reason: malice, lack of knowledge, insecurity, etc. Document as much as possible when it comes to decision making. An email of "Go ahead with X" is the best defense you can have if the project blows.

    The manager needs to juggle the team under him and the avalanche of demands coming from elsewhere, so the pressure comes from all sides. The manager becomes "the face" of the team, so whatever the team does becomes his responsibility. The more you see them as a team to be guided/led, instead of servants to be ordered, the better your relation will tend to be with them.

  • In an allegorical sense, start dressing for the job you want.

    Part of that would be getting some project management training, but also start acting like a leader to Junior developers. Instead of just focusing on getting the job done, focus on helping them become better developers. Being in management is partially about being in meetings, but it's also partially about growing your talent and building relationships with your team and your customers. That's going to do one of two things, either it's going to prepare you to move up in the company that you're in right now or it will give you some ammunition to go for the job that you want in another company.

    • All that makes sense. Mentoring junior engineers is something I've always enjoyed, though I haven't had as many opportunities as I would like. I should mention that I don't have a job right now. Laid off from Amazon during their big layoffs earlier this year, though there's no way I could have been an SDM at Amazon. I would die.

      I see SDM as a combination of people management, project management, and tech leadership. The former is something I thought I could never do, but I no longer think that's true. But I would have to grow into it. The middle I don't see as an issue, though if you have any particular courses or books on project management I would love to hear them. The third is a nonissue, as I've done plenty of tech lead work. My main weakness in that area is delegating, though Amazon did help me a lot with learning how properly define and track work.

      I'm still struggling with what type of company makes the most sense. I was leaning towards more specialized SDE roles, but now I'm thinking that doesn't matter they just need a really good SDE -> SDM pipeline. Probably larger, more established companies? I'm not sure how to break this to 18 year old me, but I'm actually considering one of the gazillion fully remote Microsoft openings.

      • Gotta admit, young me got a lot wrong about what my future held. I'm glad he was wrong, because life wouldn't be that great if he was right about everything. :P

  • Try and get a good training on management.

    Don’t micro manage, protect your team, those under you need to be able to trust you and look out for them.

    Trust in your team and listen to their concerns. Managing people is about creating a positive environment where constructive criticism is welcomed.

    On most companies I’ve worked, the team is usually more aware of issues because they are in the trenches. You have to ensure that they have a good enough environment where they feel like they can improve things.

    As it is now in my current company, most devs started with a positive attitude and with a big urge to improve things for the wider team (not just their individual projects) and a year later nobody gives a shit about anything because management was not there to shield them from corporate bullshit. Now the work environment is crap and people are already looking to leave.

    This is just off the top of my head.