This trope of "growing" from an engineer to a manager needs to die. I grow as an engineer when I learn new stuff or become better at building things. Becoming a manager is changing jobs, not growth in any meaningful way. Not even in salary in many places
If you make it to my comment, please - do not go into management for the money. If you want to build, then remain an IC. If you want to grow other engineers, further THEIR career, make THEM better - go into management.
The friends of mine who ended up in management for the money and complain about their reports make me so angry.
Your point is that managers are more upwardly mobile, which is fair, but that doesn't mean when you make the switch it is a promotion. G9 IC -> M0 will not increase your salary. It does grant you more power, but that is not a promotion per se.
The other thing to watch out for is manager growth over the last 10-15 years was a result of the structural needs of an unprecedented tech bull run. Now that the industry has moved into belt-tightening mode, the heaviest scrutiny is falling on managers. The type of political games a typical 35 year-old EM (5 years coding, 10 years EM) may not be as effective as they were in the previous environment. There are a LOT of EMs getting pipped or knocked back to IC these days, whereas ICs with a bit of product/UX sense, ability to think a bit beyond their silo, and willing to work on "boring" business applications will continue to be highly valued, especially given the amount of dead weight that has found its way in by grinding leetcode.
It’s true but for most people in practice they won’t make it to L8 either as IC or manager so it’s really more a question or do you want to finish your career as an L6 IC or manager.
It really depends. Our company (FAANG equivalent) has a lots of high ICs. There are lots of high level ICs because there are far fewer Techlead Managers who covers both sides. But tl managers are way too hard so most ppl pick one track to stick with.
High level ICs have LOTs of weights on the technical directions. They are not replaceable by the managers.
I would also say that being an engineer at L8 is a meaningfully different set of skills than L7. The whole ‘what got you here won’t get you there idea’ starts at L7 for either track…
I don't think what you described is a promotion? M1 = IC6, M2 = IC7, etc as you said. As far as the number of directors and VPs, sure there are probably more but I would describe that more as "it is easier to get promoted as a manager than as an individual contributer past IC6"
However... This is starting to change. We now have engineers reporting to higher levels, so basically each manager has an equivalent IC reporting directly to them. In theory this means the numbers are more equivalent.
Converting from manager to engineer at the same level requires a special test in at least one FAANG company. Doesn't that mean going from manager to IC is a promotion? And then obviously the other way around must be a demotion?
I think it is growth or at least growth opportunity.
Acquiring incremental engineering skills is great and we should all do it. But let's admit that it's just that - incremental. You go from being a good engineer to slightly better engineer- something you already are.
When you pivot to management or something else that's more different to you - you are taking on a bigger challenge and there's no guarantee of success. In order to succeed you need to hone a whole different set of skills - and if you manage to do that, you will certainly have grown in a real way.
I totally get the sentiment that going into management isn't the only way to advance a career and I agree. I am just saying that those who take that path indeed open themselves up to a challenge and evolution.
You are taking on a different challenge, not a bigger challenge. Almost all of your comment could equally describe going from being an engineer to being a dog walker, or a sous chef, or a roofer. Entirely different, and in your new career your prior skills will rapidly atrophy and become marginal.
In my closing on 30-year career in this industry, "managers" have been the least important part of any team, and had the least impact on success or failure. I'm not anti-manager at all (although I have spent my entire career trying to stop people who think they are rewarding me or giving me a promotion by giving me more "manager" duties. I have zero interest in deciding compensation or going to more meetings), it just truly is a position that is the closest to fungible. Everyone fear mongers about AI replacing engineers, but in the real world it could far more easily replace manager level resources.
I just don't like how often it's implied that management is the inevitable next rung on the ladder after staff or lead engineer. As if I'm not ambitious enough because I just want to be a good engineer. Employers sometimes dangle the management carrot in front of me, and some people have been outright confused when I tell them I don't covet a management role.
What needs to die is this trope. Few places cut salaries when people move to EM role. This might be true for some big tech companies, but even then it's only in the beginning. If you look at companies that have unified levels for SDEs and EMs (Google, Amazon), you can see that on the same level EMs have slightly higher TC.
Not to mention that there's a whole world outside of big tech where moving to management is considered a promotion (and often the only way to grow, because dual career ladder is not implemented everywhere). The cases where EMs make more than SDEs are really way more common than the reverse situation.
I don't get this comment. I guess because I think we are not aligned on what a manager is or maybe our engineering styles are very different. For me a manager is someone who leads through influence, in engineering managers lead towards an engineering solution. To me it just feels like a different way to solve the same class of problems, just bigger. I absolutely feel like I am doing engineer, the difference being solving bigger problems and a lot fewer problems are being directly solved by me. How do you see a management position?
IMHO engineers should also (and should be expected to) lead through influence. In my mind, as engineers grow they should be expected to tackle problems and influence solutions of increased scope, complexity and ambiguity.
Junior engineers should be able to drive smaller, well scoped projects.
Senior+ engineers should be expected to tackle complex, cross-org, ill-defined technical challenges, examples include technical mergers of company acquisitions, large scale migrations of business critical systems, technical design of big bets (also analysis on which big bets to take), evaluate new technologies/platforms, dev tooling to multiply productivity, etc
A lot of this requires buy-in and stakeholder management to succeed.
On some it might be an architect level engineer who also manages the team. In others it'll be nothing more than a middle manager that only will see code on their spare time. And it can be everything in between.
So depending on the kind of move it will not have anything to do with engineering and everything to do with managing. And that's HARD. Changing your whole set of skills for another overnight it's not pleasant.
Yes and no. It's a common trope at many tech companies that these are two completely separate tracks, with no special upside to either.
But then, here's the reality: any large company will have a new for an army of directors and VPs, compared to only a handful of ultra-senior, visionary engineers. Take Google and compare the ratio of Jeff Dean-type folks to senior managerial staff collecting similar paychecks.
So yeah, if your goal is to retire early without depending too much on luck or on being exceptional, management is your career growth path. For better or worse.
> I grow as an engineer when I learn new stuff or become better at building things. Becoming a manager is changing jobs, not growth in any meaningful way.
That's a very linear outlook. One can also grow be expanding the base of skills one has, and that often comes by shifted to adjacent jobs where you can capitalize on your first skill. There's some benefit in engineers who want to grow by transitioning to manager: nobody wants a non-engineer as your manager/leader - how would they understand your work or attract fantastic talent?
Now, don't get me wrong: I'm not saying for an engineer to grow one has to become a manager, but it is a legitimate strategy.
in a lot of places they refuse to let engineers become managers. Technical experts, distinguished engineers, CTOs, etc, but management is distinctly different then writing code. Human beings are not computer programs. Being good at one doesn't mean you'd be good at the other whatsoever.
It's a different set of tasks and skulls but having a background in the relevant domain is in my opinion required. Working in ML, having a manager that doesn't understand statistical significance, or even key metrics like precision and recall is a recipe for unhappy employees and bad decisions.
I think that this has been somewhat nullified by the changes over the last few years where managers are supposed to be people managers exclusively, while high level ICs supposed to create direction and evaluate technical merit.
Agreed. I’ve done both, and while a good Engineering Manager has to be a good engineer (how is one supposed to supervise something they don’t understand), mastering one skill set more or adding a second one isn’t more or less “growth”.
While you can absolutely be a manager without extensive IC experience, most people will benefit greatly from having deep IC experience before becoming a manager.
Nobody goes from engineer to CEO with a million dollar golden parachute for doing a terrible job. As an engineer you work your ass off for someone else to take all the credit and leave you homeless.
It’s growing - hell it’s escaping Getting as far away from working constantly for no reward and more goddam leatcode Interviews where 25yo who know nothing gatekeep your career - maybe you live in a different reality than I do, but I can always just build for myself at home.
People do not go from an engineer to CEO full stop. And also, plenty of CEOs with a million dollar golden parachutes do terrible jobs. So does large parts of management.
When I gradually became a manager, I continued to be better at building things, not only with my hands, but also by aligning and enabling other engineers and entire teams. So in a grand scheme of things it is the same way, with greater impact and responsibility.
I think of it as horizontal vs vertical. An IC grows horizontally over their career as they learn new technical things. A manager grows vertically as they move up the chain and are managing more and more people.
To put it politely I have a distaste for being referred to as an ‘individual contributor’ (or even worse a ‘resource’). I also don’t like being ‘managed’ and have gained little from ‘line management’ over 20+ years developing software systems.
I do however find it extremely motivating to help a true leader solve their problems in a self-organising team of collaborative peers.
I can’t fathom why so many software organisations are still structured for hierarchical command and control, with the trend of good engineers being ‘promoted’ to management?
Yes I think we need more leadership: with organisations cultivating a culture of leadership, communication, openness and trust. Everyone can display leadership skills depending on the context/task within a team. It is not something reserved for the ‘manager’ (appointed leader).
Do we really need more ‘management’? I don’t think so. Management != Leadership.
Would be keen to see some more articles along the lines of ‘Growing leadership skills for engineers’.
The professional managerial class have completely taken over most tech companies now. 'Technologists' trading buzz words, peddling 'influence' and crowding out the people that actually build things.
There is a massive difference in maturity crossing from individual contributor to manager between the military and corporate world. Never in the corporate world have I seen a junior manager tell their boss ”no” and pushback as I have in the military.
In the corporate world it’s all about hiring/firing versus the military where it’s all about developing people and liability at all levels. The key consequence of that is that in the corporate world people are eager to play it safe and follow trends versus the military where its generally considered a safe environment for learning more tolerant of controlled failure. Tolerance of controlled failure is how I learned to become a developer while working at Travelocity a billion years ago and I have not seen that since (in the corporate world).
Another possibly related difference is the training managers get. There are military careers where you know on day one which leadership responsibilities you will take several years down the line. That’s a stark contrast to starting out as an engineer and then transitioning as described in the blog post.
This. The state of leadership training in our industry is abysmal. Most managers I've met get little to no training when they transition to leadership roles. It's slightly better in larger companies, but as you say - a stark contract with military
I disagree, however I never served in the military. There are companies which provide a safe environment for mistakes to be learning opportunities, its the culture that defines that. Rarely will an actual mistake lead to someone being fired where I work, usually if it does its because of attitude and someone believing they can do no wrong.
If you bring down the production system with a change that is a learning opportunity and your team should be supportive (i.e. help you recover it) when these things occur. Thats why its important to be constantly deploying code and knowing how to roll back, etc.
I’ve worked at a company that did releases months apart and everything was supposed to be perfect, it never was. In that culture it was all about posturing, covering up mistakes and blame-game which is utterly frustrating to work in.
The problem with management roles today is they are watered down to the point of being basically pointless. Product people determine the shape of things and priorities. Tech leads determine how things should be done.
The manager is supposed to shepherd career growth and decide how much people should get paid. In my view this is a really part time job at best.
I think we need to go back to coupling more of these roles together, similar to what would happen in a startup. A strong leader should be able to fill product, tech lead and management roles.
Like a team ceo. I strongly believe this person should be responsible for a teams success or failure. Grant this person the right to hire/fire members of various disciplines. Tell this person to chase certain revenue numbers or another mission. Give this person the bonus money/product dividends to share with the team. I believe all this will drive this person to really build a team, instead of just managing it.
But demote them to smaller projects when they fail to deliver. And allow team members to apply to work for a different team if they trust the team ceo there more. Like an internal startup environment but teams. This is how I would try relentlessly to structure my company.
Managers have to manage up, down and outward. Most ICs will generally see downward management, but not the hours put in reporting up to executives, aligning and planning initiatives, resource/ allocations/PI’s, budgeting, procurement, audits, client/product demos/presentations, hiring and sometimes firing.
Managing down tends to be the easy part, career planning, 1:1’s, performance/development and running rituals is a cake walk. The only real hard part of managing down is when you have an employee that’s poisoning the well or is on a PIP.
Oh, and some managers also have to still pick up cards and push code in some orgs.
Most posts here are from those who have never walked in a manager's shoes so only know what they see (or hear/read).
Think about it, minus a few exceptions, most managers are paid better than the engineers they manage. Now why would exec/sr mgmt. do pay more unless they are getting their money's value?
I'm on the journey back too and can't wait to find a role where I actually have some creative input and decision making again.
This obviously varies from role to role but I was told I would be highly involved in deciding what the team does and how they go about it. The reality is that I am responsible for arbitrating the delivery of decisions from more senior managers to the teams and the decisions from the teams on how they execute on those decisions back to the managers.
Facilitating the growth of other engineers is wonderful but, frankly, I can do that (and was doing that) as an IC.
If I'm honest I don't think the exact role I want exists out there but I think I'll make a far better "lieutenant" to a manager who actually likes the job than I make a manager who is becoming increasingly unengaged with their own role.
> The reality is that I am responsible for arbitrating the delivery of decisions from more senior managers to the teams and the decisions from the teams on how they execute on those decisions back to the managers.
If it were only that simple. Often one needs to be at least a team lead to set the technical direction. As an IC, I sometimes found myself being asked to implement a solution in a form that I did not agree with.
With the right team/leader, there'd be room for your inputs on the matter. Even if you find yourself in a not-so-good team setup, I'd argue there's still merit in letting your opinion be known, regardless of whether you end up implementing said solution in the way you were told or not.
I don't think that changes much. To oversimplify; by telling you how to do it, the team lead is taking responsibility for the outcome of your output. You are just responsible for doing it how they said.
As others here have said, you don't grow from engineer to manager, you grow from engineer to lead engineer, or architect, or another similarly technical role.
I was recently promoted from Principal Engineer to Director of Technology in $JOB, and the difference has been striking, mostly in the ability to influence things so we can build the right technology before we start. That feels like a much more natural step for an engineer than throwing away their entire skillset and moving them to a position that requires an entirely different one.
If you want to grow your engineers, give them more (and higher-level, higher-impact technical stuff to do. If they want to become managers, great, but there's not as much overlap between engineering and engineering management as most people seem to think.
A coworker and friend is both an engineer and a manager, and he happens to be great at both of those. Instead of losing one of the skillsets, he has a role where he both manages his team and sets the technical direction for them. This means he manages a much smaller team than he would otherwise, but he loves doing both, so this a natural fit for him.
All this is to say, build your roles according to your people, don't shoehorn them into labels that other companies have told you is "how to do things".
I'm trying to say my Director of Technology role isn't a management role (our Director of Engineering is). I'm responsible for the technologies that we use, develop, maintain, etc, but not the people or teams that do it, and it works very well for us.
Director of technology is usually not. There is no direct reports. What I've seen is this role existing alongside a director of engineering role which does deal with management.
Engineer to manager isn't "growth", it's a complete career shift. Fine if you want it, torture if you don't.
"Dear Engineer, you are so good at your job we've decided to have you stop doing it and do a different job with an almost completely disjoint skill set. You get to do something that you will most likely hate and be bad at. Plus you can never go back to your old life."
I mean, you can definitely go back, there's just friction to doing so and it won't happen unless you are intentional about it. Might be more accurate to say you can go back, but it will never be the same now that you've had the veil pulled back on how things are being coordinated behind the scenes.
Interested in moving from Engineer to Manager because I hope to do less work. Happy to do a few meetings, send a few emails, rather than actually having to build stuff that i don't care about.
It's even better if as you say the success is determined by the team, because then also the failure can be pushed on the team.
Edit: FWIW not that I want to be a bad manager. The environment is what shapes your incentives and behaviours.
I've done both and I can assure you that management is not less work.
In fact, you are more likely to work longer hours, and attend meetings at stupid times because that's the only slot you can get the more senior managers to meet at.
However, you sound disillusioned with your work, and maybe you do need to transition into something else. A new challenge can revitalise you, and it doesn't have to be forever.
I've met plenty of engineers who seem to believe that everyone else's non technical role is easy. Keep an open mind, and don't approach new opportunities with a negative attitude, or you will probably remain discontented.
> I've met plenty of engineers who seem to believe that everyone else's non technical role is easy.
Not easy. But it's the difference between being the one who is approving and the one who is doing the work.
The one who has some autonomy and the one who doesn't. The one who is valued and the one who isn't.
Having to attend OOH meeting is less stress for me, then having to build something OOH and make it work. One requires communication, politics, the other one actual tangible deliverables.
> I've met plenty of engineers who seem to believe that everyone else's non technical role is easy.
In my experience it’s like that (I’m talking about engineers vs eng. managers). Another significant difference is the amount of work, I believe: as an engineer I work 4h/day but those 4h are “hard” hours (fully focused) and my brain ends up a bit exhausted after. But that’s all I do in the day for work. On the other hand, eng. managers do more lightweight work, but work longer hours.
I have to say that in my experience, what my eng. managers were doing all day was: 1:1s, meetings with other managers to decide how to shift around people, interviews, being present at some sprint plannings without saying much, being present at some daily meetings without saying much.
> In fact, you are more likely to work longer hours, and attend meetings at stupid times because that's the only slot you can get the more senior managers to meet at.
Unless you work with someone internationally and the only time both teams are awake is at ungodly hours for both, so you never get any meetings at normal times.
In my experience engineers have more “free time” than eng. managers. As a senior engineer I have not many meetings per week, and the tasks I need to accomplish I can arrange time for them the best way that fits me. So, on Monday I could work fully focused, let’s say, 4h, and call it a day. On Tuesday spend 2h in meetings and another 2h to do PR reviewing… I have almost absolute control over my day, and that feeling is great.
On the other hand, even though eng. managers mostly do meetings, their calendars are usually packed with them. Even worse, they may have one meeting at 8am, another at 12, and another at 4pm… that kills your day completely since you have to stay available during the whole day. Definitely something I would hate.
Meetings filled with endless bike shedding about trivialities, bickering about specs, push and shove over changes in scope and delivery dates… and then every waking moment outside of those meetings, you’re either following up the above from previous meetings or scheduling new ones. Not a fun time.
That's an extremely myopic and immature view of what management is. You have probably only worked with incompetent managers and your experiences reduce a role that can be both stressful and complex to nothingness.
Ironically, competent managers also make it look easy. Because they must understand that their mood, behavior and what they say can really impact the morale of their reports and their relationships in the organization, many display a calm and professional demeanor. To the untrained, this outward apperance obscures the fact that they work very hard to position their team for success; and navigate, mitigate or repel shitstorms.
Exactly, what merit is there to putting a manager that pushes failure onto the team? Might as well have the team itself report to senior management if one is too eager to get out of the way.
That’s what’s difficult about leadership: success and observable, effusive credit flows down the org chart through the manager to the team. Failure is intercepted and sticks more with the leader.
Neither is 100%, but if you try to push failure 100% onto the team, you’re going to have a really bad time personally and be rightly reviled as a weak leader by your team, your peers, and your senior leaders.
> effusive credit flows down the org chart through the manager to the team
not in my experience tbh.
i worked 16 years as an Engineer across 6 orgs including Fang. What I saw is that the closer you are to management the more valued and rewarded you are.
Simply because you are doing the management's dirty work (your influence is direct) and you have more insight into finances, so it's more difficult for them to underpay you.
Credit very rarely flows down and when it does, in very generalistic way "thanks to X and Y and also the team for their efforts".
I transitioned to EM and I assure you it’s a lot more work. If you don’t want to fight with your company’s trash IDE, then maybe. But if you think you’ll have less on your plate as an EM then either
1. You’re wrong and you’ll find yourself working more
2. You’re right and you are screwing over your team.
In a similar boat and have tried this recently, but I can't say it worked. The only real solution seems to be to go elsewhere.
There is something supremely disgusting in being forced to work on projects ("hey client X needs this Y thing done asap") that you don't care about, know they have a close to zero chance of working to an acceptable degree and also know you'll be blamed for their failure. Over and over and over.
Not how it works. You now are responsible for making other people complete work you don’t care about. If they fail, you also fail. Way more risk, way less control over the outcome. Plus your tech skills atrophy the whole time, making you less valuable outside your org leading to a kind of employer lock in.
You must have some very good managers who make their work seem effortless. Perhaps get them to be a mentor when you make the shift so when reality strikes you won't have to deal with it by yourself.
You don't "grow" into a manager, you just delegate problems to other people. The manager is a meta problem solver, the individual contributor are the real problem solvers.
Understanding the meta problem is not the same as understanding the problem and vice-versa.
Michael Jordan's supervisor is not Michael Jordan. They're people with valuable, non trivial skills that take time and effort to cultivate, but people don't buy tickets to go see a manager, just like customers don't buy manager deliverables, they buy individual contributor deliverables.
The customer doesn't buy issue tracker tickets, or speeches, or gantt charts, or burndown charts, or diagrams, or whatever manager deliverable of your choosing. They buy working software that is stable, performant and that has an ergonomic and polished interface. The manager's job is to facilitate an environment where that can happen. They are not the neurons of the team, they're more like the glia of the team.
That is, if you build a team consisting solely of managers and ask them to solve a problem, and designate one of them as the manager, they won't be an effective team. Did they really "grow"? Or they pursued a different track?
MJ was a great player but there is no way the Bulls would've won all those championships without his team mates (who themselves were of great caliber). It takes a great coach to harness talent and manage it in a team.
Software engineering is a team sport in that same regard. If we're lucky we have a MJ on the team but still needs to be managed for their own (and the team's) good.
I always like to think of EMs as engineers who rely on other people to write code, instead of writing code directly themselves. As anyone who has played a game of telephone can attest, writing code through people is a lot harder than writing it yourself.
One should be very wary of any blanket assumptions of management roles implying any kind of more seniority than engineering roles. They are different activities, different jobs. That's it. Not every engineer must be made a manager at some point to grow. An engineer can grow in engineering, becoming more specialist in various areas. I wish people stopped to conflate these things.
I know engineering manager can be loads of work. I wouldn't want to do the job my engineering manager is currently doing. I would probably die of boredom in meetings or completely fail, as my brain shuts off during the meetings or something. I want to build things. With code. That does not make me any less of a senior.
Some companies just don't have a full career track outside of people management. It's not really a matter of company size or age. I suspect most developers are okay with stunted career tracks for office management, system administration, or customer support. In some companies (including organizations that view themselves as software companies), the same attitude simply extends to software development as well.
I wish these different organizational choices would be more widely known. My current employer nowadays has these non-management career tracks, but I'm not sure if we communicate them clearly as one of the reasons to join the company.
In my experience, IC tracks in general tend to cap out based on the complexity and value of the skillset/domain to the business.
A major accounting firm may have some senior engineers, marketers, etc. but since their work isn’t “core” to the business, the top tiers of the technology and marketing tracks will tend to be exclusively management roles — whereas accountants will be allowed to… account… up to a much higher seniority level before they get forced into management.
I don't see managers who grow and the reason is because they often weren't growing as engineers...
The most common reason I see people become managers is because they weren't cut out for engineering work or it burnt them out over time. Many couldn't keep up with the ocean of new technologies and philosophies software has gained in the last few decades and so they are relegated to being a machine that checks email for twice a starting engineers salary.
Some managers really have done so to steward a company or team through a problem but so many more of them just want to "check out" essentially and in just a few short years loose most of the engineering context value they had and become some degree of roadblock to progress because sadly they want their cake and they want to engineer it too...they often create tasks and conversations they don't make sense or deliverables that are missing the point because they are no longer engineers no matter how badly they still want to identify as one after leaving a organic growing codebase.
I get it they have families and they are getting older and the kids coming out of college are honestly intimidating sometimes but that's a problem with the absolute lack of upward mobility within engineering and they unhealthy standards of modern corporate culture.
It's sad really. Very intelligent opinionated people slowly go from talking about solutions in concrete terms to a mix of language about deliverables, burn charts, agile, circling wagons, getting on the same page, and determining a funnel for Q4 while the software they are talking about has no unit tests and they themselves have determined that it's not part of the MVP...
If they could go back 10 years and hear themselves I wonder what they would think of the people they've become...
The subject of seniority and progression to management pops up from time to time here in HN, and we usually see the same tired arguments. Managers are useless, it's not real work, seniority is an illusion, etc etc.
There's nothing wrong with being good at your job and not wanting to change your role. But it's obvious that in most situations, progressing to other roles is necessary if you want to have more influence and control over your product - and usually higher compensation as well. In a professional kitchen, obviously the person actually cooking has to be really good. That doesn't mean this person gets to choose the menu of the restaurant, and their name also won't be displayed outside. They are more easily replaceable than a chef, even if they are very competent technically. As most things in life, it's all about trade-offs, I just think that ignoring what the actual pros and cons are will lead you to bad decisions down the line.
They definitely are. But the metrics looks different. For example, if managers start losing a significant amount of people (because they can’t do a good job retaining and developing talent) it will be obvious to higher ups that the person has to go.
I’ve seen FAANG managers with atrocious 360 reviews have their entire teams quit (the company) and hit director 5 years later. It usually takes breaking a law or total role/team/project/program/org elimination to oust a manager.
I'm building a game about engineering management at FAANG that shows the spectrum of managerial role. Might be good to stop reading about managers but try it out, not sure everyone has opportunity to try it at work - https://store.steampowered.com/app/2436030?utm_campaign=hn1
It is not "growing". It is changing the work which can be good or bad. I "grew" to a manager (CTO in this particular case) in 100 person company some 20+ years ago and this got me to the point that I said fuck it, went on my own and am still happily doing creative work designing and implementing (including programming) products for clients and for my own company.
Managing people is the last thing I want to do professionally as a software developer. If I wanted to manage people, I would've gone that route a long time ago. Now sadly this is also the only way for me to "rank up" further in the company I've been working for the last 10 years. I guess I'm either stuck for now or I'll need to leave.
I don't understand this view point that is so common on HN. I can only assume that most engineers on here are quite junior.
Of course you grow as a manager. But you're right you're not growing as a technical expert - that's not the goal of managing. Managing becomes more about the business and less about the technical details.
It's a very different job and an important one if you know anything about running a larger company. The technical work you do as a IC is one part of many that drives the business forward.
I think there's a difference in how visible these skills are.
As an engineer it's easy to practice many new skills and also to see improvement. I might be interested in orchestration, I pick up Kubernetes course. I want to build iOS app, I start learning Swift. After a month or two I can see a difference in my skills. Others can see it too - I contributed to iOS app at work which I haven't done before, it's a new skill I learned.
As a manager, I need to be better at negotiating with stakeholders, or recognizing underperformance, or interviewing candidates. I can read books, take courses, but I can only see my improvement over longer period of time. What's more, most of people around me won't see that I'm a better interviewer now, or that I'm better at helping to improve individual performance. It doesn't mean I stopped growing, it doesn't mean I don't cultivate new skills. They're just different skills.
Got the advice from several senior architects / managers to never "grow" to manager of you deeply enjoy engineering. The skills for management and engineering are orthogonal it seems.
Apparently this is a junior person's blog promotion and hence the controversial (or plain wrong for me) title which has raised several discussions here.
Since we are talking about it though, let's apply the 5 whys:
1. Why do companies need managers? Because they need they're employees to be managed
2. Why do companies need their employees to be managed? Because they are not certain that they will follow the company's short/long-term strategy and vision
3. Why are they not certain? Because they're having trust issues
4. Why are they having trust issues? Because they are not investing in proper hiring
5. Why are they not investing in proper hiring? Because it's expensive and requires tremendous multidisciplinary skills, time and effort
We are dealing with one night stands masked as serious dates ladies and gentlemen. Managers are just pawns which patch the original issue. Solving hiring would make them redundant.
I see what you mean and you're not wrong. However given that you hire good senior engineers and that you trust them, most companies can resolve these issues. Coordinating activities is a project manager's thing which should have to do with gantt diagrams and not with micro-managing engineers. Very few companies are having complex software similar to OS, therefore being in need of the management that you're referring to. It's astonishing how managers responsible for building a button are reading the mythical man month and think they are the same.
One issue is that people can agree on a general vision but differ completely on what problems exist, how they could be resolved, and what series of decisions support each other. It becomes overwhelming for people to think about.
Focus on writing down your thoughts and supporting them. Build a case for something and then make decisions and execute. If you can put together a cogent argument, even people who disagree can often stomach working hard on it as long as you acknowledge their criticism and occasionally reevaluate past decisions.
Alternatively, when an organisation reaches a certain size, there becomes enough high level coordination needs for it to be a full time job, and also some HR-type functions work better when distributed to the edges rather than the central org.
This trope of "growing" from an engineer to a manager needs to die. I grow as an engineer when I learn new stuff or become better at building things. Becoming a manager is changing jobs, not growth in any meaningful way. Not even in salary in many places
Even in FAANG it's a promotion. If not immediately, the cap for ICs is much lower.
Principal engineer at FAANG (L8): likely one of the best engineers in the world.
Engineering director at FAANG (L8): manager who's been there for a while and is good at acquiring more reports.
As a ratio, there are far more eng directors to managers than principal engineers to engineers.
All that said, know what you want in your career. If you love building, build. If you want money, do management.
> If you want money, do management.
If you make it to my comment, please - do not go into management for the money. If you want to build, then remain an IC. If you want to grow other engineers, further THEIR career, make THEM better - go into management.
The friends of mine who ended up in management for the money and complain about their reports make me so angry.
9 replies →
Your point is that managers are more upwardly mobile, which is fair, but that doesn't mean when you make the switch it is a promotion. G9 IC -> M0 will not increase your salary. It does grant you more power, but that is not a promotion per se.
The other thing to watch out for is manager growth over the last 10-15 years was a result of the structural needs of an unprecedented tech bull run. Now that the industry has moved into belt-tightening mode, the heaviest scrutiny is falling on managers. The type of political games a typical 35 year-old EM (5 years coding, 10 years EM) may not be as effective as they were in the previous environment. There are a LOT of EMs getting pipped or knocked back to IC these days, whereas ICs with a bit of product/UX sense, ability to think a bit beyond their silo, and willing to work on "boring" business applications will continue to be highly valued, especially given the amount of dead weight that has found its way in by grinding leetcode.
2 replies →
It’s true but for most people in practice they won’t make it to L8 either as IC or manager so it’s really more a question or do you want to finish your career as an L6 IC or manager.
7 replies →
You nailed it. The requirements spelled out in the career ladder for IC vs. manager at FANG is ludicrous.
During calibration the ladder generally isn't consulted but it could be weaponized at any time. It is quite intimidating.
1 reply →
It really depends. Our company (FAANG equivalent) has a lots of high ICs. There are lots of high level ICs because there are far fewer Techlead Managers who covers both sides. But tl managers are way too hard so most ppl pick one track to stick with.
High level ICs have LOTs of weights on the technical directions. They are not replaceable by the managers.
I would also say that being an engineer at L8 is a meaningfully different set of skills than L7. The whole ‘what got you here won’t get you there idea’ starts at L7 for either track…
Changing job from being cleaner to programmer is also interesting wage but is not "growing into".
I don't think what you described is a promotion? M1 = IC6, M2 = IC7, etc as you said. As far as the number of directors and VPs, sure there are probably more but I would describe that more as "it is easier to get promoted as a manager than as an individual contributer past IC6"
However... This is starting to change. We now have engineers reporting to higher levels, so basically each manager has an equivalent IC reporting directly to them. In theory this means the numbers are more equivalent.
There's no money in the world that will want me attend meetings all day.
Converting from manager to engineer at the same level requires a special test in at least one FAANG company. Doesn't that mean going from manager to IC is a promotion? And then obviously the other way around must be a demotion?
> Even in FAANG it's a promotion.
No, it is not. You switch from L6 IC to L1 M (FB/Google scale). Compensation remains exactly the same.
> If not immediately, the cap for ICs is much lower.
This is different from management being a promotion...
Congratulations, you've been working as a baker for 10 years and have perfected the art of making bread. You have now been promoted to butcher.
Umm, haven’t you just been promoted to bakery manager?
7 replies →
Hmmmm a butcher would be like a business analyst in the software development world maybe?
Both still put they hands on the product, but in completely different perspectives.
Maybe a store manager would be more applicable?
3 replies →
Instead of having been "promoted" to a shepherd?
Dammit. I was hoping for candlestick-maker.
I think it is growth or at least growth opportunity.
Acquiring incremental engineering skills is great and we should all do it. But let's admit that it's just that - incremental. You go from being a good engineer to slightly better engineer- something you already are.
When you pivot to management or something else that's more different to you - you are taking on a bigger challenge and there's no guarantee of success. In order to succeed you need to hone a whole different set of skills - and if you manage to do that, you will certainly have grown in a real way.
I totally get the sentiment that going into management isn't the only way to advance a career and I agree. I am just saying that those who take that path indeed open themselves up to a challenge and evolution.
You are taking on a different challenge, not a bigger challenge. Almost all of your comment could equally describe going from being an engineer to being a dog walker, or a sous chef, or a roofer. Entirely different, and in your new career your prior skills will rapidly atrophy and become marginal.
In my closing on 30-year career in this industry, "managers" have been the least important part of any team, and had the least impact on success or failure. I'm not anti-manager at all (although I have spent my entire career trying to stop people who think they are rewarding me or giving me a promotion by giving me more "manager" duties. I have zero interest in deciding compensation or going to more meetings), it just truly is a position that is the closest to fungible. Everyone fear mongers about AI replacing engineers, but in the real world it could far more easily replace manager level resources.
5 replies →
You could say the same about a manager becoming an engineer
4 replies →
I just don't like how often it's implied that management is the inevitable next rung on the ladder after staff or lead engineer. As if I'm not ambitious enough because I just want to be a good engineer. Employers sometimes dangle the management carrot in front of me, and some people have been outright confused when I tell them I don't covet a management role.
> Not even in salary in many places
What needs to die is this trope. Few places cut salaries when people move to EM role. This might be true for some big tech companies, but even then it's only in the beginning. If you look at companies that have unified levels for SDEs and EMs (Google, Amazon), you can see that on the same level EMs have slightly higher TC.
Not to mention that there's a whole world outside of big tech where moving to management is considered a promotion (and often the only way to grow, because dual career ladder is not implemented everywhere). The cases where EMs make more than SDEs are really way more common than the reverse situation.
[dead]
I don't get this comment. I guess because I think we are not aligned on what a manager is or maybe our engineering styles are very different. For me a manager is someone who leads through influence, in engineering managers lead towards an engineering solution. To me it just feels like a different way to solve the same class of problems, just bigger. I absolutely feel like I am doing engineer, the difference being solving bigger problems and a lot fewer problems are being directly solved by me. How do you see a management position?
IMHO engineers should also (and should be expected to) lead through influence. In my mind, as engineers grow they should be expected to tackle problems and influence solutions of increased scope, complexity and ambiguity.
Junior engineers should be able to drive smaller, well scoped projects.
Senior+ engineers should be expected to tackle complex, cross-org, ill-defined technical challenges, examples include technical mergers of company acquisitions, large scale migrations of business critical systems, technical design of big bets (also analysis on which big bets to take), evaluate new technologies/platforms, dev tooling to multiply productivity, etc
A lot of this requires buy-in and stakeholder management to succeed.
9 replies →
It may depend on the company.
On some it might be an architect level engineer who also manages the team. In others it'll be nothing more than a middle manager that only will see code on their spare time. And it can be everything in between.
So depending on the kind of move it will not have anything to do with engineering and everything to do with managing. And that's HARD. Changing your whole set of skills for another overnight it's not pleasant.
1 reply →
Yes and no. It's a common trope at many tech companies that these are two completely separate tracks, with no special upside to either.
But then, here's the reality: any large company will have a new for an army of directors and VPs, compared to only a handful of ultra-senior, visionary engineers. Take Google and compare the ratio of Jeff Dean-type folks to senior managerial staff collecting similar paychecks.
So yeah, if your goal is to retire early without depending too much on luck or on being exceptional, management is your career growth path. For better or worse.
> I grow as an engineer when I learn new stuff or become better at building things. Becoming a manager is changing jobs, not growth in any meaningful way.
That's a very linear outlook. One can also grow be expanding the base of skills one has, and that often comes by shifted to adjacent jobs where you can capitalize on your first skill. There's some benefit in engineers who want to grow by transitioning to manager: nobody wants a non-engineer as your manager/leader - how would they understand your work or attract fantastic talent?
Now, don't get me wrong: I'm not saying for an engineer to grow one has to become a manager, but it is a legitimate strategy.
in a lot of places they refuse to let engineers become managers. Technical experts, distinguished engineers, CTOs, etc, but management is distinctly different then writing code. Human beings are not computer programs. Being good at one doesn't mean you'd be good at the other whatsoever.
If it makes you feel any better, in many big companies that's already the case. Talking about modern Big Tech, not dinosaurs like Oracle or IBM.
At my company (which I feel more comfortable not disclosing), the scale looks like this:
senior engineer == engineering manager.
staff engineer == senior engineering manager.
senior staff engineer == director / VP
This is in terms of scope, responsibility, salary, whom you report to and on which level... everything.
1 reply →
>not dinosaurs like Oracle
I doubt Mark Reinhold, Brian Goetz or John Rose are undervalued at Oracle because of them not being managers.
1 reply →
I was about to write the exact same comment. I wish engineering experience was more recognized, especially in software fields.
It's a different set of tasks and skulls but having a background in the relevant domain is in my opinion required. Working in ML, having a manager that doesn't understand statistical significance, or even key metrics like precision and recall is a recipe for unhappy employees and bad decisions.
I think that this has been somewhat nullified by the changes over the last few years where managers are supposed to be people managers exclusively, while high level ICs supposed to create direction and evaluate technical merit.
It is a difficult balance.
Agreed. I’ve done both, and while a good Engineering Manager has to be a good engineer (how is one supposed to supervise something they don’t understand), mastering one skill set more or adding a second one isn’t more or less “growth”.
Changing and growing aren’t mutually exclusive.
While you can absolutely be a manager without extensive IC experience, most people will benefit greatly from having deep IC experience before becoming a manager.
Nobody goes from engineer to CEO with a million dollar golden parachute for doing a terrible job. As an engineer you work your ass off for someone else to take all the credit and leave you homeless.
It’s growing - hell it’s escaping Getting as far away from working constantly for no reward and more goddam leatcode Interviews where 25yo who know nothing gatekeep your career - maybe you live in a different reality than I do, but I can always just build for myself at home.
People do not go from an engineer to CEO full stop. And also, plenty of CEOs with a million dollar golden parachutes do terrible jobs. So does large parts of management.
2 replies →
When I gradually became a manager, I continued to be better at building things, not only with my hands, but also by aligning and enabling other engineers and entire teams. So in a grand scheme of things it is the same way, with greater impact and responsibility.
I think of it as horizontal vs vertical. An IC grows horizontally over their career as they learn new technical things. A manager grows vertically as they move up the chain and are managing more and more people.
Well ... maybe it's not a "trope"?
[dead]
To put it politely I have a distaste for being referred to as an ‘individual contributor’ (or even worse a ‘resource’). I also don’t like being ‘managed’ and have gained little from ‘line management’ over 20+ years developing software systems.
I do however find it extremely motivating to help a true leader solve their problems in a self-organising team of collaborative peers.
I can’t fathom why so many software organisations are still structured for hierarchical command and control, with the trend of good engineers being ‘promoted’ to management?
Yes I think we need more leadership: with organisations cultivating a culture of leadership, communication, openness and trust. Everyone can display leadership skills depending on the context/task within a team. It is not something reserved for the ‘manager’ (appointed leader).
Do we really need more ‘management’? I don’t think so. Management != Leadership.
Would be keen to see some more articles along the lines of ‘Growing leadership skills for engineers’.
I can fathom it: the larger the organization, the more important it is to the people with power to treat everything else as abstraction.
I'm told Seeing Like a State shares this insight.
I also hate it. But it's unfortunately "left as exercise for the reader" to come up with an alternative that concentrates power differently.
I have been trying to research alternative(s) - with limited success. For example book: https://www.amazon.co.uk/Moose-Heads-Table-Karin-Tenelius/dp... , podcast: https://leadermorphosis.co/ , training: https://www.tuffleadershiptraining.com/ , jobs: https://info.jobswithnoboss.com/
At current workplace trying to subtly suggest/introduce that there’s an alternative way…
1 reply →
You forgot how great it is to be called 'Talent'
The professional managerial class have completely taken over most tech companies now. 'Technologists' trading buzz words, peddling 'influence' and crowding out the people that actually build things.
Good points! I once read that Talent is acquired, then considered property and referred to as ‘resource’ (sorry no reference).
Red flag == ‘Talent Acquisition Manager’ messages on LinkedIn.
At my last job (lead) we were referred to as "onshore resources" despite being employees.
There is a massive difference in maturity crossing from individual contributor to manager between the military and corporate world. Never in the corporate world have I seen a junior manager tell their boss ”no” and pushback as I have in the military.
In the corporate world it’s all about hiring/firing versus the military where it’s all about developing people and liability at all levels. The key consequence of that is that in the corporate world people are eager to play it safe and follow trends versus the military where its generally considered a safe environment for learning more tolerant of controlled failure. Tolerance of controlled failure is how I learned to become a developer while working at Travelocity a billion years ago and I have not seen that since (in the corporate world).
Another possibly related difference is the training managers get. There are military careers where you know on day one which leadership responsibilities you will take several years down the line. That’s a stark contrast to starting out as an engineer and then transitioning as described in the blog post.
This. The state of leadership training in our industry is abysmal. Most managers I've met get little to no training when they transition to leadership roles. It's slightly better in larger companies, but as you say - a stark contract with military
3 replies →
I disagree, however I never served in the military. There are companies which provide a safe environment for mistakes to be learning opportunities, its the culture that defines that. Rarely will an actual mistake lead to someone being fired where I work, usually if it does its because of attitude and someone believing they can do no wrong.
If you bring down the production system with a change that is a learning opportunity and your team should be supportive (i.e. help you recover it) when these things occur. Thats why its important to be constantly deploying code and knowing how to roll back, etc.
I’ve worked at a company that did releases months apart and everything was supposed to be perfect, it never was. In that culture it was all about posturing, covering up mistakes and blame-game which is utterly frustrating to work in.
The problem with management roles today is they are watered down to the point of being basically pointless. Product people determine the shape of things and priorities. Tech leads determine how things should be done.
The manager is supposed to shepherd career growth and decide how much people should get paid. In my view this is a really part time job at best.
I think we need to go back to coupling more of these roles together, similar to what would happen in a startup. A strong leader should be able to fill product, tech lead and management roles.
Like a team ceo. I strongly believe this person should be responsible for a teams success or failure. Grant this person the right to hire/fire members of various disciplines. Tell this person to chase certain revenue numbers or another mission. Give this person the bonus money/product dividends to share with the team. I believe all this will drive this person to really build a team, instead of just managing it.
But demote them to smaller projects when they fail to deliver. And allow team members to apply to work for a different team if they trust the team ceo there more. Like an internal startup environment but teams. This is how I would try relentlessly to structure my company.
This should only be the case if the _team_ can fire a failing manager.
1 reply →
The problem is that it’s 10x harder to find someone who’s good at two things vs two people who are good at one thing.
Managers have to manage up, down and outward. Most ICs will generally see downward management, but not the hours put in reporting up to executives, aligning and planning initiatives, resource/ allocations/PI’s, budgeting, procurement, audits, client/product demos/presentations, hiring and sometimes firing.
Managing down tends to be the easy part, career planning, 1:1’s, performance/development and running rituals is a cake walk. The only real hard part of managing down is when you have an employee that’s poisoning the well or is on a PIP.
Oh, and some managers also have to still pick up cards and push code in some orgs.
Nailed it!
Most posts here are from those who have never walked in a manager's shoes so only know what they see (or hear/read).
Think about it, minus a few exceptions, most managers are paid better than the engineers they manage. Now why would exec/sr mgmt. do pay more unless they are getting their money's value?
I have one week left as a manager before I start a new job as an IC. I am so excited to change back to being responsible for only my own output.
I'm on the journey back too and can't wait to find a role where I actually have some creative input and decision making again.
This obviously varies from role to role but I was told I would be highly involved in deciding what the team does and how they go about it. The reality is that I am responsible for arbitrating the delivery of decisions from more senior managers to the teams and the decisions from the teams on how they execute on those decisions back to the managers.
Facilitating the growth of other engineers is wonderful but, frankly, I can do that (and was doing that) as an IC.
If I'm honest I don't think the exact role I want exists out there but I think I'll make a far better "lieutenant" to a manager who actually likes the job than I make a manager who is becoming increasingly unengaged with their own role.
> The reality is that I am responsible for arbitrating the delivery of decisions from more senior managers to the teams and the decisions from the teams on how they execute on those decisions back to the managers.
"What would you say... you do here?"
I experienced the exact same things. I have never before felt so accountable for decisions that I have such little input on.
If it were only that simple. Often one needs to be at least a team lead to set the technical direction. As an IC, I sometimes found myself being asked to implement a solution in a form that I did not agree with.
With the right team/leader, there'd be room for your inputs on the matter. Even if you find yourself in a not-so-good team setup, I'd argue there's still merit in letting your opinion be known, regardless of whether you end up implementing said solution in the way you were told or not.
2 replies →
I don't think that changes much. To oversimplify; by telling you how to do it, the team lead is taking responsibility for the outcome of your output. You are just responsible for doing it how they said.
1 reply →
Good for you! Just like software engineering, people management is not for everyone. Hope you build kick-ass software in your next role.
As others here have said, you don't grow from engineer to manager, you grow from engineer to lead engineer, or architect, or another similarly technical role.
I was recently promoted from Principal Engineer to Director of Technology in $JOB, and the difference has been striking, mostly in the ability to influence things so we can build the right technology before we start. That feels like a much more natural step for an engineer than throwing away their entire skillset and moving them to a position that requires an entirely different one.
If you want to grow your engineers, give them more (and higher-level, higher-impact technical stuff to do. If they want to become managers, great, but there's not as much overlap between engineering and engineering management as most people seem to think.
A coworker and friend is both an engineer and a manager, and he happens to be great at both of those. Instead of losing one of the skillsets, he has a role where he both manages his team and sets the technical direction for them. This means he manages a much smaller team than he would otherwise, but he loves doing both, so this a natural fit for him.
All this is to say, build your roles according to your people, don't shoehorn them into labels that other companies have told you is "how to do things".
Are you trying to say the Director of Technology is not a management role? Because that doesn’t align with what I’ve seen.
I'm trying to say my Director of Technology role isn't a management role (our Director of Engineering is). I'm responsible for the technologies that we use, develop, maintain, etc, but not the people or teams that do it, and it works very well for us.
1 reply →
Director of technology is usually not. There is no direct reports. What I've seen is this role existing alongside a director of engineering role which does deal with management.
Engineer to manager isn't "growth", it's a complete career shift. Fine if you want it, torture if you don't.
"Dear Engineer, you are so good at your job we've decided to have you stop doing it and do a different job with an almost completely disjoint skill set. You get to do something that you will most likely hate and be bad at. Plus you can never go back to your old life."
Sounds a lot like the Peter principle
https://en.wikipedia.org/wiki/Peter_principle
I mean, you can definitely go back, there's just friction to doing so and it won't happen unless you are intentional about it. Might be more accurate to say you can go back, but it will never be the same now that you've had the veil pulled back on how things are being coordinated behind the scenes.
Interested in moving from Engineer to Manager because I hope to do less work. Happy to do a few meetings, send a few emails, rather than actually having to build stuff that i don't care about.
It's even better if as you say the success is determined by the team, because then also the failure can be pushed on the team.
Edit: FWIW not that I want to be a bad manager. The environment is what shapes your incentives and behaviours.
I've done both and I can assure you that management is not less work.
In fact, you are more likely to work longer hours, and attend meetings at stupid times because that's the only slot you can get the more senior managers to meet at.
However, you sound disillusioned with your work, and maybe you do need to transition into something else. A new challenge can revitalise you, and it doesn't have to be forever.
I've met plenty of engineers who seem to believe that everyone else's non technical role is easy. Keep an open mind, and don't approach new opportunities with a negative attitude, or you will probably remain discontented.
> I've met plenty of engineers who seem to believe that everyone else's non technical role is easy.
Not easy. But it's the difference between being the one who is approving and the one who is doing the work.
The one who has some autonomy and the one who doesn't. The one who is valued and the one who isn't.
Having to attend OOH meeting is less stress for me, then having to build something OOH and make it work. One requires communication, politics, the other one actual tangible deliverables.
> you sound disillusioned with your work
yes, you're right.
3 replies →
> I've met plenty of engineers who seem to believe that everyone else's non technical role is easy.
In my experience it’s like that (I’m talking about engineers vs eng. managers). Another significant difference is the amount of work, I believe: as an engineer I work 4h/day but those 4h are “hard” hours (fully focused) and my brain ends up a bit exhausted after. But that’s all I do in the day for work. On the other hand, eng. managers do more lightweight work, but work longer hours.
I have to say that in my experience, what my eng. managers were doing all day was: 1:1s, meetings with other managers to decide how to shift around people, interviews, being present at some sprint plannings without saying much, being present at some daily meetings without saying much.
8 replies →
> In fact, you are more likely to work longer hours, and attend meetings at stupid times because that's the only slot you can get the more senior managers to meet at.
Unless you work with someone internationally and the only time both teams are awake is at ungodly hours for both, so you never get any meetings at normal times.
1 reply →
In my experience engineers have more “free time” than eng. managers. As a senior engineer I have not many meetings per week, and the tasks I need to accomplish I can arrange time for them the best way that fits me. So, on Monday I could work fully focused, let’s say, 4h, and call it a day. On Tuesday spend 2h in meetings and another 2h to do PR reviewing… I have almost absolute control over my day, and that feeling is great.
On the other hand, even though eng. managers mostly do meetings, their calendars are usually packed with them. Even worse, they may have one meeting at 8am, another at 12, and another at 4pm… that kills your day completely since you have to stay available during the whole day. Definitely something I would hate.
Meetings filled with endless bike shedding about trivialities, bickering about specs, push and shove over changes in scope and delivery dates… and then every waking moment outside of those meetings, you’re either following up the above from previous meetings or scheduling new ones. Not a fun time.
The flip side is if it’s “crunch time” it’s not the manager that needs to work 12 hours or weekends to get something shipped.
3 replies →
That's an extremely myopic and immature view of what management is. You have probably only worked with incompetent managers and your experiences reduce a role that can be both stressful and complex to nothingness.
Ironically, competent managers also make it look easy. Because they must understand that their mood, behavior and what they say can really impact the morale of their reports and their relationships in the organization, many display a calm and professional demeanor. To the untrained, this outward apperance obscures the fact that they work very hard to position their team for success; and navigate, mitigate or repel shitstorms.
Exactly, what merit is there to putting a manager that pushes failure onto the team? Might as well have the team itself report to senior management if one is too eager to get out of the way.
That’s what’s difficult about leadership: success and observable, effusive credit flows down the org chart through the manager to the team. Failure is intercepted and sticks more with the leader.
Neither is 100%, but if you try to push failure 100% onto the team, you’re going to have a really bad time personally and be rightly reviled as a weak leader by your team, your peers, and your senior leaders.
> effusive credit flows down the org chart through the manager to the team
not in my experience tbh.
i worked 16 years as an Engineer across 6 orgs including Fang. What I saw is that the closer you are to management the more valued and rewarded you are.
Simply because you are doing the management's dirty work (your influence is direct) and you have more insight into finances, so it's more difficult for them to underpay you.
Credit very rarely flows down and when it does, in very generalistic way "thanks to X and Y and also the team for their efforts".
Success and failure are determined by the team. You as a manager would be responsible for the outcome.
The thing being managed is the performance of the team. Bad performance == Bad management.
I transitioned to EM and I assure you it’s a lot more work. If you don’t want to fight with your company’s trash IDE, then maybe. But if you think you’ll have less on your plate as an EM then either
1. You’re wrong and you’ll find yourself working more 2. You’re right and you are screwing over your team.
Same here, I just need to work on my sophistry skills, and learn to make loyal friends in the right places.
In a similar boat and have tried this recently, but I can't say it worked. The only real solution seems to be to go elsewhere.
There is something supremely disgusting in being forced to work on projects ("hey client X needs this Y thing done asap") that you don't care about, know they have a close to zero chance of working to an acceptable degree and also know you'll be blamed for their failure. Over and over and over.
Not how it works. You now are responsible for making other people complete work you don’t care about. If they fail, you also fail. Way more risk, way less control over the outcome. Plus your tech skills atrophy the whole time, making you less valuable outside your org leading to a kind of employer lock in.
Ha! Love the honesty.
You must have some very good managers who make their work seem effortless. Perhaps get them to be a mentor when you make the shift so when reality strikes you won't have to deal with it by yourself.
As someone who has done both, they're very different skill sets. You do NOT grow from one to the other.
Just stop this nonsense.
You don't "grow" into a manager, you just delegate problems to other people. The manager is a meta problem solver, the individual contributor are the real problem solvers.
Understanding the meta problem is not the same as understanding the problem and vice-versa.
Michael Jordan's supervisor is not Michael Jordan. They're people with valuable, non trivial skills that take time and effort to cultivate, but people don't buy tickets to go see a manager, just like customers don't buy manager deliverables, they buy individual contributor deliverables.
The customer doesn't buy issue tracker tickets, or speeches, or gantt charts, or burndown charts, or diagrams, or whatever manager deliverable of your choosing. They buy working software that is stable, performant and that has an ergonomic and polished interface. The manager's job is to facilitate an environment where that can happen. They are not the neurons of the team, they're more like the glia of the team.
That is, if you build a team consisting solely of managers and ask them to solve a problem, and designate one of them as the manager, they won't be an effective team. Did they really "grow"? Or they pursued a different track?
MJ was a great player but there is no way the Bulls would've won all those championships without his team mates (who themselves were of great caliber). It takes a great coach to harness talent and manage it in a team.
Software engineering is a team sport in that same regard. If we're lucky we have a MJ on the team but still needs to be managed for their own (and the team's) good.
Can't wait for "how to automate away engineering manager" articles in a few years.
You can't wait to report to a bot?
I always like to think of EMs as engineers who rely on other people to write code, instead of writing code directly themselves. As anyone who has played a game of telephone can attest, writing code through people is a lot harder than writing it yourself.
One should be very wary of any blanket assumptions of management roles implying any kind of more seniority than engineering roles. They are different activities, different jobs. That's it. Not every engineer must be made a manager at some point to grow. An engineer can grow in engineering, becoming more specialist in various areas. I wish people stopped to conflate these things.
I know engineering manager can be loads of work. I wouldn't want to do the job my engineering manager is currently doing. I would probably die of boredom in meetings or completely fail, as my brain shuts off during the meetings or something. I want to build things. With code. That does not make me any less of a senior.
Some companies just don't have a full career track outside of people management. It's not really a matter of company size or age. I suspect most developers are okay with stunted career tracks for office management, system administration, or customer support. In some companies (including organizations that view themselves as software companies), the same attitude simply extends to software development as well.
I wish these different organizational choices would be more widely known. My current employer nowadays has these non-management career tracks, but I'm not sure if we communicate them clearly as one of the reasons to join the company.
In my experience, IC tracks in general tend to cap out based on the complexity and value of the skillset/domain to the business.
A major accounting firm may have some senior engineers, marketers, etc. but since their work isn’t “core” to the business, the top tiers of the technology and marketing tracks will tend to be exclusively management roles — whereas accountants will be allowed to… account… up to a much higher seniority level before they get forced into management.
More often than not I've seen engineers moving to manager roles because they weren't great at engineering.
I don't see managers who grow and the reason is because they often weren't growing as engineers...
The most common reason I see people become managers is because they weren't cut out for engineering work or it burnt them out over time. Many couldn't keep up with the ocean of new technologies and philosophies software has gained in the last few decades and so they are relegated to being a machine that checks email for twice a starting engineers salary.
Some managers really have done so to steward a company or team through a problem but so many more of them just want to "check out" essentially and in just a few short years loose most of the engineering context value they had and become some degree of roadblock to progress because sadly they want their cake and they want to engineer it too...they often create tasks and conversations they don't make sense or deliverables that are missing the point because they are no longer engineers no matter how badly they still want to identify as one after leaving a organic growing codebase.
I get it they have families and they are getting older and the kids coming out of college are honestly intimidating sometimes but that's a problem with the absolute lack of upward mobility within engineering and they unhealthy standards of modern corporate culture.
It's sad really. Very intelligent opinionated people slowly go from talking about solutions in concrete terms to a mix of language about deliverables, burn charts, agile, circling wagons, getting on the same page, and determining a funnel for Q4 while the software they are talking about has no unit tests and they themselves have determined that it's not part of the MVP...
If they could go back 10 years and hear themselves I wonder what they would think of the people they've become...
The subject of seniority and progression to management pops up from time to time here in HN, and we usually see the same tired arguments. Managers are useless, it's not real work, seniority is an illusion, etc etc.
There's nothing wrong with being good at your job and not wanting to change your role. But it's obvious that in most situations, progressing to other roles is necessary if you want to have more influence and control over your product - and usually higher compensation as well. In a professional kitchen, obviously the person actually cooking has to be really good. That doesn't mean this person gets to choose the menu of the restaurant, and their name also won't be displayed outside. They are more easily replaceable than a chef, even if they are very competent technically. As most things in life, it's all about trade-offs, I just think that ignoring what the actual pros and cons are will lead you to bad decisions down the line.
Are managers also stack ranked and pipped like engineers at many companies?
They definitely are. But the metrics looks different. For example, if managers start losing a significant amount of people (because they can’t do a good job retaining and developing talent) it will be obvious to higher ups that the person has to go.
I’ve seen FAANG managers with atrocious 360 reviews have their entire teams quit (the company) and hit director 5 years later. It usually takes breaking a law or total role/team/project/program/org elimination to oust a manager.
Im curious about this too
I'm building a game about engineering management at FAANG that shows the spectrum of managerial role. Might be good to stop reading about managers but try it out, not sure everyone has opportunity to try it at work - https://store.steampowered.com/app/2436030?utm_campaign=hn1
Like what I see so far
This is a fun idea. When do you expect to release?
It is not "growing". It is changing the work which can be good or bad. I "grew" to a manager (CTO in this particular case) in 100 person company some 20+ years ago and this got me to the point that I said fuck it, went on my own and am still happily doing creative work designing and implementing (including programming) products for clients and for my own company.
Managing people is the last thing I want to do professionally as a software developer. If I wanted to manage people, I would've gone that route a long time ago. Now sadly this is also the only way for me to "rank up" further in the company I've been working for the last 10 years. I guess I'm either stuck for now or I'll need to leave.
Management is where engineers stop growing. Managers aren't regularly cultivating new skills as engineers are.
I don't understand this view point that is so common on HN. I can only assume that most engineers on here are quite junior.
Of course you grow as a manager. But you're right you're not growing as a technical expert - that's not the goal of managing. Managing becomes more about the business and less about the technical details.
It's a very different job and an important one if you know anything about running a larger company. The technical work you do as a IC is one part of many that drives the business forward.
Management doesn't drive a business forward. Leadership does. Managers are not leaders but some leaders are managers.
I think there's a difference in how visible these skills are.
As an engineer it's easy to practice many new skills and also to see improvement. I might be interested in orchestration, I pick up Kubernetes course. I want to build iOS app, I start learning Swift. After a month or two I can see a difference in my skills. Others can see it too - I contributed to iOS app at work which I haven't done before, it's a new skill I learned.
As a manager, I need to be better at negotiating with stakeholders, or recognizing underperformance, or interviewing candidates. I can read books, take courses, but I can only see my improvement over longer period of time. What's more, most of people around me won't see that I'm a better interviewer now, or that I'm better at helping to improve individual performance. It doesn't mean I stopped growing, it doesn't mean I don't cultivate new skills. They're just different skills.
We don't need manager at all. An automation tooling with AI can do that job better than any human.
We need real engineer.
Your success is now determined more by the success of your team than by your individual contributions.
Shameless plug: https://leadership.garden/the-5-common-mistakes-of-new-engin...
Good timing: I have a post all ready for tonight on things a first-level manager can learn from a famous jazz leader, Art Blakey.
I'm not going to say it's better than this, but let's just say it's different.
That use of “growing” seems… backwards.
I usually see managers as being far less competent (in general) or valuable than engineers and leaders.
Classic example of "you don't know what you don't know" :-)
Maybe get a job as a manager, manage a few software engineers for a couple years and then see if your original (bold) statement holds true.
Effective teams don’t “manage” people.
1 reply →
This article was a nothing burger.. so id say it was a successful EM type message
*Regressing
Got the advice from several senior architects / managers to never "grow" to manager of you deeply enjoy engineering. The skills for management and engineering are orthogonal it seems.
It's downshifting from Engineer to manager.
You also downshift gear(s) in an automobile to go faster :-)
Test
Fail
[dead]
Apparently this is a junior person's blog promotion and hence the controversial (or plain wrong for me) title which has raised several discussions here.
Since we are talking about it though, let's apply the 5 whys: 1. Why do companies need managers? Because they need they're employees to be managed 2. Why do companies need their employees to be managed? Because they are not certain that they will follow the company's short/long-term strategy and vision 3. Why are they not certain? Because they're having trust issues 4. Why are they having trust issues? Because they are not investing in proper hiring 5. Why are they not investing in proper hiring? Because it's expensive and requires tremendous multidisciplinary skills, time and effort
We are dealing with one night stands masked as serious dates ladies and gentlemen. Managers are just pawns which patch the original issue. Solving hiring would make them redundant.
That’s a pretty remarkable leap you’ve made from 2-3. Coordinating activities across large organisations is hard.
I see what you mean and you're not wrong. However given that you hire good senior engineers and that you trust them, most companies can resolve these issues. Coordinating activities is a project manager's thing which should have to do with gantt diagrams and not with micro-managing engineers. Very few companies are having complex software similar to OS, therefore being in need of the management that you're referring to. It's astonishing how managers responsible for building a button are reading the mythical man month and think they are the same.
One issue is that people can agree on a general vision but differ completely on what problems exist, how they could be resolved, and what series of decisions support each other. It becomes overwhelming for people to think about.
Focus on writing down your thoughts and supporting them. Build a case for something and then make decisions and execute. If you can put together a cogent argument, even people who disagree can often stomach working hard on it as long as you acknowledge their criticism and occasionally reevaluate past decisions.
Alternatively, when an organisation reaches a certain size, there becomes enough high level coordination needs for it to be a full time job, and also some HR-type functions work better when distributed to the edges rather than the central org.