98 comments

[ 2.5 ms ] story [ 197 ms ] thread
Don’t get pushed to the brink.

Just be clear to ‘leadership’ that things take time or money. Clearly communicate much longer timelines, and don’t stress yourself out too much.

This is much harder to do when you 1) have dependents, 2) are bad at interviewing, 3) don't have time to interview, 4) don't have in-demand skills and/or 5) are not financially stable.
> and/or 5) are not financially stable

which many people - even senior developers - aren't because housing and other CoL expenses eat up wages everywhere, and companies exploit that as they wish.

Additionally, at least in the US and parts of the EU, the complications of legalized slavery aka H1B / other work visas make protesting against bad conditions much harder.

Don't talk about legalized slavery in regards to these programs. They have the right to walk away at any time, and that's their choice. Spend some time to read about kafala if you want to learn about modern slavery.
They have the right but in reality can’t find another job within the short timespan and after which they become illegal immigrants and have to go back home. Sure, it’s not impossible but on average it’s very hard to break the shackles of the H1B visas. Often these people put up high stakes to obtain these jobs and going back leaves them in debt. It’s a system designed to exploit
Both can be true. Just because one is worse does not make the other ok.

A worse situation does not trivialize a bad situation.

Oh I'm aware of that. The thing is, modern forms of slavery are varied in forms. Some are based on laws but still criticized as inhumane (e.g. US prison labor, kafala in Arab nations), some are based on laws but widely accepted (H1B, conscription in militaries), and some are completely illegal (e.g. human trafficking for sexual and agricultural exploitation).
Being sent back home is absolutely not slavery.

Not everything bad related to work is slavery.

For any high cost of living area where a senior developer works, there are plenty of non-developer workers doing the same 9-5s in the same office buildings on a fraction of their salary.

Maybe try a longer commute or a roommate before whining about your cost of living

W.r.t. immigration- you're certainly right. I would be terrified to rock the boat if my employer could put me at risk of deportation

This. Leadership may very well ignore or overlook your perspective, but make sure that your concerns are documented as risks or assumptions somewhere. Businesses almost always CYA, you should, too.
That only works when you have an alternative job offer, or you are confident your boss is bluffing.
Or you have savings.

Getting trapped in stressful bullshit that takes years off your life is an unseen price of many purchases; beware people.

This is something I learned late in my career. Leadership has to constantly justify their priorities and expenses. The goals they set and expect from their teams is also built from the feedback they receive from their teams.

What can they realistically build given the resources they have and teams in the time they need to deliver something? It's not magic and too often people fear if they don't commit to aggressive deadlines that they will be punished for it. Yes, this is a tug-of-war, leadership pushes to maximize and the teams push back to minimize until there is an agreement.

However, the important take-away, be open and honest about risks, and blockers. Give early and often reports to upper management about the state of things. As long as you're giving visibility to things you help leadership plan and realign on expectations so they can make course corrections if needed.

Too often I see things fall apart on the ground and another engineer tries to pick up the slack doing extra work. Leadership is never informed and so believe things are going as expected. They just see the work getting done, even if the team on the ground feels overworked and understaffed and so yea, it's not healthy.

I went through some pretty bizarre layoffs.

A huge chunk of the ICs got laid off - so managers that had teams of 8-10 now had teams of 3-6. The product org was hit, but proportionally not as heavily. No projects got descoped.

The end result was that the engineers were basically in meetings throughout the day every day, as they'd each suddenly have twice as many projects on their plate. Then because things inevitably were moving more slowly, more meetings got added to track progress more closely. This was earlier in the pandemic, so a bunch of engineers just left for greener pastures.

And as you can imagine, the whole thing ground to a halt.

The big thing I realized is how hard it was to for leadership - whether product or engineering - to say no, or to stack rank priorities. It's hard to blame them, the past decade has been one of abundance. There were always more resources around the next corner, and so having to deal with less wasn't a skill that anyone had developed.

There's a whole book about this sort of thing called The Phoenix Project that you may be interested in reading. A lot of what you're saying falls under "the first way" which covers systems thinking and the flow of work.
I enjoyed the book, but after looking at the situation from a querying theory pov, I became skeptical of some of the authors claims
Kind of a non- statement. The book is fiction, and an extended advertisement for the author's management consulting business. Its "claims" are barely hypotheses.
Learning to say no to management was one of the hardest things for me in my career. It has also been the one of the best things.
Boundaries are crucial, but one must derisk their downside to effectively enforce them.
And how did you actually do it? Any good advice/books on this.

I know my management has clear ideas what they want so even if I am told - it’s my job to figure it out they say what needs to happen (not accepting a No).

Entire engineering / infrastructure team quit. I hired in just after last one gave notice. System was in complete collapse. Nothing was documented. I had to reboot servers at random to even find out what might get system going again.

Couple weeks in CEO asked when new feature would be ready.

It took that level of complete absurdity for me to finally say no. I eventually rebuilt the entire infrastructure, scaled traffic 3x, hired and trained new team. It was about a year before I would even listen to a request for a new feature. Took me a long time to recover from that job.

Easiest way to is to provide an illustration of the cost of doing said action. Those costs need to be put in terms that they understand. That way they can evaluate how much they really want things.

This is an indirect no. We can do that, it will cost X and take Y time and have Z impact on the code base and our long term velocity. Is this what you would like to do?

Quite often, they will say no themselves. If you have no trust with management and they ignore your warning, the org is already at high levels of toxicity and there isn't much you can do anyway. Realize that and navigate the position accordingly.

You need clever middle management to navigate that. The solution is to play the fiefdoms against each other.

One way I navigated a team through this is that we just halted work on critical stuff and we doubled down as rockstars for politically important critical stuff. As each other team complained, we let the people up the chain kill each other, and eventually got relief from the crazy.

Having a line manager or director who can play the VPs and SVPs against each other is invaluable for an IC on a critical team, and honestly a pretty good indicator of who the next director or VP might be.
My first big tech manager was incredible at this. Took me a few other managers to realize what a specific (and rare!) skill this is, as she made it seem so easy.

I miss working for her.

Spectacular! Can we get a show out of this short story? Name it DevCrowd or smth.
People are rewarded highly at the top with the assumption they are valuable contributing intelligent leaders who can do the job better than the people getting paid poorly. They have boats and vacation homes and generational wealth, I find it VERY easy to blame them for their poor leadership. We should blame them much more often, they don't face any blame because there aren't enough people above them to enforce it. Shareholders aren't close enough to structure incentives in a way that require leaders to face any blame. You want to be rich and say it's because you earned it? Then earn it.
I'm somewhat inclined to agree with you in principle but I still have no idea how this comment relates whatsoever to the parent comment.
Teams being shrunk to smaller sizes implies that layoffs are hitting non-management harder than management.
> Teams being shrunk to smaller sizes implies that layoffs are hitting non-management harder than management.

It implies that layoffs are hitting non-supervisory non-managers more than line supervisors; but “management” includes non-supervisory specialist managers, and middle and upper management above the line level, all of which could be hit more than line supervisors and those they supervise. (Ideally, not enough to really make a difference in this effect – but an overload of non-line, particularly middle and specialist, management is not an uncommon organizational disease.)

I agree with the core sentiment expressed here, though I think your statements come off as absolutist. I think there are plenty of people in management (though maybe not the majority) that don't come from generational wealth. I think the boats + vacation homes + generational wealth statements you brought up are irrelevant to the main point you're making, which is that leaders should be held accountable (which I fully agree with).

Take care not to let cynicism, spite, or resentment overshadow a strong core argument.

Yes, that is true. The other thing that is true is complete lack of accountability for managers.

They can lack social skill, be rude, be incompetent, slow the project to and make it ineffective. And many still keep failing upwards.

There are good managers, it is not they don't exist. But bad ones are way more frequent then should be. People completely unsuitable for leadership keep staying managers despite destruction they cause.

Of course, the more obvious answer is that they don't earn what they earn because of performance, but because of broken market incentives.
You're not wrong, but to make an analogy, someone who was hired to be a great runner can't really be blamed when they're forced to swim and they're not very good at it. You lose the race either way though of course.
I think a lot of people have a very self oriented view.

Managers have issues too, particularly good ones who care about their direct reports and getting projects done without death marches. The incentive structure is off. They are rewarded for the wrong metrics, things like number of reports (top tier metric and is a primary basis for getting titles like senior manager, director, VP, CTO, etc), which encourages growing your kingdom. Politics, credit for accomplishment when you're only a proxy for work and don't have control of all the constraints.

It's not uncommon to find yourself in the position where making the right call will be bad for your prospects for internal growth. Which means when you don't corrupt yourself, after a time you dust off your resume and try to make the next step at the next position instead of internally.

Still, you work with where you are and what you have and do your best. I want to be able to take a hand on the business side as I'm tired of projects falling apart due to bad business underpinnings I can identify from the outset. That means playing the management game from the inside so I can get to CTO where I hope to be able to make a bigger difference.

> The big thing I realized is how hard it was to for leadership - whether product or engineering - to say no...

I really respected my manager at my last job for frequently saying no, for good reasons that he articulated so well that the other managers who he said no to actually agreed and accepted his decisions.

That's a rare quality in managers that I haven't seen before or since. Most are pushovers who usually agree to do almost anything asked of them, no matter how ridiculous and unrealistic.

>I realized is how hard it was to for leadership - whether product or engineering - to say no, or to stack rank priorities. I

I can't speak for other people, but personally, I always speak my mind. I don't care what level the person above me is. I don't do it in a dickish way, but I will say my say. I always feel that is my duty, to let people above me know what the situation on the ground is, because they just don't know. And usually, in a new job, I'll start out small and work my way up to bigger things as I get to know the system and services/products better. And I've never had any kind of weird shit happen to me, like have someone blow up that I contradict them in the slightest way. Especially in knowledge work. Every boss I've ever had has been good with my feedback and has taken it very seriously. Very often they change their decisions with my input. Often I'll say, "No, can't be done, nope" and explain why, unless they know something I don't know which they always let me know if that is the case.

It's all of our jobs to tell our bosses if something can't be done and be very clear about it, or to have them prioritize work, and also give feedback on that as well.

If you have a boss that is a dick and won't listen - time to move jobs.

Resources are finite, even during flush times, companies go out of business due to squandering of resources.

I'm so glad to see you say this, because I also do it. I thought I was the only one, but I see it as part of my job responsibilities to be "say my say" in an honest, polite way. Especially towards management, telling people what the consequences of their decision are(good or bad).
This seems to happen more frequently than people realize - ie more project equals more meetings equals less time to do real work. I've heard people talk about it before but not as frequently as I expected after noticing it. Steve Jobs seemed to be aware.
Pre-COVID my first management job was working for a company that was chronically understaffed and I ended up spending a good 20% of my time dealing just with hiring for the couple years I was there.

Near the end, I could only dedicate about 5% of my time to dev and < 30% to support my largely junior team. The rest of it was wasted on bureaucratic processes that were a vampire of my time. In the end, I didn't think I could honestly protect the team through what was surely to be a painful slide into mediocrity, so opted out. I felt terrible leaving them to whatever came next, but once you realize you're unable to make positive change, it's time to go.

I wonder if XP helps through pair programming. Managers get to code and also get to mentor juniors at the same time.
Does this happen anywhere? I've never seen any manager personally mentoring juniors.
Not sure about managers, but (more) senior technical staff and team leaders are supposed to mentor the less experienced technical staff.

Whether or not it happens seems to depend on the team. Personally, I like teaching people new stuff so it would often fall to me, on the teams I worked in. ;)

Definitely. I'm a team lead (duties: mix of team management, project management, and some IC development), and my mentor is on the management team, and I mentor a junior dev. One of my prior mentors (as a junior dev back then) was the company founder/CEO twenty-five years senior to me.

Of course, that founder was one of the originators of XP practice, and ran our company on those principles--pairing, fast feedback loops, and mentorship for all (he's since handed over the company to his #2 who he mentored for a decade, and who is continuing those practices).

Definitely. I’m an engineering manager (admittedly at a startup) and I pair program with my team all of the time.
Mentorship down the chain of command sounds nice, but for most juniors that's just going to cause anxiety.

The most impactful mentors I've had personally were senior developer / tech lead types. My managers were great, but it's just easier to have the "is this a stupid idea" conversation with somebody who doesn't sign your paycheck

This was my experience at my last company, except compressed into 1 year.

Once I joined I learned that 30% of my time would be dedicated to hiring. The company had a pooled hiring process, and I came to hate it. I spent several hours a week reading resumes, interviewing, reading interviewers' feedback, sitting in roundtables, strategizing with recruiters, and if all that went well, pitching candidates to the hiring committee. Then I would sit back, with no control over the comp, and watch the candidate choose another team, largely because my team wasn't a "sexy" team; very critical to business, but not sexy.

In the handful of cases where my team was the only option, the candidates would turn down the offer due to "insufficient compensation". The company had a "no negotiation" stance on offers. So once the offer went out, that was that. In my first performance review my manager put "hiring" as an area of improvement. I felt this was a trap and would be used to let me go eventually, in spite of the fact my team grew from 3 to 10 engineers from internal transfers and we were hitting all our deliverables.

Between hiring and navigating the terribly siloed corporate structure to build cross-functional teams I had almost no time outside of 1:1s to spend with my own team. It was a really disappointing experience and I felt really bad when I left, because my team and stakeholders were all delightful and capable people. Like you, I felt I couldn't protect them and keep my mental health intact at the same time.

You seem like a great manager/employee - sad that this is the situation you faced at this company
What kind of dystopian bullshit is this?

Occurrences of phrases like "better pay"/"higher wages"/"more benefits" in this BBC article: 0

Creative descriptions for intentionally burning people out: I stopped counting, but "maximise their potential" is certainly my favorite euphemism.

I've had 2 previous companies do something similar. Team of 5 or so develop a product. It's realeased and they move / layoff all but one or two devs including me. I get overburdened; ask for a raise. The first company that did this, the boss literally scoffed at me. I was gone within a couple months.

The second company recognized my value and gave me a very generous raise. Unfortunately for them, shortly after that I got an offer I couldn't refuse.

> The second company recognized my value and gave me a very generous raise. Unfortunately for them, shortly after that I got an offer I couldn't refuse.

So they only recognized a portion of your value.

Considering it was government contracting, it was as good as it was going to get. The offer I got was from a near-tech company.
Workers, maybe it's time we started collectively pushing back?

I don't care if it's unions, or work stoppages, or guilds, or industrial action, or what.

But they've been squeezing workers too hard.

I question if the ruling class has broken the system enough that this doesn't work...

Old days: People stop working. Company stops making money. (A|B) Company hires pinkertons to kill off the opposition | Company concedes and gives better working conditions.

Today?: People stop working. Companies beg government to give them money because they're too big to fail. Individuals lose their livelihood/homes/next meal long before company has a deep financial impact.

Today: people automate out many low level processes and offshore the rest to India / Mexico City / PI
I think what’s needed are more along the lines of worker protections on an government level. It should be significantly more difficult to drop 10% of your staff because of market performance, or there should be enforced consequences which are expensive. Several months severance, executive pay clawbacks, stock and options payouts, those sorts of things.
The crazy thing is it feels like wages are really set by the standard of living. Most corporate jobs are paying just enough to afford a decent place to live, a vacation, and then putting away a few thousand in savings. This idea that we live in this meritocracy and you get paid for the value you create is completely bunk. Were all basically accepting a livable wage like cattle being farmed for value by rich people.
This comment shows an extremely privileged perspective.

Most corporate jobs are paying just enough to afford a [deleted: decent] place to live, [deleted: a vacation, and then putting away a few thousand in savings].

This is a complete fallacy too. We are working harder now than people did before the industrial revolution.
1) [citation needed]

2) even if this is true, at least we're not, I dunno, dying in our 30s and have things like running water?

Productivity has gone way up in the last few decades, and people can afford fewer and fewer children. It used to be common to afford 8 children on one income. Wake up dude
>Productivity has gone way up in the last few years, and people can afford fewer and fewer children.

That doesn't say much when that's been the long run trend since the industrial revolution.

Isn't it "only the poorest can afford children" situation?
Having fewer children should be celebrated not looked upon as a failure. The world doesn't need everyone having six kids anymore.
I'm not arguing for having that many children, just that its a basic way to benchmark how expensive being alive is. Clearly these people having so many children werent just randomly taking on impoverished hardship. Things were tight, but they had reasonable economic security with so many children. This points to a dramatic drop in wages in the last 50 years
Financially speaking, kids are an asset in non-industrialized societies, especially farming societies. But they are a liability in industrialized ones. I think that transition from asset to liability for nations undergoing industrialization might explain this phenomenon.
I really hope when people have kids they don't look at them as an asset or a liability, aside from when considering the financial impact. They're not a great fit for our lifestyle, but if my wife and I did end up having a kid I wouldn't think of them as a liability.
I think you're stuffing more meaning into my statement than I intended: I intentionally qualified the statement to the financial perspective only in which case it's appropriate to talk about assets and liabilities.

I say this as a happy father of 2 kids.

No one is saying we need 8, but many aren't having 1.

And the people who are crapping out kids may not be the ones you'd like to be carrying the torch forward into the next century.

Who are you building this future for if not for your children and those of your friends and family?

Tell me that the Quiverfull types who are having 10 kids are the ones who will appreciate your new app and I'll tell you you're full of crap.

Hey now. I was one of eight myself, am now a highly educated (Washington & Lee, Oxford University) and successful (team lead) software developer, and fully intend on having a large family myself. Don't make insulting generalizations like that.
>The crazy thing is it feels like wages are really set by the standard of living.

this is basically guaranteed to be the case because in urban areas, the biggest expense is housing, which is inherently a positional good. Paying more wouldn't help, because everyone would just bid up the prices on housing and negate any nominal increase.

Right, but its like no matter the field, the standard deviation between the pay is pretty low. Sales, programming, project management, manager, account manager. For the average outcome, they all make +-50k with a 150k median. The wages are not being set by economic value except on the top end for programming/executive/higher management. Its being set by the employer based on a base standard of living.

The capital holders are taking all of the excess wealth created

>The wages are not being set by economic value except on the top end for programming/executive/higher management. Its being set by the employer based on a base standard of living.

The fallacy here is thinking that prices was ever or should be set by "economic value". It plays a role, but only as an upper bound; you can't price something that's higher than the value it provides. Many goods/services (eg. food or healthcare) arguably provides infinite value to the purchaser, given that they're required for survival, but I doubt you'd come out to argue that we should reprice them according to their "economic value".

>The capital holders are taking all of the excess wealth created

This feels like a tautology to me, because you're defining "excess wealth" as (economic value generated) - (wages/expenses paid), which is just a roundabout way of saying "profits".

That's one factoring. A different factoring is that the excess wealth is (economic value) - (expenses paid)

And that there's a ratio of profit vs wages taken out of that. That ratio can be larger or smaller. If that ratio is 1, there is no wages, and if it's 0, there is no profit.

The comment is that that ratio is too close to 1.

> That's one factoring. A different factoring is that the excess wealth is (economic value) - (expenses paid)

That factoring wouldn't make sense in the context of the original comment, because it also claims that "The capital holders are taking all of the excess wealth created", which clearly isn't the case because we're not paying everyone $0 in wages.

The standard of living rises with wages because we spend those wages on our standard of living. There's some segments like education and health care that are just broken vampires sucking up resources. In some places housing gets added to that list due to zoning. But for the most part people are getting better things for the same effort of working than they used to.
Is there really that much to standard of living after you exclude education, health care, and housing? What's left? Eating out and electronics?
Cars, hobby stuff, furniture, appliances, and so on
In order to benefit directly from your value creation you have to get out from under the protective shell of an org owned by someone else. This means both the risk, and rewards, are yours. If you are unwilling to do this then you will always be at the mercy of those whom you look at to shield you from the risks.
There was a large tech company I know of which had a practice of laying people off a giving everyone else a raise. I don’t know if it helped any but it seemed quirky and interesting at the time
That lays bare the economics of the layoff in a very easy-to-understand way, provided the raises don't eat up all the savings from the layoffs.

Using nice round numbers, the following would need to be true for the layoffs to make sense: You have a team of 20, each making 100k/year, but a lot of downtime for all of them. At your current clip, you can only afford 1.5M/year total for your team. You have enough work for maybe 13 at a reasonable pace for your wages, or 10 at a higher pace. So you could let 7 go and risk morale problems with the unchanged wages, or you let 10 go, give 30% raises to match the raised demands, and your payroll is still less than what you can afford. If all of that was explained, alongside copious expressions of ownership on the part of the people responsible for not driving enough business in, I would gladly work again for the people laying me off.

That's like a general fixing a lack of rations by taking on heavy losses in the next battle. I'm sure morale was high at that org.
Given teams are shrinking, wages are decreasing etc is it better to be a business owner in this macro environment
I think layoffs tend to always look good to management and investors because of the pareto principle (80% of the work being done by 20% of the people). You certainly get a short term cost saving. The downside though is that other 20% is not necessarily stuff you want your best performers working on, and there's always going to be another 20%.
And, unfortunately, most companies are terrible at identifying that useful 20%.
Its always nice how management uses easy-to-remember mathematical principles without considering the shape of their data or the proportion of variance explained by these factors, and if that principle would even be applicable.