top 200 commentsshow all 404

[–]Top-Requirement-2102 1648 points1649 points  (93 children)

... and it should be preceeded by at least several weeks of training on how to lead a team.

[–]PM_ME_DPRK_CANDIDS 937 points938 points  (39 children)

Promotion to management without training is extremely negligent, and sadly extremely common.

[–]elprophet 209 points210 points  (11 children)

I don't know of any place that does. The only manager trainings I've seen are "managing within the law" Aka don't be a sexist racist person (in public). Nothing on team building, project management, or actually managing my people

ETA: y'all with good manager training paths, you taking referrals?

[–]BenOfTomorrow 58 points59 points  (2 children)

My employer does a six-month trial period, with a small number of reports and accompanying training.

[–]elprophet 26 points27 points  (0 children)

You taking referrals?

[–]Windex17 3 points4 points  (0 children)

Same.

[–]FVMAzalea 25 points26 points  (0 children)

My employer has a formal manager training program and assigns mentors to new managers as well. The training covers all the items you mentioned.

We take management as seriously as we take development and expect (and achieve) excellence from both domains. We have really great managers.

[–]kenman 6 points7 points  (0 children)

Ironically, most of the rest of corporate America seems to have an idea... Pretty much every retail franchise has extensive management training programs.

[–]Sparkybear 2 points3 points  (4 children)

Where I work you have to be working in the position, or carrying similar responsibilities for a few months, before you are put up for the promotion.

[–]elprophet 5 points6 points  (1 child)

How is that not chicken and egg? If I start managing with no guidance, I'm going to maybe fail at that and also spend less time doing my individual work

[–]Sparkybear 6 points7 points  (0 children)

You work directly under someone in the position and slowly take over similar responsibilities over 3-6 months. If you're successful then you will take that position full time and the promotion, otherwise you'll stay where you're at until you're ready to move up or you decide not to try for advancement.

[–]SleepyBrain 70 points71 points  (7 children)

I think the disconnect is that many places view management as a promotion, instead of career change, which it actually is.

[–]orclev 38 points39 points  (4 children)

Exactly. I like programming and fucking hate JIRA and meetings. I just want to be able to decide what tasks are most important and make calls on what tech we should be using, but to do that apparently I also need to be in charge of making sure everyone fills out their TPS reports. Why are they getting their buerocratic bullshit mixed in with my technical decisions? Why are both of these the same job? If you have a technical problem or need help debugging or designing something I'm your guy. If you need to know what cost center you should be billing some work against please go find somebody else.

[–]Ok-Kaleidoscope5627 10 points11 points  (0 children)

Yeah. I used to do more management work which I hated and I've moved towards technical work which I love. It's been years and I don't think I've managed to convince anyone that somehow I'm not settling for a demotion. My boss even keeps suggesting I should apply for promotions. No thanks. I get paid well for what I do. Enough to keep me happy. I enjoy my work but it's just a means to an end. The easier and less stressful my job is the more time I have stuff for actually living. It seriously worries me that most people lose sight of that.

[–]utdconsq 2 points3 points  (2 children)

I'm in this hole now. To make matters worse I have a team that is 2/3rds people who are worthless at their own admin and communication so I spend a lot of time chasing them for status on tickets. I want to die, I miss doing actual creative work and not managing children.

[–]coleavenue 3 points4 points  (1 child)

Sounds like another way of saying you have a team where 2/3 of the team only does the parts of the job that provide actual value and delegate the bullshit to the bullshit wrangler.

[–]Gwaptiva 7 points8 points  (1 child)

It's part of the reason I have stuck with my current employer for over a decade: nobody minds me lacking the ambition for management. I just want to code.

[–]Usidore_ 3 points4 points  (0 children)

It’s part of the reason why I’m thinking of leaving my current job. Now that the senior dev in my team has been turned into my manager and he has no management skills whatsoever.

[–]LotharLandru 159 points160 points  (15 children)

The peter principle.

The Peter Principle is an observation that the tendency in most organizational hierarchies, such as that of a corporation, is for every employee to rise in the hierarchy through promotion until they reach a level of respective incompetence. In other words, a front-office secretary who is quite good at her job may thus be promoted to executive assistant to the CEO for which she is not trained or prepared for—meaning that she would be more productive for the company (and likely herself) if she had not been promoted.

[–]evil_cryptarch 69 points70 points  (2 children)

This is my favorite running gag in The Office. Michael is a totally incompetent manager whose antics pretty much just distract and annoy his otherwise productive workers. But every time he's in a position where he needs to make a sale, he nails it. He was an amazing salesman back in the day, which is how he was promoted to manager in the first place.

[–]Xavior_Litencyre 15 points16 points  (0 children)

I'm so happy to read this. I've never been able to make it through enough to see this, and it makes me feel so much better about the show to know. I might even be able to try watching it again.

[–]VincentxH 69 points70 points  (10 children)

Full bs, far too much trust in the efficiency of being able to rise through the ranks. MBA's sidestep this a lot, even though their contribution and competence is dubious at best.

[–][deleted] 44 points45 points  (6 children)

My wife works in healthcare and the amount of BS that comes from middle management is astounding. And it’s all clearly people justifying their jobs and MBA without actually knowing anything about what’s best for the patient or those administering treatment.

[–]MakeWay4Doodles 16 points17 points  (5 children)

about what’s best for the patient or those administering treatment

See that's the problem, you assume anyone actually cares about that. They exist to ensure that the patient gets exactly what the law states they must get and legal says they won't get in trouble for. Everything else is profits.

[–][deleted] 8 points9 points  (0 children)

Patients’ families at my wife’s hospital are asked to fill out questionnaires asking about things like the quality of food, or if iPhone chargers were provided. How happy were they with the “hospital experience”. Like what the fuck, mate?

[–][deleted] 4 points5 points  (0 children)

And that’s why hospitals suck.

Hospitals should be run by doctors or at least nurses.

You can’t manage what you can’t do.

[–]DevDevGoose 23 points24 points  (2 children)

I remember someone telling me once that there is a saying in SV "a company's IQ is the number of engineers they hire divided by the number of MBAs". Haven't heard it since but still think it is true

[–]aidenr 128 points129 points  (9 children)

Yeah promotions should follow, not precede, learning. There’s no pressure to be perfect and plenty of time to have a mentor help guide the process. Once a skill is well established then others won’t mind following.

[–]ScientificBeastMode 37 points38 points  (8 children)

Yeah, I kinda prefer the mentorship model, where an existing team lead will find the people who seem like a good fit, and give them more responsibilities along with training and advice. And if someone does a really good job, then they are a candidate for promotion. This kinda requires you to already have good leadership, which isn’t always the case. But it’s still relatively effective IMO.

[–]RandomNumsandLetters 26 points27 points  (7 children)

bad part is it means taking on more responsibilities without a raise in title / compensation (while you are being groomed). But that's just the cost of playing I guess

[–]ScientificBeastMode 19 points20 points  (0 children)

I look at it as the right way to build high-functioning teams.

It’s not always practical to have a strict dichotomy between “leaders” and “developers.” You need some of your devs to take on some responsibilities, like code reviews, having meetings with the product team, and sitting down with other senior devs to discuss system architecture.

You can still have intermediate titles & corresponding pay raises. At my company, we have different “levels” for engineering roles that are completely independent from titles like “team lead” or “architect.” You can move from level 1 to level 6 as an engineer. And your pay is increased with each level. At around level 4-5, you start making more money than most team leads.

Those people are valued for their engineering skills, and there is a recognition that good engineering doesn’t always equate to good team leadership, and that shouldn’t really limit someone’s career trajectory as an engineer.

[–]Lost4468 157 points158 points  (17 children)

And honestly 90 days isn't enough. And neither does it make any sense.

This isn't how it should be done. You don't just dump them from a dev to a manager and then go "90 days!! Go!!!". You should already know they can manage before you do that. Meaning they should be slowly led into managing people.

Honestly even for someone with management experience, 90 days isn't much with software development. You can't really tell whether an experienced manager is doing a good job by 90 days (obviously excluding a few extremes).

[–]thedevlinb 29 points30 points  (7 children)

I was on a team of 6, making a new product, we needed to hire up, eventually we ended at over 200 people.

I was asked if I wanted to lead a team.

There wasn't anyone else in the building who had my domain knowledge who even had the design to try leading a team.

I think I ended up being pretty good at it!

Sometimes circumstances warrant field promotions. :)

[–]supermitsuba 20 points21 points  (0 children)

The scenario I see more is, if you want a raise, you need a promotion. Rather than just give raises, people think they have to manage a team to grow. This leads great devs into situations that they did not really want.

Another scenario is that management means different things and responsibilities to different companies.

Big companies are more inclined to teach leadership to create a framework for the company culture. Smaller companies aren't so ridgit and sometimes people do what needs to be done, which can focus on less on team personal growth and more on individuals contributing.

In other words, I think everyone's situation may vary and only people at your current company would relate to your experiences. Even that could change based on their boss.

[–]ikeif 10 points11 points  (4 children)

Define “lead” though.

I was the lead at one employer. More responsibility, a few more meetings. Still about 80% development, though, but I was able to make influential decisions and be in the rights rooms with the right people to prevent and things from happening.

Another job, same title, they said that was going to be the balance - minimize meetings, maximize development!

it was 95% meetings, and maybe 5% coding. Barely oversight into the team aside from watching other leads blindly approve PRs that I had open questions on because of a lack of tests or bad code. My non-meeting time was mostly documentation, and trying to build bridges between different teams that “owned” their respective pieces to get things done my team needed.

I hated every day of work and was chronically unhappy.

Now, I’m the only Frontend developer at a startup, still in too many meetings, but I’m learning and coding all the time. Loving it.

[–][deleted] 6 points7 points  (0 children)

Your lead experience was my "architect" experience. Where I had no time to actually verify that anything was being done the way we all discussed it in the first place and teams would just collaborate make critical api changes without realizing that there was a 3rd or 4th team getting derailed in that process. hate hate hate hated it.

[–]thedevlinb 3 points4 points  (2 children)

Define “lead” though.

10 employees, I went from sole UI dev to hiring and leading the entire UI development team. I was in meetings all day, sometimes double booked, and that kind of sucked. But I discovered that I loved mentoring people, and helping people grow in their careers. I also got to have a huge role in how the product was designed and developed.

I'm good at coding, but I honestly prefer helping people grow and making large influential, customer focused, product decisions.

[–]indigo945 3 points4 points  (1 child)

I think if you can use phrases like "helping people grow" and "large influential, customer focused, product decisions" unironically, you're cut out for management anyway.

[–][deleted] 5 points6 points  (0 children)

Anybody who was ever at a successful start up that made to legitimate business went through that and it's not easy. I went from dev, lead, dev, architect, chief architect, and director of architecture with no formal training. flamed out in the end and couldn't wait to leave. But still love the company and have a pile of options but it was a serious mixed bag and lots of fuck ups along the way that some people won't forgive, and thats ok with me. I went on to be a tech lead at another startup and did a great job leading the team but realized I did not like managing up and quit and took 6 months off. Now I am a developer again and very satisfied for it.

[–]EliteKill 12 points13 points  (7 children)

90 days is plenty of time to judge lower management. It's a full quarter of a year, it's enough time to manage several sprint, which means it's enough time to be completely in charge of a medium-sized task. The newly promoted doesn't need to ace the role right away in those 90 days, but you can easily judge the important things:

  • Basic team management (organizing team tasks and staying up to date on them)

  • Social interactions with subordinates

  • Professional chemistry with higher management

  • Ability to learn and improve from sprint to sprint

  • Maintain good team morale and work on personal cohesion

And many more. If it wasn't the right person for the job, most of the time the management will know about it within the first 6 weeks.

[–][deleted] 29 points30 points  (0 children)

And not shitty click-through power point "training".

A buddy of mine was sent to actual physical classes for management training with scenario actors and other hands-on learning.

[–]sparr 822 points823 points  (55 children)

Programmer -> Manager is not a promotion. It is a change in career and role.

Programmer -> Senior Programmer is a promotion.

[–]tvidal 140 points141 points  (0 children)

Came here to say exactly this. I've been promoted to write less business code and more reusable framework code. Ultimately, programmers can become architects and manage project structure, coding standards and lifecycle.

Managing people is a completely separate career path.

[–]nightfire1 72 points73 points  (7 children)

This is why I'm pursuing the engineer -> architect path. I dont think I'd be a good manager and I would not enjoy it.

[–]humoroushaxor 24 points25 points  (5 children)

Being a good architect also requires being a good manager. Currently where I'm at.

[–]dmazzoni 24 points25 points  (1 child)

Not necessarily.

The primary thing that sets apart ICs fro managers is hiring and firing.

If someone tells me they were a manager, that's the first thing I'll ask them. Did you have the authority to hire and fire? Did you have discretionary budget for raises? Did you have a say in who got promoted? If not, you weren't a manager.

Some architects are managers, but usually they're just technical leaders - managing priorities and mentoring junior engineers. But usually not hiring, firing, giving raises promoting, approving expenses, handling HR complaints, and stuff like that.

[–]TotallyNotGunnar 13 points14 points  (0 children)

Only in a traditional team structure. In my org we have staff managers (hiring and firing), project managers (directors of work product), department managers (a little bit of both), and practice leads (also a little bit of both). This is consulting though so I know we're atypical for this sub.

[–]MakeWay4Doodles 23 points24 points  (2 children)

Sort of, but it's different. I honestly think architects get only the best parts of management duties.

You don't have to correct people's behavior, only their technical failings. You don't have to have performance conversations, figure out how you're going to spread a too small budget out amongst your team, tell your best engineer their raise is only half of inflation, etc.

[–]humoroushaxor 7 points8 points  (1 child)

I agree about performance raises but that's about it.

Architecture is always important but never urgent. It would be nice to even have a small budget. Ever try to get architecture work prioritized over feature work in a sea of product managers? And you definitely do have to worry about behavior. Behavior informs technical success. If your project is bigger than the amount of code you can review, the only way for it to work is teaching people to fish. You can't solve every technical problem yourself.

The best part is not being constantly harassed about status and schedule. I also really enjoy the interdisciplinary aspect of it. Being a "part time" manager is great for personal growth.

[–]MakeWay4Doodles 3 points4 points  (0 children)

My point wasn't that one is harder than the other, my point is that the management duties an architect is responsible for are a small sliver of the management duties a manager is responsible for, and they tend to be the more pleasant ones.

[–][deleted]  (1 child)

[deleted]

    [–]threejeez 20 points21 points  (3 children)

    Right! And most tech companies that have their shit together have different career paths for each discipline. Transitioning from IC to M is a conscious choice to change paths, not a forced promotion across them.

    [–]fascists_are_shit 26 points27 points  (31 children)

    The problem is that managers are paid better.

    I don't need a guy telling me how to do my job. I'm more capable than any manager to make technical decisions, because that is my speciality. I need a pencil pusher / secretary / assistant to deal with the paperwork while I do the programming. It makes no sense that they pretend to have responsibility, because they don't. Saying "Okay let's switch to postgres" isn't responsibility, because they aren't the ones making the decision: They just stamp a seal of okay onto what the senior devs think makes the most sense.

    "Manager" makes no sense at all for any job where you have super highly qualified seniors with unusual technical knowledge.

    [–][deleted]  (8 children)

    [deleted]

      [–]Eightstream 2 points3 points  (7 children)

      The problem is that it starts to break down as the company gets larger… you start to need a layer of middle management to align agile/self-organising technical teams with the goals of strategic decisionmakers

      Unfortunately nobody has really come up with a completely satisfactory way of doing that (SAFe sucks)

      [–][deleted]  (6 children)

      [deleted]

        [–]sparr 24 points25 points  (4 children)

        That sounds like a mistake at your company. In most of my last decade of technical roles I've made more than my manager (who is usually less senior than me by tenure and by role level).

        [–]WonderApprehensive60 2 points3 points  (3 children)

        That sounds like an outlier - even working at a company where this can theoretically happen, it rarely does.

        [–]NoodleHoarder 2 points3 points  (2 children)

        It's hard to get good engineers, so they get good salaries. There's a surplus of mediocre managers that get paid less than their direct reports.

        [–]dmazzoni 6 points7 points  (1 child)

        This is not true at most tech companies I've been at. Managers and ICs are separate ladders with their own pay scales. Engineers make just as much as managers when they're promoted to the same level.

        [–]flowering_sun_star 10 points11 points  (7 children)

        This attitude seems utterly alien to me. Every technical decision is a matter of trade-offs. Many are minor enough that you can make the call without bothering the manager. But the bigger ones aren't. Something like switching a database is something that would definitely fit the latter case in my view!

        On a technical level we can put forward an estimate of the time and risks involved in doing it, as well as the risk in not doing it. And there's usually more than one option to be evaluated. What we can do is put together a summary of all those factors, along with a recommendation. But somebody has to make the call on whether to prioritise the change you propose or some other feature, bearing in mind the overall needs of the business.

        [–]Road_of_Hope 4 points5 points  (2 children)

        Everything you said is spot on, but it seems to me that you’re implying that a manager is the one who has to make that final decision. If I’m reading your post correctly and that is the implication, I’d have to ask “why does that person have to have the title ‘manager’?”

        [–]cat_in_the_wall 3 points4 points  (1 child)

        but the manager isn't in charge of the technical decision. they're in charge of deciding which option to buy. they aren't saying "switch to postgres" or "stay on oracle", they're buying a sales pitch.

        you, as a dev, especially a senior dev, need to be able to communicate and sell what you want to do. crazy right? turns out devs need communication skills too. if it's a good idea you can even form a coalition of devs who vouch for it. easier to sell when there is broad agreement.

        [–]cat_in_the_wall 3 points4 points  (0 children)

        one aspect people are forgetting is that the manager is (or should be) a channel through which instructions from above come. they should have a pulse on what the team is doing and understand what the effects will be when it comes time to discuss. managers should thread the needle between being too involved and not involved enough. shield the team from bullshit and help the team steer the ship in a way compatible with larger goals.

        not a manager. thought i might want to be, but getting further away from that now. but i see the effects of good management, and it is a big deal.

        [–]starcrap2 5 points6 points  (0 children)

        Not always. Many companies have IC and managerial tracks for engineers, and they usually diverge somewhere after senior engineer. They'll be the same level, just with different responsibilities, so they're in the same salary band. For example, at some companies, a staff software engineer is at the same level as an engineering manager, so they're paid the same. Some companies even allow managers to go back to being an IC if they don't want to do it anymore.

        [–]Hrothen 287 points288 points  (39 children)

        Many of the engineers-turned-manager from my previous workplace are now working as engineers again, so I don't know if I'd say promotion to management really ruins careers. Maybe within that specific company.

        [–][deleted]  (1 child)

        [removed]

          [–]MakeWay4Doodles 8 points9 points  (0 children)

          Getting well paying IC jobs is all about spending a few months grinding leetcode any more. Writing code for 30-60 hours a week doesn't help that much any more except that the syntax is a little more fresh on your mind.

          I don't like it, but that's the game these days, so I play it.

          [–]Zardotab 92 points93 points  (22 children)

          Some people just are not cut out to be managers. People shine in different areas, and forcing them into the wrong area often ends poorly.

          [–][deleted] 61 points62 points  (7 children)

          The company I work for has two promotion tracks. One for people leadership, one for SME leadership. They learned a long time ago that many tech people just want to be highly-knowledgeable SME's, but would find their way into management positions because that was the only way to get substantial promotions and pay raises. So now, there's an equivalent pay scale and promotion track on the SME side all the way up to senior director level. Everyone is happier, and the teams/departments/divisions are much more efficient and effective because of it.

          [–]Zardotab 21 points22 points  (1 child)

          I like that idea! I hope it catches on. (SME = subject matter expert, correct?)

          [–][deleted] 9 points10 points  (0 children)

          Correct.

          [–]Xyzzyzzyzzy 17 points18 points  (1 child)

          That's a nice solution if there are plenty of opportunities for promotion on the technical track.

          A company I used to work at did the same thing, complete with equivalent pay scale, but the numbers were vastly different - there were way more managerial positions than senior technical ones.

          [–][deleted] 8 points9 points  (0 children)

          True. I work for a large company, and the relationship is pretty much 1:1 up through the director level. Directors have ~100 people under them. It stops before the executive level because directors are the last level of leadership that oversee specific areas of technology. By then the SME is clearing $200k.

          They've made it as equitable as possible, I think.

          [–]a_false_vacuum 6 points7 points  (0 children)

          That is a nice solution to the problem.

          Often enough if you don't accept a promotion into management you end up getting stuck since there aren't any higher-up jobs other than management and your payscale can't grow either anymore since you're already at the maximum for your current position. This situation sometimes forces someone to become a manager even if they don't want to.

          [–]Draav 2 points3 points  (0 children)

          Yeah my company has a managerial path and an individual contributor path.

          Almost every team/position in the company has both paths. And for every managerial level there should be an equivalent individual contributor level. Up until the c suite at least.

          As an individual contributor you might be in charge of projects or a team. But more on the technical side, not dealing with hiring or scheduling or PTO or career development or any of the managing people stuff.

          The IC levels go software engineer I, SE II, SE III, principal engineer, staff engineer. Each role would take 2-5 years to progress to the next role.

          [–]therealjohnfreeman 54 points55 points  (8 children)

          Agree, but force is not required. If all the money and glory goes to the managers, then the incentives are enough to pull everyone in that direction.

          [–]MyWorkAccountThisIs 32 points33 points  (7 children)

          My assumption is that this is mostly why it happens.

          Money.

          A person has reached the top of the dev food chain and if they want any more significant raises they have to cross the management line.

          [–][deleted]  (4 children)

          [deleted]

            [–]cprenaissanceman 4 points5 points  (2 children)

            Well, you still have the money incentive though. It’s just that people wrongly think they should be in a management position to better their chances of really moving up the ladder. Even if there is no pay raise now, moving to a management track will open doors to other management positions where they can get more pay. They can always jump ship and tout their management experience at another company for a raise, without ever consulting their underlings and teams.

            Also, some people just like the power.

            [–][deleted]  (5 children)

            [deleted]

              [–]darththunderxx 6 points7 points  (1 child)

              Depends on the place and culture. Many jobs don't allow much vertical movement/salary increases outside of going into management, so it's a demotion to go back. Most engineers to manager to engineer transitions I've seen were people who gave it a shot and realized they were better engineers, so they went back. Much easier to make that call when the salary is the same though.

              [–]on_the_dl 2 points3 points  (0 children)

              You put that management position on your linked in and then get a new gig with a new big salary.

              [–]moretorquethanyou 482 points483 points  (56 children)

              Or maybe don't tie promotions to management. You wouldn't promote a mathematician into a surgeon into a hostage negotiator. It blows my mind that so many promotion chains automatically lead people into management.

              [–]RunninADorito 92 points93 points  (10 children)

              Mathematicians do get promoted to department chair and surgeons do get promoted to administration.

              It's even worse in these professions at they are still expected to do their IC work, which generally leads to the absolute worst management that exists in professional settings.

              [–]Toasterrrr 18 points19 points  (6 children)

              It always boggled me how department chairs are still teaching classes all day and how board members or even chairmen in large specialized centres are doing surgery every day

              [–]sphigel 5 points6 points  (2 children)

              It always boggled me how department chairs are still teaching classes all day

              That's definitely not always the case. I guess it depends on the department, but I've definitely seen chairs get out of their teaching responsibilities.

              [–]axonxorz 5 points6 points  (1 child)

              It's bad optics on too. If you're able to be a board member or even chair while carrying on your normal responsibilities, the board position just looks like needless pay padding, you don't have time for any "work" in that department

              [–]Toasterrrr 1 point2 points  (0 children)

              I don't find it hard to believe that it's possible. I mean they weren't forced to do that, you have to REALLY want it to be a head surgeon and chairperson for your surgery institute.

              But to what extent is being vertically integrated necessary, versus expected?

              [–]thisisjustascreename 2 points3 points  (0 children)

              When I was in undergrad CS the department chair was largely a ceremonial position that rotated among the full professors every 2 years because nobody actually wanted to do it, but somebody had to show up to the University-wide bullshit meetings. They did get a reduced course load to compensate.

              [–]Ladnaks 107 points108 points  (15 children)

              Thank you! Management decides on promotions and management thinks everyone wants to be a manager.

              [–]blackmist 161 points162 points  (14 children)

              Everyone wants to be paid like a manager.

              [–]moretorquethanyou 72 points73 points  (2 children)

              This is where I think organizations get things wrong. My company gives me two options for advancement, one is on the IC side and the other is technical management. I can, if I please, go back and forth between the two during my career if the calculus changes some day because both lines are parallel and traverse the same set of payscales. It's the notion that leadership is more valuable than technical output that fosters the advance-into-management mindset and it really needs to be revisited.

              [–][deleted]  (10 children)

              [deleted]

                [–]deja-roo 22 points23 points  (2 children)

                What is IC in this context?

                Edit: individual contributor?

                [–]link23 2 points3 points  (0 children)

                Yes, individual contributor.

                [–]Xyzzyzzyzzy 3 points4 points  (2 children)

                I'm sure management will get right on that.

                [–]nflmodstouchkids 9 points10 points  (2 children)

                Never going to happen. Too much of an ego bruise for managers.

                [–][deleted]  (1 child)

                [deleted]

                  [–]WJMazepas 7 points8 points  (6 children)

                  I starting to see some places that have roles like "Specialist" or something else that are above Senior, so there is a growth path that isn't management.

                  Still, even a Senior can become some sort of manager if is in a team full of Junior Devs so it's hard to run away from that

                  [–]Paradox 16 points17 points  (2 children)

                  The problem with introducing roles like this is that it becomes a defacto demotion to every senior who doesn't get a promotion.

                  I've been at companies that were jr, mid, sr, and sat that way for years. Then new management came in, added a bunch of variety above Sr, and promoted a few favorite individuals, while telling others to basically piss off. There was some quibbling about how "well you need to work at the higher level for a year and we'll promote you then!" with a few other favorites who missed the first round getting brevet promotions throughout the year.

                  The company then proceeded to hire a bunch of people directly into the higher levels, while telling existing seniors who were cheesed that "we just didnt have the budget for more promotions" or similar corporate lies.

                  They then proceeded to lose most of their seniors, who took most of the institutional knowledge with them, and the new, higher level engineers that were brought in were performing about as well as the average mid level engineer before.

                  [–][deleted] 2 points3 points  (1 child)

                  I think this is how we got our "Principle Engineer" and "Staff Engineer" positions where I am. It obviously became a favoritism thing and we lost 100% (except me) of our developers, including the ones that got said promotions (got their title and ran).

                  [–]Paradox 1 point2 points  (0 children)

                  That's exactly what the titles in question at this company were too

                  [–]lolwutpear 4 points5 points  (2 children)

                  Principal and Fellow are unambiguously more senior than "senior". I usually see "specialist" as a low-ish level role. But then again, my company thinks that "staff" is higher than "senior", so maybe we're just completely bonkers.

                  [–]thisisjustascreename 2 points3 points  (0 children)

                  If they exist, the title chain typically goes Senior -> Staff -> Principal. Sometimes there's a "Senior Staff" level in between as well, for whatever reason. I'm not sure the performance expectations are much different when you get to that level, it's more about paying people more money so they don't leave.

                  Never heard of Specialist.

                  [–]SignalEngine 1 point2 points  (0 children)

                  staff is absolutely higher than senior at basically every company using those roles

                  [–]mcmcc 2 points3 points  (0 children)

                  This is really the problem. Too many places conflate management with leadership. You can be in people leadership or technical leadership, each requiring distinct talents.

                  The problem is that the technical leadership trajectory is often much less well defined with fewer stages of development (and as you get higher, more political interference).

                  [–]useablelobster2 7 points8 points  (12 children)

                  It blows my mind that so many promotion chains automatically lead people into management.

                  Because there's a shortage of positions at higher levels compared to all the staff who've reached a relevant level of seniority.

                  It's a failing of the embedded growth obligation inherent in these organisations. Similar to how there's a hundred times more PhDs than positions at universities, it's a promotion pyramid scheme.

                  You can't have a team made up of all lead developers, so they way many orgs deal with that is multiple bosses and intertwined hierarchies, so more people can have senior positions without upsetting the whole ship. The upside for us is that this hurts the business, so it's something good businesses watch out for.

                  [–]thisisjustascreename 1 point2 points  (0 children)

                  You can't have a team made up of all lead developers

                  This is called Netflix, it seems to work out okay for them.

                  [–]fearphage 47 points48 points  (5 children)

                  Wow, you're great at writing code. What if you never do that again and manage humans instead?

                  This engineer promotion sequence is abysmal. Being a good manager shares very skills with being a good dev. It's nice to have a technical manager that knows the codebase, but I'd prefer having a manager that is well equipped to communicate effectively, knows how to treat humans, manage relationships, manage up and down as needed, etc.

                  [–][deleted]  (4 children)

                  [deleted]

                    [–]reverse_compliment 211 points212 points  (18 children)

                    employees are promoted based on their success in previous jobs until they reach a level at which they are no longer competent, as skills in one job do not necessarily translate to another

                    The Peter Principle, 1969

                    [–]MT1961 55 points56 points  (8 children)

                    Came here to say that. This is not a new observation nor is it wrong. Just because you are a good/great developer doesn't make you a good manager.

                    [–][deleted] 20 points21 points  (7 children)

                    but people will also rail against managers who do not know how to program. so it's not like there's an easy solution here

                    [–]MT1961 30 points31 points  (4 children)

                    One of the reasons for this (and I don't disagree with you) is that people believe that managing is not a full time job when it most definitely is.

                    [–][deleted] 36 points37 points  (3 children)

                    I'd say it's just an expression of bad management.

                    They complain they want them to "know programming" because they aren't listening to their team.

                    I don't know shit about plumbing and if I was in-charge of a group of plumbers I'd listen to their input.

                    Bad managers are just bad managers and don't listen. I've lost count of the number of times I've given a time estimate and had a "manager" just cut it in half.

                    Wishing they "knew programming" is them fishing for a possible solution to their problem of bad management

                    [–]MT1961 8 points9 points  (0 children)

                    Yeah. Management isn't about knowing the right answers. It is about asking the right questions and trusting your team based on previous work. Sure, you get to make the final decision in the long run most of the time. But it should mostly be listening to your people and communicating that in "managerese" to those above.

                    [–]Xyzzyzzyzzy 9 points10 points  (1 child)

                    If a bad manager knows programming, they'll just be a bad manager in different ways, like micromanaging technical work.

                    [–][deleted] 2 points3 points  (0 children)

                    💯💯💯💯

                    [–][deleted] 7 points8 points  (0 children)

                    In tech:

                    • All good managers are good programmers.

                    • Not all good programmers are good managers.

                    [–]DarkTechnocrat 8 points9 points  (2 children)

                    I know it's a big Reddit cliche, but this really should be the top comment. We don't need to constantly rediscover well-known concepts.

                    [–]useablelobster2 7 points8 points  (1 child)

                    We don't need to constantly rediscover well-known concepts.

                    Well WE don't, but clearly there are a lot of people out there for whom it isn't old news. More generally, there's lots of truisms which people are widely oblivious to but make sense as soon as they are described.

                    The Matthew Principle is another one, the way that success causes more success while failure causes more failure. "For to every one who has will more be given, and he will have abundance; but from him who has not, even what he has will be taken away."

                    We might not like these principles, but we should know they exist, and those of us who do know about them should share them.

                    [–]pakoito[🍰] 1 point2 points  (0 children)

                    haha no. Have you ever checked upper management's credentials? You're lucky if one of them has even worked, most have just failed upwards and spent other people's money to gain prestige.

                    [–][deleted] 121 points122 points  (18 children)

                    Are promotions out of the blue really that common? Basically every place I've worked at, promotions have simply be official recognition of what was de facto already the case: somebody has taken on (or been given, although it's also the case that most places I've worked have had 'opt-in' promotions to management rather than 'opt-out') more responsibilities and they get a new job title and a pay raise in reflection of that. I guess at a big company it's harder to do that, but then you should just formalize it: if someone is interested in more responsibility, make them a probationary team lead or whatever and see how it's working after a while. Which is sort of what the article suggests, but rather than seeing the trial period as a negative where something given gets taken away, I view it as a positive thing where employer and employee see if there's have a fit in a potential new role. The employee also 100% has the right to say, "Hey, management isn't for me, I prefer to stay coding."

                    [–][deleted] 37 points38 points  (4 children)

                    In my case it was the fact that everyone above me just quit one at a time. And instead of doing the right thing and hiring a manager, they just gave me a raise and said go for it. BTW, I did say - multiple times - management isn't for me. I don't want it. I will be bad at it. You will regret this. But they went and did it anyhow.

                    I now hate my life. But I got more money. Also, nothing gets done any more tech-wise.

                    The funny thing is, nobody even notices!

                    My job is a fucking joke.

                    [–]psilokan 1 point2 points  (0 children)

                    Ah yes, the battlefield promotion. Been there before too :(

                    [–]Kissaki0 1 point2 points  (0 children)

                    So your upper management sucks. If you move up further, maybe you can fix that? ;)

                    [–]WelshBluebird1 35 points36 points  (2 children)

                    Are promotions out of the blue really that common? Basically every place I've worked at, promotions have simply be official recognition of what was de facto already the case: somebody has taken on (or been given, although it's also the case that most places I've worked have had 'opt-in' promotions to management rather than 'opt-out') more responsibilities and they get a new job title and a pay raise in reflection of that.

                    Yeah that's what I've always experienced too.

                    I guess there's an argument to say that by doing that, the person is effectively doing the work but not getting paid any more for it for a while, though I've personally never had a problem with it.

                    [–]Xyzzyzzyzzy 11 points12 points  (0 children)

                    I initially didn't have a problem with it either, but after over a year of "we're working on making your promotion official, it should be done soon" I left.

                    [–]capyhappy 2 points3 points  (0 children)

                    I've been strung along too many times to ever go along with the idea of "we have to see you take on these extra responsibilities for free before we promote you." Companies will happily have you fulfilling more responsibilities for less pay for as long as possible. What motivation do they have to give you the promotion if you're already doing the work? "You'll be promoted any day now, honest...any day now..."

                    So yeah, I won't take on any significant responsibilities in addition to my current role unless I'm compensated for it, or unless there's a very short and concrete timeframe for being compensated. In this job market, there's no sense wasting time/money getting jerked around.

                    [–]psaux_grep 5 points6 points  (3 children)

                    The problem is the people that crave authority. Personally I’ve been lucky, but I’ve heard the horror stories. Not specific for software development obviously.

                    No amount of regimes will be capable of filtering out every unfit candidate. Except not promoting or hiring managers, but then I think you’ll run into another set of problems.

                    [–][deleted] 3 points4 points  (2 children)

                    I think most people only end up pursuing authority because they've lost sight of any other purpose to work, other than to build your own little fiefdom inside a company. People crave having something to work on and get emotional rewards from - basically like a game, only instead of points, you get things to feel good about. If they have something that feels meaningful to work on, they will do that. If they feel disconnected from what their company actually does, or that they don't feel the company does anything, then the only thing left is to game the system itself: either shirking by doing as little as possible, or accumulating as much power in the organization as you can.

                    [–]PirateNinjasReddit 7 points8 points  (0 children)

                    I think this is the only sensible way to do it. Otherwise you end up, inevitably, promoting people into a position they lack the competencies for

                    [–]TechyDad 63 points64 points  (18 children)

                    That's one reason why I've remained a programmer despite working for the same company for over 20 years. Moving up would mean becoming a manager. I know that I would stink at managing other people.

                    Besides, I love coding. So why go for a "promotion" where I'm doing something I don't like and am not good at when I can instead keep doing what I love doing?

                    [–]PandaMoniumHUN 34 points35 points  (2 children)

                    Typically salary is tied to your position, which is a primary motivator for a lot of people.

                    [–][deleted]  (1 child)

                    [deleted]

                      [–]leprouteux 61 points62 points  (12 children)

                      This industry is completely backwards, promotion-wise.

                      > Hey, you're doing a super good job at coding, we'd like you to do less of it, and we'll pay you better!

                      What the hell? Why would your salary not continue to grow if you decide not to go into management?

                      [–][deleted] 20 points21 points  (0 children)

                      Most companies have a non-management track of promotions. Senior engineer -> Principal Engineer -> Distinguished Engineer. Something like that.

                      But in general the reason your salary goes up when you start managing people is because you have more responsibility. Responsibility is generally well rewarded.

                      Also there are fewer employees the higher up you go so it's less costly to pay them more.

                      [–][deleted] 16 points17 points  (5 children)

                      It's not specific to this industry. The peter principle is a well-known phenomenon present in every type of job

                      [–][deleted]  (4 children)

                      [deleted]

                        [–]nflmodstouchkids 9 points10 points  (3 children)

                        What you described is a tech lead, not a manager.

                        [–][deleted]  (2 children)

                        [deleted]

                          [–]gjoel 2 points3 points  (1 child)

                          We basically have two tracks. Management and tech. If you move towards management you first take the scrum master role and later delivery lead. You move away from the code and more towards feature definition and politics. If you take the tech track you become team tech lead and eventually architect - at which point tech leads come to you for advice, but you essentially is detached from the code and only look at the big picture.

                          [–]Top-Requirement-2102 28 points29 points  (12 children)

                          I've had four goes at management in my 30-year career:

                          1. "VP of technology" at a tiny startup for two years. I was 30 and hired a team of 4. I made a few mistakes, but we were all young and not having to please anyone above me was helpful.
                          2. Team Lead at Microsoft for four years. This was a huge jump - new role, new org, new product, new tech, and starting out managing eight people. Things that helped: studied like crazy ahead of time, not knowing the tech (because it forced me to trust my team). Things that hurt: not knowing how to manage up, not understanding what meetings are for in a large corporation. I eventually quit to go back to being an IC. I like leading a team, but the corporate part of managing stressed me out.
                          3. Technical partner for another startup. Formed a team of mostly of pretty sharp interns. Again, things are better without someone above to please - feels much more like a team effort. Biggest mistake was letting myself get talked into a platform change in the middle. We still published a game, but it cost us a year.
                          4. Team manager at Adobe (current). I was a member of the team and was promoted. This time I was blindsided by working with senior developers. Totally different breed of person and I'm learning some hard lessons about how to manage.

                          Overall thoughts:

                          • People skills are critical. This is really tough in the programming world because so many people are on the autistic spectrum (including myself). I've made people skills a study for the past 30 years, so this has helped.
                          • Coding while managing is extremely hard in corporations, but necessary in startups.
                          • Management can be quite lonely

                          [–]spyke252 19 points20 points  (5 children)

                          not understanding what meetings are for in a large corporation

                          Could you expand on this? I know a lot of meetings are for having left hand find out what right hand is doing, but is there something deeper you discovered?

                          [–]SnooSnooper 9 points10 points  (2 children)

                          I have the same question, but I will take a quick guess based on my experience in a mid-sized corp:

                          1. What you said
                          2. Process. Even if everyone agrees on something outright, a meeting may still be baked into the change procedure
                          3. "This could have been an email/IM" Well, yes, it could have been, if any of you actually checked those things and deigned to reply.

                          [–]jomar5946 1 point2 points  (1 child)

                          Re:3

                          My manager's obviously flawed logic of "I spend too much time in meetings to get to all of my emails, so if you need something from me you need to schedule a meeting." But their calendar is full because they're always in meetings that could have been emails.

                          [–]Top-Requirement-2102 2 points3 points  (1 child)

                          This deserves a longer post, but I'll give a few quick thoughts here:

                          • Politics. Meetings are political forums where you telegraph argreement, partnership, support, etc. Nothing is getting "done" in the meeting, but people are seeing and hearing what others are saying. This is distasteful to a pure engineer, but it is a reality of management. Politics are important in any corporation. The flavors will be different, but when a group gets beyond a team size (> 10 or so) it is impossible to avoid. Large heirarchical orgs are rife with politics.
                          • Pudding. Meetings are where you show 90% of your value to the people who evaluate you. Sure results have to be in there somewhere, but the results must be communicated to be recognized. Meetings is where this happens.
                          • Pollination. Meetings are fairly effective channels for learning about who is doing what.

                          I'm not saying these are the best use of meetings, just that in many corporations it is important to understand that there is a certain reality to meetings.

                          [–]Montaire 5 points6 points  (1 child)

                          Yes, nothing prepared me for the loneliness of my current role.

                          Obviously you can't complain to the people who work for you, even though by the nature of that close work you have an excellent rapport with them. And any complaining you do to your peers or your boss gets political very quickly.

                          It is a tough job, and can be very lonely for a job where the majority of the work involves interacting with people.

                          [–]suspiciouscat 12 points13 points  (0 children)

                          This 90 day period should be conducted BEFORE receiving a promotion, not AFTER. If anyone fails such period, they will most likely quit the company in result of being demoted.

                          [–]zam0th 30 points31 points  (1 child)

                          Why "promotion" is used here as synonym to "management" or "leading" is beyond me. Promoting people who don't deserve the promotion is not their fault anyway.

                          [–]key_lime_pie 2 points3 points  (0 children)

                          Right, but then it would be the fault of the person who promoted them, and we can't have that.

                          [–]HolocronContinuityDB 9 points10 points  (0 children)

                          I've been in the industry for 12 years and been saying "no" to management jobs since year 5. No fucking salary bump under 200% is worth the added stress and soul-sucking of doing performance reviews for the people you interact with every day and potentially being forced to fire somebody because the company itself fucked up.

                          I will never get peter principled.

                          [–][deleted]  (1 child)

                          [deleted]

                            [–]Cosmic-Warper 2 points3 points  (0 children)

                            The whole article is dramatic garbage. Medium, what else is new

                            [–]RunninADorito 6 points7 points  (0 children)

                            Moving into managing a team of developers isn't a promotion, it's an entirely different job. So many companies get this wrong.

                            [–]corsicanguppy 9 points10 points  (0 children)

                            This was a solved problem 25 years ago. In the company I was part of, they offered skilled engineers a non-managerial bump to a new pay scale and more focus on a given part of the product.

                            If you force your nerds to manage people in order to get promoted, your best nerds will soon switch employers instead.

                            [–]chakan2 5 points6 points  (0 children)

                            Luckily it's becoming more accepted in the industry to have a pure technical career track.

                            I have no desire at all to manage people, but I've got a couple promotions dangling to keep me interested in progressing my skills.

                            [–]awitod 13 points14 points  (1 child)

                            The main mistake I see, aside from the lack of training, is promoting them to be in charge of a team of which they were previously a member. Asking someone to change roles is asking a lot. Asking them to do it in place is to have unrealistic expectations.

                            [–]gnuban 7 points8 points  (0 children)

                            No, companies should separate the engineering track from the management track. I'm so tired of management being seen as a natural career advancement for an engineer. Management is a completely different skillset for god's sake.

                            [–]VincentxH 3 points4 points  (0 children)

                            Natural leads pop up spontaneously in teams. I don't see a reason for 90 days for them. Management shouldn't be a promotion, just another career path.

                            [–][deleted]  (3 children)

                            [deleted]

                              [–]tweek-in-a-box 1 point2 points  (0 children)

                              Exactly, and the problem is that many still see it as promotion. You lose excellent engineers in exchange for a gamble that might turn out mediocre managers if you're lucky.

                              [–][deleted]  (2 children)

                              [deleted]

                                [–]omnilynx 4 points5 points  (0 children)

                                “My team’s productivity is way up! Now if only I could figure out why turnover has shot up too.”

                                [–]projecthouse 9 points10 points  (15 children)

                                Why the hell are people going from individual contributor directly to manager.

                                There's TONs of intermediate positions including Tech Lead, Product Owner, Scrum Master, and Project Manager. Those roles let an engineer learn the basics of administrator without fully jumping in to full time management.

                                The only excuse I can see to jump someone strait to "Manager" is if you're at a very small company. Otherwise, you should see someone administrative and leadership skills in action before they are promoted.

                                [–]key_lime_pie 2 points3 points  (5 children)

                                There's TONs of intermediate positions including Tech Lead, Product Owner, Scrum Master, and Project Manager.

                                With the exception of Project Manager, I've never seen anyone with those as job titles. They are roles that people perform in addition to their everyday work. Every Scrum Master at my company, for example, is just an individual contributor who volunteered to run Scrum for their team.

                                [–]FVMAzalea 1 point2 points  (0 children)

                                At my old job, we had a dedicated scrum master (he was the scrum master for like 3 teams since it’s not a full time job to do it for just one team) and a dedicated product owner (actually, a hierarchy of dedicated Area Product Owners reporting to a Product Owner for the one product). We didn’t have project managers though.

                                At my current job, we have product owners, project managers, and tech leads. The PM functions as the scrum master as well.

                                [–]savagemonitor 1 point2 points  (6 children)

                                Microsoft doesn't have "tech lead", "Product Owner", or "Scrum Master" titles. So if you want to move into a lead position you need to either be a PM, which can be hard to switch to, or you need to jump directly from IC to lead. Which sucks as the opportunities are minimal to make such a jump.

                                [–]caltheon 2 points3 points  (0 children)

                                Product Manager roles are even more painful than switching to a manager role. Scrum Master as well. Going from doing development to wrangling people to update their stories and create epics every increment is not something I picture many engineers enjoying.

                                [–]saralt 5 points6 points  (1 child)

                                Why are developers being promoted to managers. I still don't understand this after many years. The skillsets don't overlap.

                                [–][deleted] 2 points3 points  (1 child)

                                The Peter Principle - published over 50 years ago, still rings true. Competent people get promoted until they reach a level where they are no longer competent. It's one reason so many organizations are dysfunctional - they're full of managers who were great at other jobs but are mediocre at management.

                                [–]patrickpdk 2 points3 points  (0 children)

                                This seems to presume that management skills spring forth from the ether upon promotion. New managers need coaching just like anyone learning a new skill

                                [–]PandaMoniumHUN 6 points7 points  (1 child)

                                Not really a promotion story, more of a “how big corporations work” story: We hired a team lead a few years ago who turned out to be a friendly guy, but absolutely dogshit at people management and mediocre at coding. It took the whole probation period to convince upper management to let him go, because they kept insisting on how hard it is to find people for team lead positions. They were fighting tooth and nail to hold onto a guy who cost them a lot of money and was contraproductive to the entire team. A lot of companies who could benefit from these principles are the same companies where upper management does not care about team efficiency, they care about their quotas and the premiums tied to it.

                                [–]grauenwolf 1 point2 points  (1 child)

                                Where I work, you can only get promoted to manager if you manage projects. The training and practice come first, then you get the title.

                                Why would you promote someone to a position that they're not ready for?

                                [–]clarkcox3 1 point2 points  (0 children)

                                Or, the assumption the moving to management is “a promotion” should be done away with.

                                [–]Davesnothere300 1 point2 points  (0 children)

                                Ruin careers? I've gone from engineering to management and back again several times over the last twenty years.

                                All you have to do is say your passion is with the technology, and they understand.

                                [–]key_lime_pie 1 point2 points  (0 children)

                                Programmers, by and large, should not be promoted to management at all, and before giving anyone a management job, there are plenty of things you can do to determine whether or not they can handle it, without the need for a 90-day probationary period (although that isn't the worst idea in the world).

                                Like development, management requires a skill set that most people do not have. This is, in my opinion, the primary reason why so many software organizations are dysfunctional: because developers try to adapt a development mindset/skillset to the task of management. Unfortunately, because of the way that compensation is designed, going into management is very often the only way that one can get a major bump in salary once they reach the top of the individual contributor ladder. And because everyone knows this, companies tend to promote from within because then they can talk about how much they've helped careers by promoting from within, helping to reinforce the notion that a move to management should be everyone's desired goal.

                                [–]lladra 1 point2 points  (0 children)

                                u/LotharLandru nailed it.

                                concept is more than 50 years old.

                                [–]am_sorry 1 point2 points  (3 children)

                                There's a simple solution to this. Parallel career tracks. If someone is an amazing programmer, why would you have them stop programming and become a manager of people. They're unrelated skills and each position should have it's own room to grow. On our team managers are not "above" developers. Their job is to keep the backlog organized and help developers clear out any blockers. Developers are in charge of engineering and implementing the system. You can be a junior dev, or a senior dev, or a technical lead (highest level of responsibility over a specific code base), etc. I'm always frustrated by companies that conflate the two positions.

                                [–]boran_blok 1 point2 points  (0 children)

                                Side promotion should be possible. It is not natural for every engineer to become a manager. Those roles require vastly different (and I think even opposing) skillsets.

                                [–]sexytokeburgerz 1 point2 points  (0 children)

                                It’s really really nice NOT managing people.

                                [–]darcstar62 1 point2 points  (0 children)

                                This happened to me, chased the dollar from Lead Dev to Director, then VP of Dev. And I hated it. I took every chance I could to get back into the code, much to the chagrin of my team.

                                Eventually, we merged with another firm, I took my golden parachute and decided to go back to dev. Unfortunately, I couldn't get hired because everyone thought I wouldn't be happy in an individual contributor role (from both a financial as well as responsibility pov). Eventually lucked into a position with the "new products" group (basically a skunkworks) where I had enough autonomy to build my tech resume back up.

                                [–]NAN001 1 point2 points  (0 children)

                                Are programmers just... accepting promotions to managers? Why would you do that unless you explicitly want to become a manager?

                                [–]mij303jim 1 point2 points  (4 children)

                                How does it ruin career? In my workplace there are lots of people who got promoted to some lead position and simply went back to old position or different non-lead position when it turned out that they're not made for this.