People can read their manager's mind (2015)
yosefk.com
yosefk.com
Myself, I recognise myself here. And I'm trying my best to find my sanity.
Anyone got any stories of themselves or others being insane? How did it pan out?
The turn downs save enormous amounts of our hardware budget, and each time are measured as not happening users.
No one has yet noticed that basically none of that directors projects are still running and put together that the things he builds stop working after two years.
I keep getting paid good senior engineer money, and don't have to think too hard about what my next project should be. But it's really demoralizing to realize that he will continue to be promoted.
I've always been agitated by core failures moreso than my teammates. (E.g. Search engines not returning results, music players not starting/stopping when you hit the button, finance systems needing needing manual adjustments)
I want to scream when management pushes new fringe features when the main ones are flakey.
I'm starting to work on myself though, so I don't care as much. In most cases, you're not an employee building correct software for an employer who values it, even if that's the way it should be. You're in a company whose employees/managers flow in and out, and they just want to be surrounded with good vibes. Chill people get rehired, bitter people get booted.
I'll take that in the spirit of a compliment ;)
What I mean is, I've definitely worked for organizations that were resistant to fixing things that were only mildly broken, but I've never worked for one where there wasn't someone you could talk to who would put the brakes on to fix something if you made the case that it had to be addressed before building new features. Particularly if the case was that the new features would have to be rebuilt soon if you didn't address these problems first.
The company lives on sales, not on software. Sale of flakey software is better than delay to un-flakey it.
But people do need some level of chill to hold it all together. If there isn't some sunny shiny thing on the horizon at least, then it is too hard to put in any effort and get out of bed. The worse the situation is, the greater the need for soothing. I have a personal law that says something like: the level of organizational dysfunction is directly and inversely proportional to the degree to which reality is allowed to disturb a positive story. You could call it institutional codependency.
In really dysfunctional organizations you will find shocking levels of denial and incongruence between the state of affairs and what can be spoken about without being sidelined. This breeds bitterness, because there is an actual and insurmountable difference in needs. Some people can't thrive in a minefield of falsehoods. Being earnest is an actual need, for some people it is more important than being fun and positive. For others people, it is the other way around.
The biggest lesson for me was that there really is a difference between organizations in this kind of dysfunction. The trick is to kick yourself in the butt and move around. Bitterness is just a signal you stayed too long in a context where you are stifled. Even if the ideal context doesn't exist, there are likely places where you are vastly more appreciated and it is worth the effort to try and find them.
Well, speaking for myself, I tend to be much less whiny about things if I have the feeling someone takes me seriously.
I guess I should just be "overemployed" so I can retire earlier LOL.
Ultimately you want competent, realistic and upbeat.
For me, the question is: can I say the deadline is unrealistic and off by 2x as a matter of fact and can we discuss how to deal with that, as a matter of fact, not blaming anyone? Just the facts.
Sometimes this is impossible because the mere mention of it makes me the pessimist and is putting everyone in a bad mood.
> can I say the deadline is unrealistic and off by 2x as a matter of fact and can we discuss how to deal with that, as a matter of fact, not blaming anyone? Just the facts.
I'd hope so, but at my company the conversation would either end (CTO would say "I got to go join another meeting") or it would be interpreted as you "saying no."
I'll attend every social event, I clock out roughly on time, and I do what's needed of me without making a fuss. Want that stupid feature? Sure, as long as it's not morally reprehensible, I'll build it.
What's any of that got to do with being fake? I don't suck up, and do things for the sake of promotion, I don't lie about things. If you ask for my opinion, I'll share it, even if it's negative. I don't think that makes me unfun though.
Just, unnecessary, arguably-insane things. I don't give a fuck if you want a stupid feature. That isn't my job. My job is, however, to give input into if I think certain changes to the platform are going to be detrimental. Just saying "yeah bossss!!!" to everything is not my job, and would be shallow and fake.
1. The union did not actually help the workers nor care. Even though a lot of them paid pretty high monthly membership fees.
2. The staff council leaderships usually get corrupted after a while once they get some perks from management.
I got pushed out eventually, I received a settlement, because they didn't want me to open my mouth about the things I'd seen. I had some major impact in their long term results, especially since they had grift going on in their construction project which would have led to 10 year old networking infrastructure be installed. Physical access control that didn't have wirings installed and core drills with no space left for future extensions.
I could have stayed for another 5-10 years since I was not firable, but they made sure to pull me of projects, so I wouldn't look behind the curtain. I still have most of the employees and some of the senior leadership report these things to me though because of the trust they had in me.
It's a hard path to choose and it's a thankless job in terms of career. The question is how happy are you will all your peers and subordinates and even the non grifting subcontrators(in case of the construction) be grateful to you.
I don't think you can "find your sanity" as I believe that taking technical issues personal is just the way some people are built. But you can and should learn politics even if you find it repulsive.
It sucks.
Picture the film Office Space. There were 3 managers for like 14 people. It was insanity. One day I'll write my mashup of The Office and Office Space based on working there now the NDA is expired haha. Nothing whistleblowery, just hilariously silly stuff happening constantly.
We agreed via my solicitor that that was a dumb move to have made and they settled so I'd go away.
It later turned out I was working with undiagnosed ADHD so it might not have been all bad all the time but man I'd die on a lot of hills back then. I used to wonder who got the bad luck from me being employee #13, me or them haha.
Freelance now. Y'all solve your own office problems, I'm not getting involved.
You're not alone. I am this person, but I also have the advantage of being management. In one case, I led a 9 month ninja effort refactor an entire spaghetti monolith in semi-opposition to my boss' (CEO) wishes. We did it very smartly, though, which was to have a plan in place that was to a) have a plan b) focus on observability in the final product and c) used "extreme campfire rules" to implement.
First steps were hard, which was where we completely reorganized everything into logical services with defined APIs within the monolith. During the couple months, overall product velocity slowed, so we tread with care and hustled to get stuff out on time. After that point, the resulting code sanity increased velocity so we could focus on things like revamping logging to be massively more useful, better data migrations, consistent deploy process for developer machines, dev integration server, staging, and production servers, and implementation of automated service and integration testing.
The net result of 9 months of work was shipping tons of new features, virtually eliminating any down time (from hours a month to minutes per year), and a net loss of about 20% of the codebase.
It was a smashing success that I couldn't tell anyone else on the management team about. I did get the ultimate payoff a couple years later when we were acquired by a $30B company and received many kudos during the technical due diligence process for the state of our architecture and reliability.
Ok now I'm just venting at this point but it's therapeutic.
I feel as though I've aged 10 years in the past 2 and I burned out very bad 4 months ago, still haven't recovered. Unemployed now.
The worst part? I'm not sure I'm not going to try it again. Should I accept "mediocraty"? Should I strive to leverage my abilities to the fullest to truly be transformative in technology? Maybe I should just focus on getting "fuck you" money so I can work for free on things that actually have an impact.
Time is an illusion, professional time doubly so. Don't waste it worrying about what might have been or never was, accept your failures, be magnanimous about others', and always work to make things better tomorrow.
Maybe there's a Sliding Doors world out there where you can try all the possibilities and see where they take you, but time's arrow flows in one direction here.
So choose the paths that you think move things up and to the right, and if you find yourself heading down and to the left, have a laugh and try again.
A small minority of them do. As far as I can tell what most software engineers value is the act of writing code.
But in many teams, I often see managers wanting more features, while I frequently see the devs argue for taking some time to address technical debt. Maybe there's some selection bias in me always being one of those devs.
In this sense it is a bit like the prevention paradox during the pandemic. If you are successful in preventing an outbreak, people will hate you for it because most people only feel the pain of the measures they had to take, and the absence of an outbreak only shows them those measures were useless. Then, to worsen things, there are also genuine mistakes in handling the pandemic and those are forever used as proof the measures are useless and its proponents incompetent. It really takes a lot of discernment to cut through all this.
People can read their manager's mind - https://news.ycombinator.com/item?id=10820158 - Dec 2015 (60 comments)
In a good org:
- Managers do not set goals. Teams set goals (EM, TL, PM, DS, etc. need to collaborate on the goal and be bought into it).
- There is a system of checks to make sure goals are good. Teams need to make sure their leadership is bought into their goals, and that the goals ladder up to company goals.
- Managers do not prescribe technical approaches. This is something TLs should do.
- TLs are empowered to propose and work on infra and tech debt that are harder to measure with KPIs. These still need milestones and some measure of success.
Could be, it's not unusual. You might be surprised how common it is. And it is useful to address the real world of that.
> Teams need to make sure their leadership is bought into their goals, and that the goals ladder up to company goals.
Most good management does that well in harmony with the product. Bad management focuses on that at the expense of the product.
This might make EM seem like a cushy job, but in practice things are always a mess at various levels, and a good EM needs to wade in and sort out all kinds of conflicts that can lead to entire teams outputs being wasted. To do a good job the EM must have solid technical death, good product and business understanding, and excellent listening and communication skills. More specific needs depend on the company, org and situation in question. Being a good engineering manager is incredibly difficult in large orgs, and it’s rare to find them giving the difficulty in assessing them and the resulting market for lemons making it viable career path to fail upwards (or at least sideways).
To reflect the boss's thoughts back to him!
- the construction of a system of incentives/goals(/'recognition') is a large component in building a team/organization
- people within the same org often have different incentives, and possibly over different timeframes; sometimes very different timeframes. Sometimes time-bound, sometimes event-bound (achieve X before IPO/Series X/ options vest/market crashes).
- often incentives are constructed to set teams/depts at each others' throats, while paying lip-service to the concept of cooperation: salespeople get compensated short-term for getting sales, marketing get compensated for generating buzz and promising new features, QA and build get compensated for stability, performance, absence of bugs, engineering (typically) compensated for a basket of metrics intended to deliver product-market fit and growth. Essentially the VCs figure that within a year they will either fire the VP of Sales or Engineering.
- the canonical example is a salesperson selling a deal with a toxic customer or overpromising nonexistent stuff which engineering won't be able to deliver, then pocketing their sales commission, buying the luxury car and quietly exiting the building
- incentives can be conflicting between departments (this ain't Barney the Dinosaur), and designing that well is a Goldilocks quantity.
Often you don't know the (actual) incentives/goals/OKR of your manager, or other depts: - sometimes, with enough time, you can deduce by observing (who got 'recognized'? promoted? fired? reorg'ed? quit? and who actually did the work?) You ask around and figure who's going up and who's going down.
- I've seen a case where in retrospect a manager was simply there for the duration of his sponsored executive MBA, and didn't give a hoot about product-related metrics. The most important thing for him was not to actually fix anything or release anything, but keep the other managers around him sweet and happy, even though the company was losing huge market share and failing, stock was tanking. Eventually (soon after graduating from the MBA) he jumped off the sinking ship and went back to his former employer. (The company failed and its assets were firesaled. But this didn't affect his career. This first made me realize that it's quite common to have a massive disparity in (nominal or actual) incentives)
> People generally don't do what they're told, but what they expect to be rewarded for.Corollary 3b: what they're rewarded for is often not explicitly stated. So people have a certain innate or acquired level of cynicism about what they're officially being told ('communicated'), and how they can game it and collude with others.
Counter-Corollary 1. + Corollary 2.: before attempting to un-rot the fish from either the top or (especially) the bottom, stop, look both ways, listen to your intuition and think "Who appears to be benefiting, or at least is unperturbed by the current state of rottenness? What do their incentives seem to be? [and who in turn constructed those incentives?]"
Corollary 2. When does the fish un-rot from the top?
> Finally, don't expect people to enlighten you and tell you what your blind spots are. Becoming a manager means losing the privilege of being told what's what. It's a trap to think of oneself as just the same reasonable guy and why wouldn't they want to talk to me. The right question is, why would they?
That part, tucked down the bottom, is brilliant, and should probably be the lede paragraph.
>> A manager enjoys "software architecture", design patterns, and language lawyer type of knowledge
Sorry, what is "language lawyer type of knowledge"? Does the OP mean the ability of others to better articulate and convince the manager of the reasons for making certain architectural decisions?
There's something about the phrase "language lawyer type of knowledge" which is specifically derisive of engineers who are committed to the larger task and willing to make a case for their approach. It's a phrase which aims to diminish the value of reasoned debate in communicating pros and cons of various approaches; it's practically an ad hominem attack against anyone who uses words to make a point. My read of this was that the person who wrote it got fired for poor communication skills, was bitter, and penned a poorly written attempt at post-justifying their failure.