I finally decided to just not sweat over it, do work that matches my pay in 2-3 days a week and spend the rest of my time teaching better programming skills to whoever is willing to learn and has a good attitude about it. With focus on general skills that they can take to their next job rather than internal proprietary tech. I don't care that I am not getting paid extra for that, at least it feels good to be in office.
You just have to be aware of the market you are locking yourself into. I'm well aware I could be making more as a manager, or even if I let myself be called a “senior” which often overlaps in terms of having some responsibility for people/things in a manager-y way, but I pootle along as I am anyway because I know while I'm not exactly happy ATM I'd be less so the other way and I don't think that the extra compensation would balance that.
We may fall foul of AI in the not too distant future and end up stacking shelves for Tesco, but then again a lot of those management reports and decisions look rather automatable by the same LLMs too, if not more so…
[1] Of course, sometimes it is. It depends on the team size and seniority, but also depends on the expertise. I'm just saying that a manager does not have to always have a higher grade than a person on his team.
It's funny, I think I'd feel more dumb if the person beside me was crocheting half the time but still more productive than me!
And the chance of 5 random people producing something compared to the 1 you know is a huge contributor is exponentially lower too.
> Business likes predictability.
That's great. Then they should actually stick with it i.e. reward the 1 that's been contributing rather than gamble on something that might not work. It's common in sports teams, e.g. where you sell your star player and buy 5 others hoping to get more value. At the end of the day you're lucky to even get the same value.
Football doesn't have great players in an absolute sense. For the last decade, the greatest player, depending on which tiresome fan you ask, had been either Ronaldo or Messi.
Messi didn't pull up any trees at PSG, and Ronaldo's second stint at MU was underwhelming. In both cases, that's because the team tactics had to be shifted to accommodate these players, to the detriment of the other players.
My old team lead was rated highly. But he stifled the rest of the ICs. From above he looked good, from below he looked shit. He should not have been developing software, he needed to be in a process-oriented role. I believe that our productivity would have increased - certainly morale and cohesion would have - if he'd fucked off and not been replaced.
When a customer presses a button to book a taxi ride, they don't care whether the underlying database query takes O(log N) or O(N^2). As long as the price is good and they get a response within 3-5 seconds, they're cool.
This works for the absolute majority of real-world projects. Technical excellence has very little impact on the revenue, compared to other factors (product/market fit), so people making business decisions don't care about it.
>That's great. Then they should actually stick with it i.e. reward the 1 that's been contributing rather than gamble on something that might not work.
Business is always a gamble. You don't know how the market will take your product before you launch it. You don't know what the competitors will do, how the sentiment will change, let alone global events like the COVID money printing followed by an interest rate squeeze. It's like you are trying to navigate a ship in a storm, and the mechanic keeps telling you how he can shove coal 5x faster than others and hence needs to be paid more. Except, you never need it that fast, and need to have 2 onboard anyway, in case one gets sick.
You’ve now undoubtedly made your life and that of those around you worse basically on the basis that you need to be proven wrong about being a “5x engineer”.
Engineers hate the hand-wavey nature of labour markets almost as much as they hate any attempts to remotely objectively quantify their performance.
The everybody-compromises happy medium is defined career tracks with largely qualitative and certainly subjective measures of actual responsibility. Nowhere in that are you going to get the reassurance that you’re after: that you’re worth 5 other engineers, or whatever. That’s just not how things work, even in IC roles. The fact that you pose this as a means of measurement in my eyes speaks volumes as to where you’d land on this imagined scale.
Honestly 99% of professions out there wouldn’t get away with being as entitled as software engineers are. Which, yes, market forces and all that. But let’s not pretend that there are many if any unreasonable aspects of a typical dev job.
> spend the rest of my time teaching better programming skills
Are you an engineer or a product manager? If you’re a PM, sounds like you should switch roles. If you're an engineer, sounds like your manager/peers don’t know that. :)
But in seriousness, it sounds like there may be a mismatch somewhere.
I love programming and I'm more than happy to work with juniors and solve junior tasks. I feel like this industry puts so much pressure on people to be an engineer or an architect or something more than a person who writes a little script to fix something and moves on. Everything built today seems to have to be architected and scalable and I hate it.
I feel this pressure a lot b/c of big-tech promo culture.
To have a rough idea on how to scale it, should it take off, is not a bad thing. To do all the work, before it actually takes off, is.
I've spoken to managers in other sectors and it's the same for them too.
Speaking for my own experience, program-level and above management often doesn't put their money where their mouth is. Maintenance is chronically under-funded, well-articulated and respectful feedback is ignored with a thank-you. Hell more than once I've been forced to spend an entire day in a conference room with all the other relevant devs to do a "Root Cause Analysis" of a given recent crisis, and we took it seriously each time and came up with genuine solutions. But said solutions required more hardware, more maintenance, more stuff that no one wanted to budget for.
You work in that environment long enough, you learn to clock in and clock out. If you allow yourself to give a shit you'll just be constantly tearing your hair out. Those of us with some objective sense of professionalism usually evolve into the functional elites you mention, but I completely understand those who go the other way.
Those "functional elites" you mentioned? Usually they're working 20-50% more for 0-25% percent more pay. They're called the clueless because they've been conned into working more for less, usually under some clever guise like company being family or company values or the promise of a promotion that's always a cycle or two away. The essay then goes on to argue that losers are really just the clueless once they "get it." Losers understand the treadmill and lean into the tedium always aiming to save their time by playing dumb as needed. Sociopaths break out of the cycle by operating only with concern for power and switching up how they talk to folks based on whether they're clueless, losers or fellow sociopaths.
Sociopaths speak in powertalk -- an exchange of information on clear terms. It's usually veiled because the clueless and losers listen in and it makes them feel uncomfortable. If it weren't veiled it would probably sound like lawyer-jargon with lots of plausible deniability, conditions, arguing and explicit shared definitions.
Losers and clueless speak in their own languages based on who they're talking with. It's basically just lots of trying to feel okay... except for when it comes to losers speaking with sociopaths. There the only communication is straight talk, which is basically just direct requests of a master-slave dynamic (i.e. "do this"). The essay is well worth the read!
1. https://www.ribbonfarm.com/2009/11/11/the-gervais-principle-...
To keep it lighter, in the companies I've worked in the architypes of people were more like:
- The "anger problem that shouts every once in a while" guy
- The "chronic nervous person that is paralyzed by impostor syndrome"
- The "i find more problems than solutions" guy
- The "i'm here to socialize, make friends, maybe get married"
- The "i gave up 10 years ago and just want my paycheck"
- The "i'm a kid learning everything I can and am just excited to be here"
- The "i'm working on my true passion outside of work while hanging out here with you guys" etc etc
People have their own lives, not everything is just a power play of losers and elites.
I'll be honest, even if the world was exactly as you described, which it isn't, I'd choose to not see it that way so that my life wouldn't be such a bleak existance. Rather be a naive happy fool than enlightned and depressed.
There are other ways to break out of the cycle. Keep looking.
Please do not just oversimplfy a challenging problem into just "incentives".
Some people lack resilience, and they will collapse under the pressures of professional and personal life. Some people lack ambition and drive, they don't want to exceed their level of productivity no matter what you do.
It's not just a matter of incentives. If you offer the right incentives and opportunites to the wrong people, you will not get results.
The right approach here is to avoid hiring these peoples (not a perfect science). In absence of that, provide feedback expetations to provide a resaonable opportuntiy to change their behavior, then move them to other projects or terminate them.
And there are organization where non of this is possible - like government and many corporate IT.
Few people don't want to improve their productivity. Improving your productivity makes you more valuable. But plenty of people don't want to work harder. There is of course a difference!
I deal poorly with stress, and am thankful I have reached a point in my career where I can earn pretty good money in positions where I'm not pushing myself too hard.
I enjoy learning of course, and do want to get better. But that's in balance with the demands of family and the happiness and fulfillment I find in other pursuits.
I have been promoted reasonably quickly over the past 5 years without playing political games. My productivity has improved through experience, and it seems like that got recognised through promotion. But I guess it's possible I got lucky with managers making bad decisions in my favour.
I don't know if you'd want to hire me. I'm not sure I'd want to work for you. Do you find success with your approach compared to peers with a more empathetic approach to management?
Then you didn't offer the right incentives and opportunities. GP simplified it correctly.
Most people aren't lazy or malicious in the face of good rewards, they just realize there's no point working 5x for 1.1x the income after putting in 3x the effort fighting for that 10% raise. If you can't filter them out through hiring practices or termination, you're doing something wrong or you're experiencing the downside of supply/demand.
The only non-trivial thing here is the owners pushing the downside of that market back onto the managers to magically solve, because we all know saying "that's not possible" is going to make you the target of 'disciplinary actions' instead. Welcome to the catch-22 that is management, enjoy your stay.
I've found that's due to completely backwards incentives. Most people don't give a fuck because they aren't rewarded properly. If I do an excellent job and complete whatever task I'm given well ahead of schedule the only reward I get is more work. Even if I sandbag a bit and do an excellent job and complete on time, often the reward for being "better" is more responsibility or more difficult tasks (without compensation). Some folks want that, many do not. Dollars to doughnuts if your team members know that quality work on schedule will be actually rewarded then you'll find more of those members capable of producing that quality of work.
I think too many people see managing a team as "managing the people to do good work." When, in fact, managing is much more about managing the right projects/opportunities into your team's scope. I very rarely tell people what to do, because ultimately, I don't have any power to change what they do. And they'll respect me, and the project, more if they think they're making the decision instead of me.
Ultimately we are all paid to solve the problems the business needs solved, even if the solution is boring and not 'exciting' or 'cutting edge' tech (which is often). The best people finds excitement and challenge in almost any work and are self-motivated. Sure, as a manager you should try your very best to shield the team from crap work and have a healthy balance, understand their interests and find opportunities that match (even outside your team), but ultimately also work is work and is not always, or even often, possible to have super exciting bleeding edge work that fits everyone's interests. Even harder when people have a very narrow set of interests or they don't even know, they're picky, etc.
> I very rarely tell people what to do, because ultimately, I don't have any power to change what they do.
Are you a manager? you very much should be able to change what they do if you are. If project x comes along with twice the value of the current project someone is working on, you very much should be able to preempt what someone is working on. It's not ideal and we all try to avoid project churn, but it happens and needs to be handled effectively by the manager.
> And they'll respect me, and the project, more if they think they're making the decision instead of me.
I mean, delegation and ownership are fine as a mechanism to boost engagement and career growth, but you can't delegate everything (otherwise what are you doing again?). Also, what's up with the "if they think" wording here. Are they making the decision or not, are you tricking them into thinking they're making the decision?
I think the best managers are able to find relevant challenges/projects for their reports interests. Everything you're saying says to me, that you depend on in "good employees" is broadly something I see as being an option in "all employees". And I see it as a failing of me, as a manager, if I can't bridge that gap for all of my reports.
> Are you a manager? you very much should be able to change what they do if you are. If project x comes along with twice the value of the current project someone is working on, you very much should be able to preempt what someone is working on.
Yes, I am a manager. I can absolutely try and sell people on a new project. I can't make them work on it. When I was an IC, I ultimately worked on what I thought was most important, and would slowly move to projects that people asked me to work on, (but I didn't want to work on). I was an effective IC, so people couldn't complain. Don't see any reason that wouldn't hold true for the ICs that I work with, now that I'm a manager.
> I mean, delegation and ownership are fine as a mechanism to boost engagement and career growth, but you can't delegate everything (otherwise what are you doing again?). Also, what's up with the "if they think" wording here. Are they making the decision or not, are you tricking them into thinking they're making the decision?
Did you read the article? At least in engineering, if you think you're going to make the decisions just because "you're the manager", then I think you're managing backwards. If I need to make a decision, I'm in charge of convincing people it's the right decision. But I also have to listen to those people when they tell me their concerns, and change course if their concerns are reasonable.
It sounds to me, if you're a manager, that you're only an effective manager for people who are already succesful. I think the thing that makes someone a good manager, is that they can make anyone effective. Everyone can grow and flourish under you.
Sadly, we're not. And that's the gist of the problem.
We're paid to do whoever's in power wants us to do and it might not solve any business need. Often some manager or otherwise decides to implement something that might not even be what customers want. It's not about the challenge or anything like that. A lot of people are frustrated at implementing things that make no sense.
> If project x comes along with twice the value of the current project someone is working on, you very much should be able to preempt what someone is working on
Only if think you control your destiny. Your manager above may have their own direction or ideals.
There's usually leeway in this: the business has many needs and they get prioritized depending mostly on perception (project impact projections are usually fuzzy with no concrete evidence to back them up)
A manager can be good at pitching interesting/rewarding problems to solve, and get the higher ups' buyin to prioritize them over more boring asinine work.
As an uninvited specific action recommendation: I've made it a habit to look through PR's (merged and unmerged) regularly. I point out opportunities for improvement, and more importantly I call out excellent solutions. The excellence can be in the form of elegance or just hard graft finding a bug. It's a small action that's additive and doesn't interrupt work. But it does wonders at setting the tone.
One thing I've found very hard indeed is if the team you manage is surrounded by peers that "don't give a fuck if what they do works or is of merchantable quality". However, if you reinforce your culture of excellence it becomes resilient to it ... and then the tricky thing becomes avoiding arrogance within the team.
If you did this in an environment with undercapacity, with the exception of being a very well respected or lead dev, I'd eventually call you out for being a snake trying to set the tone of development with nothing better to do. I had a colleague do this and its obnoxious. Especially because
>reinforce your culture of excellence
is almost entirely subjective.
One other bit that's probably worth mentioning is that I'm quick to point out when I've learnt something new from the PR in question. I guess I bundle that with "call out excellent solutions" - but it's a slightly different thing.
> is almost entirely subjective.
Of course. But even the regular discussion of what amounts to excellence helps move teams in that direction. What we're trying to get away from is "don't give a fuck if what they do works or is of merchantable quality" which exists in bucket-loads in giant corporations and I want my teams to have no part of it.
Well they are paid for the hours required. That's the problem (as some commenters have already mentioned).
It's not just the pay. It is often unfair. It might not be you but I've seen plenty of managers reward those that do a lot less compared to others. When people start to experience these things, how. do you expect them to care?
Isn't it more accurate to say they hire anybody making duck noises assuming they are wolves? Technical interviews in no way identify the skills developers are going to use in their daily work.
At least as a manager, it wouldn't be my direct problem. If the developers want to crunch to fix last minute issues because they didn't do it right the first time then that's their decision; but I don't want to be part of it anymore.
I look at my director and senior directors schedule in Outlook. It is 6 to 10 hours of meetings per day. They often start at 6am and might go until midnight because the company is worldwide. Meetings with people in India, China, Singapore, Israel, Europe, east and west coast US.
I get annoyed if I have more than 2 hours of a meetings a day. I get really annoyed when they interfere with my personal life outside of normal work hours.
I may be working from home at 6am or 11pm mostly to monitor jobs and check results. But I don't want to have a meeting at those times.
Even if I am paid hourly (I am) ... it's rare.
I am not sure what kind of people do that, but if it's managers, then EM/Lead is as far down that path I want to go.
When adults can be responsible they need more than one other adult to address issues and challenges with. To learn from and to teach to.
Management is a industrial and corporate construct. Its put in place to force labour intense industries to tell others what they need to do. Tell is often a monologue.
There is indeed need for adults to be around other adults with a sane understanding of responsibility. That's not management though.
Management is often a bleak blank cover to compensate for what I would call being professional.
Most often management does not work because the construct is that one (the manager) gets to rule more than the other, even though the manager might be completely wrong.
Some management must be in place otherwise things will stagnate.
Most management is a big fucking joke being mostly about looking good upwards. Politics.
More wine...
The less edgy and more academic version of this is https://en.m.wikipedia.org/wiki/Theory_X_and_Theory_Y.
Having been a manager and having learned what it means to scale your ability to have impact and to land impact purely through leveraging others, I feel far more equipped to be the kind of engineer that I would like to manage.
More than that, one of the best experiences I've had as a manager is to be able to dissuade myself of many of the misconceptions and stereotypes that are rife in this thread.
I'd strongly advise non-managers in the thread to read Charity's other blog posts such as the Engineer/Manager Pendulum too.
As it turns out, going back to being hands-on made me realize that I'd kinda been-there, done that in terms of the things I wanted to get done myself. I really missed a) playing an integral role in the career growth of others and b) the strategic level thinking of being an upper-level manager, so I went back to full-time management. There are times where I still think the grass is greener on the other side of the fence, but then I have those moments where someone on my team or in my org will thank me for supporting them or how that X that I've done has reduced the hassle of their day.
Switching jobs is quite hard as an (engineering) manager, at least if you're a bit introverted like me. Often you depend on the number of people who trust you from their experience working with you that have switched companies and have come into a trusted position there.
My career:
ages 20-30: Individual contributor.
ages 30-45: (Engineering) manager, running product development teams of varying sizes (up to about 50 people), being all over the architecture/system design. Not really coding in a focused way.
ages 45-now: Individual contributor, coding most of the time.
I was really concerned I wouldn't be able to keep the interest in actual coding all day long when I went back to that, but lo and behold, I'm actually finding it more fun and rewarding than the management roles. Stress is down too.
You too can recover from being a manager :).
hoping that by using more of my "soft skills" and thinking about architecture at work, I'll be able to come home and work something like a solitaire solver without feeling like it's "non-productive"
Being recently hands on with the technology helps coach and assess reports and means you know the real situation of the software.
Being a manager, if you carve out enough space, lets you make a highly productive, happy, successful team, and sometimes you might be the best person to do that.
I think I'd find only doing one forever more a bit tiring!
I was able to eventually cool off on technical burn out as a manager and went back to working on some personal projects. Eventually though, sitting in meetings all day for 12+ months had the same mental effect and I lost motivation and burn out increased. I'm back as an IC now and balancing my time better.
I think the better solution may be to find a way to pace yourself at work so you aren't slinging code for 8 hours. It's unlikely many of your coworkers are doing the same. I think it's important to find a sustainable pace at work and to just say no to the rest. Hopefully your company supports that.
Most products/projects aren't like that that though - but perhaps the pressure is still there?
And the skills not being transferrable? How is being good in a particular field of tech _more_ transferable than management skills, which is arguably needed everywhere be it tech or not.
Finally the credit/blame - managers and people above them get paid much more than a lowly engineer. Sometimes you get blamed and then paid handsomely, lol.
The hard conversations and emotional drain is true though. But generally, if you love writing code and interfacing with people equally, it’s hard not to be drawn to the appeal of the management position.
* who the different personalities are within the specific organization in order to get things done and who's opinion you need to take into account and who you can safely ignore
* who you can escalate to in order to get more resources (perhaps get a email pushed up to the CEO if needed) and who to apologize to if things go bad
* when to let your team self-manage and when you're going to need to assert your opinion
These are all highly specific to an organization.
The two ways to achieve this are through being in the trenches and observing for many years or have the social skills to hack your way in.
As such I think the interview for an engineering manager would be less than straightforward than a standard fizz buzz test.
More importantly if you do somehow pass the gatekeepers to such a job, your ability to actually hack into the new organization in order to keep your job for more than a year becomes a challenge.
So many fragile egos in high authority positions who can't admit they made a terrible decision 3 years ago and are still in denial and doubling down on it.
shudders
* handling the sheer amount of times that somebody says something is going to happen and then the complete opposite happens, because they lied/they didn't have information/they were projecting their desire/they are out of touch with reality
Managers are viewed the same way engineers are when it comes to skill transfer, in that their "expertise" is limited to the field. Which is why it's rare to find managers who made leaps that way across fields, as they always get overlooked in favor of someone who's either already in the field or is ok with switching from a technical role into a managerial one.
Managers are not having any easier of a time finding jobs right now.
Measured qualitatively in terms of 6 months performance
Hiring managers tends to be done with subjective criteria like "did the CTO get a good vibe from them in a 15min call?" I've seen engineering managers hired by just being the first friendly person through the door.
That said, I've met so many former engineering managers who just can't find work and now haven't written code in years. There's a lot of competition for a few jobs, and no real way to distinguish yourself. They are a very sad lot, and the biggest reason I left the management track to become an IC again. After talking with the 30th sad former manager who can't write an if statement I saw the writing on the wall and got back into engineering.
It also might be an easier time to hire right now.
Charity is not a man!
1) ownership - the manager does not really own the way the team works, in most cases it's just applying processes defined somewhere else (career progression, expectations, OKRs, sdlc, internal processes and the way the team works)
2) the eternal doubt - managing teams and people is not a science (that's why there are thousands of books claiming they have found the formula) and people are always different (different motivators, interests, personalities), and usually managers don't get proper training, and if they do it's more about facilitating discussions and giving feedback than anything else. This creates a lot of uncertainty over the actions that a manager take as the results, often, arrive later in time than, let's say, building a feature.
And the reality is that it's a complete different job than being an IC and most people don't realize this until they are deep into it.
ps to people talking about meetings, the reality is that this depends a lot on company culture and organization...in general the more the meetings the worse the culture (because it means that there aren't really good processes to share status updates and people don't take advantage of async communication as much as they should, but still want to be on top of everything so there isn't really much delegation and trust).
Software is a new industry, we're only just starting to get it right, and put behind us a litany of failed projects and methodologies. Every decision in a software company has a technical aspect. I personally am absolutely over non-technical managers and the aberrant strategies and directions they set out on. In my jaundiced view, any software company not led by developers is just waiting to be blown out of the water.
But don't let that detract from an intelligent, heart-felt and thought-provoking article :-)
I don't see the problem here either. Sounds like somebody overheard that comment and had no real answer hence "they're a shitbird".
I want to take instruction from managers who have literally done the thing they're asking for.
There is a reason vast majority of football coaches/managers are former players I don't see why that should be different from software -- even those managers who didn't play professional football often have a pro background in another team sport.
The reason there is nepotism. It’s insanely difficult for anyone without preexisting connections to get any sort of coaching opportunity. I definitely think ex players make worse coaches, generally speaking. They just have an almost insurmountable leg up.
I do think eng managers should be technical, though. Not because I think you need to have done a job to manage it, but because they are frequently asked to make what amount to being technical decisions.
I'm tired of having my warnings about things like tech debt and code quality ignored; only to be expected to fix everything and maintain deadlines when everything falls apart.
I'm tired of being compared to engineers who get things done quicker because they cut corners and build up tech debt.
I'm tired of caring about my craft when managers just want people who churn out slop.
* The politics and alliance building required to get anything done is both absurd and exhausting.
* You get it from both sides: leadership is pissed off because of X, individual contributors are pissed off because of Y. In both cases they are pissed off at you, or at least pissed off at something and using you as a pin cushion.
* You have to pretend to care about things. A good individual contributor can get away with an attitude of "I'll work on whatever you want me to work on, but this is just a job to me", whereas a manager is expected to be a loyal and excited booster of whatever stupid shit the company is up to.
* Generally I worked harder as a manager than as an IC, and the work was more stressful. The pay bump was not as significant as the stress bump. I've also worked at places (like my current job) where ICs make more than PMs. I am an IC here, and have no idea why anyone would ever take a PM job here. Sure enough, we can't keep them around.
* Do you like to consider all options and really think through a decision before you make it? Well, get used to being asked for definitive, snap judgments all day, every day.
I don't to manage a bunch of developers. Or stakeholders, annoying everybody every day for an update.
I agree with every single reason.
There are some that might push you to be an manager though, and I've had some fun time with that in the past. The two main ones to me are
1. The technical side of managing, things like how do you organize work for the best, process, etc.
2. Helping people grow - which you can have as an IC but is your main goal as manager. That system of taking a step back when someone asks a question, and figure if it's a problem of skill or clarity.
Both of these cannot be done when most of your energy is sunk into useless bureaucracy, as is often the case in large companies.
So you'd better be very aligned on those values to be happy in the job.
(for example, when I was a manager, my manager's goal was to "show the rest of the company we can make websites much faster", which meant putting pressure on everyone. I disagreed with that, making things faster just to "show it can be done" at a very high human price, didn't look like a good idea. So I suffered.)
In other words, sure, management is about authority, but there are many things from which authority can be derived: the authority of a respected teacher is very different from the authority of a coercitive cop.
Also, from a sociologic perspective, values are an outcome. If someone has to defend "the company's values", that means they are wishes, not values.
In the beginning of the project, I tried reorganize things, etc. And it went well for a month then pressure from the customer mounted again. And although I explained that things would be more expensive than planned, nobody wanted to listen. And ultimately, nobody stepped up to say "it won't work as expected", all the eyeballs were looking at me to say it. Which was difficult for me.
I should have realized that my boss was wrong and that I had to reach for help to someone else. I think I was too inexperienced to understand that soon enough.
Of course, it's always possible to end up with a boss who refuses to listen or just doesn't understand, and then you're in trouble.
Retrspectively, the guy created the conditions of a failing project and I was too unexperimented/weak to say "no" (it's pretty hard to say "we can't do it" when everythign around you ask for "we can do it"). Big lesson learned: have the courage to say no.
Fortunately, the company noticed and dropped in some additional management and the projcet went on. But it was too late for my health :-(
So, yeah, you can say it's nothing to do with company's core values but nevertheless, I got that feeling. And eventhough I may not be a great PM, I trust my feelings pretty much.
But point 6, “engineers can be little shits”, about how asking if the person in charge of you understands the work going on is mildly offensive for the obvious reasons, and extremely offensive for how fucking stupid it is.
Knowing how to do something is not an absurd ask of being responsible for that thing being done.
I only ever got up to 3 dozen-ish reports as an EM, but to the extent I ever lapsed in being able to read a diff, that was me just failing.
EMs should know a lot about engineering. That’s what “Engineering” and “Manager” mean. Like, in the dictionary.
EM doesn't mean the same thing everywhere. Last week I applied to an EM role that was 100% people management where my tech experience did not matter much. I also applied to one that was still a majority technical/architecture design, that some would consider a 'tech lead' or something like that.
Being offended by it is kind of funny. You'll probably have a boss like that eventually.
Calling them engineering managers and acting like it’s good to have EMs who can’t code is an anti-pattern. Just call them PMs and let them do all the high value stuff they do.
Ah the cliche Steve Jobs quote. Any driven person who wants to make change at an organization knows that they have to become a manager to scale. These are all day-to-day reasons that distract from why people get into the role in the first place.
Not sure if this applies at the VP level.
What's the trend w.r.t mgmt in healthy companies? I have seen the atherosclerosis-like effect of many many fiefdoms at the current "${JOB}" and the crushing burden of too many middle managers. Will the successful companies of the future (today?) have fewer managers and many more engineers?
Anecdotally I am seeing many more managers being laid off on my personal LinkedIn timeline than ICs...
One reason I'd like to get into leadership/mgmt is to have a greater say in team culture, tech choices, what gets done and what gets sidelined, etc. I feel currently very little power. Sure I could become a staff level or higher engineer and have some pull but it'll only be something that: "gets taken into advisement" rather than some edict given/decided by a manager or managers.
Is my thinking completely wrong?
before i started, i read the Managers Path of Camille Fournier... REALLY good book - and the only thing that did not match with me was "you cannot be friends with them (below) anymore". Which, sadly, is mostly true. But i did not expect the other parts. Politics that is not called politics.
So, yeah, looking for Mentoring/ Principal/ Staff/ Whatever-you-call-that - in my 35years making software i have-been even life coach (of few chosens) but seems not a Manager (of whoever run-of-the-mill is there)
ah. have fun.
www.svilendobrev.com
edit: and the lesson is: you can only be a proper manager if you have proper "manager" above..
However, i picked it up when i started my own company and it has considerably changed my pov. Hard conversations, managing time, developing people, building the organisation, delivering value to clients and a ton of other things which i couldn't dream of doing as an IC have been possible and extremely rewarding.
I think the article makes a few good points but on the overall, I feel that an younger, immature and less clued in me would resonate with it more than me now.
Imagine having those responsibities, but nearly no decision-making power. All those messy human behaviors are now coming at you from above and below.
What's tough is that to do management well, you need a level of freedom like what you experience as a founder. However, most managers with their own bosses will never get that level of freedom and have to somewhat conform to existing culture/process.
I read it as a general screed on managers in general. Not on improperly structured environments that don't enable managers to do good work which I understand is what you read from the article.
I am running into the situation where pay bands are tied into titles. Once you reach the upper end of your pay band you have to gain a new title. So you'll be pushed into management track or pushed out the company. I'm pretty sure I'm headed for the latter.
So keep it simple, quality and don't get distracted by shiny things.
I'm not blaming "managers" here. This applies to anyone who sticks their nose into an engineering process without the merit or to do so.
I really should find a new job because my manager has your attitude and it drives me crazy. I'm at a big corp and I can't stand the "just deal with it, there's processes and they suck but it's for the best" attitude that everyone has. I keep having the delusion that this year will be different because there has been small improvements.. but ffs. We run a Java stack and VisualVM is something I should be able to download without all the hoops. Nobody wants to help you jump through the hoops either, they just tell you to do it, and expect you to succeed.
But most stuff out there isn't moonshot project work. It's boring ass maintenance and minor function changes. What I don't want is when someone is asked to change a web form to find a whole fucking ReactJS stack pulled in because someone is bored or it looks good on their résumé. This does happen.
Joy is an internal energy, orthogonal to the (tangentially) flat Earth that sits external to us.
We might take pleasure or find satisfaction in our work, but joy is a mystical thing derived from one's faith.
Whether a manager or Individual Contributor, one's capacity to find joy in the most suck-tacular experiences is the key to the next iteration of One Little Victory => https://youtu.be/o_dzB1EX_2I