It’s not wise to be against the direction of an executive. You will be labeled combative, misaligned, or even uncooperative. It’s not worth it. Unless you have a strong political ally, it can be career suicide in your company.
It also really depends on whether you pick your battles or not. If an engineer complains every detail of a system then you get a "boy who cried wolf" effect at some point.
You need to know how the person behaves and how to approach them. Some people will take very badly to be 'challenged' by a subordinate in public but may have no issue if you make a 'suggestion' in private.
This is one of the most frustrating things as being a software engineer: working on solutions that you feel that are not going to work. In some cases, I was the one saying that a particular solution was not going to work. It did not bring me any good.
One of the problems I've encountered is that the people who do speak up, by their very nature, don't do so in a way that has a chance of being heard. Even the phrase "speak up" suggests the failure that is coming. Getting decisions changed is a diplomatic manoeuvre that requires understanding how to frame the issues in a way that is meaningful to the decision maker. It's compromising and complex. Engineers need someone on their side who can perform that role.
There is no incentive to speak up. Why go against the grain and expend your social capital when you can just do exactly as you're told and not cause any trouble?
There is incentive to stay quiet: getting the paycheck and a stress-free evening with my family.
> Real pushback is making problems visible: putting a price on the decision, naming what can go wrong, making the tradeoffs concrete.
Putting a price on the decision? This is very bold statement, there are few people on the planet who can give right predictions about the price of the decision.
Imagine engineer saying: "this will ruin our company"
CEO: "What? excuse me, how did you come to this conclusion? what analysis have you run? how did you get these numbers?"
I don't think what you are describing is easy to accomplish in practice, you made it sound simple, but complex systems don't operate this way. You have 100 departments, each can contribute 1 tiny problem and combination of them could lead to catasthropic outcome, but in isolation price feels like negligible or too small, no one can put the price on the decision
I contracted (writing C++) for a large international security company, and they had a ton of problems that had clearly been festering for years, maybe decades.
I mostly said nothing since it seemed no one was interested.
During the contract, I wrote a doc about the shortcomings, problems, and potential solutions, adding to it whenever I ran into something. From code to management to tools used.
When my contract ended, I sent the doc to a couple of people who I felt needed to read it. They loved it, and passed it around to practically everyone. I had emails from offices all over the world with questions about it.
I didn't renew the contract since I had already moved on to other things.
If I had that time again, I would speak up, but I would do so with a well-thought-out document.
This article is written atrociously. It's geniunely unpleasant to read the basement tier slop like this. It doesn't matter if it has a salient point because this article could have been a comment.
Agreed, I can't read articles anymore with that Claudish stench of confidence, impactful sentences and dramatic negative parallelism. At some point you just start to skim it and reverse engineer the simple original prompt which is "write an article about how people don't speak up because it can hurt their career, use real world examples".
I just realized what the "AI summarize" feature is for. This kinda turd. I'd never wanted to use it, because either I wanted the joy of reading whatever it was - or needed the details in full because it's documentation. Now, finally, a use. Manmade horrors of daily life.
Remember sharing simple thoughts between each other? Now you can do the same thing but with two AIs in between, one that produces words out of an idea and one that collapses them back. This is the way of the future.
When you, your friends, and your own children's livelihoods are at stake, the least you could do is make them clear their throat a bit as they try to buy time to answer your questions.
Leadership. We can spend megabytes of characters and fat piles of AI tokens, but the best leaders are those who remain humble enough for anyone to tell them safely that their prize surfboard is really a piece of drywall.
And when such negative feedback arrives, they don't get all Colonel Kilgore from "Apocalypse Now" and decide that CHARLIE DOESN'T SURF.
Unfortunately, the clowns get in those higher places because they own the circus already. I stopped counting the amount of times CEOs and CPOs told me "No more meetings to plan out what will happen, there's too many of them, let's dev it and see what happens" (most of the time, this is a world destroying, change-half-your-data-format-under-your-feet event).
But make no mistake: this is also a result of so many countries' piss poor work laws. I can push back against my CEO and happily do so and tell him it's a terrible idea, because the worst that happens is that he gets pissy, but I will not get fired because of it, not get fired because of putting it in writing, because firing people for that would be wrongful termination. Boeing scale fuck ups could only have happened in the US because those engineers would be fired for speaking out.
There is incentive to stay quiet: getting the paycheck and a stress-free evening with my family.
Putting a price on the decision? This is very bold statement, there are few people on the planet who can give right predictions about the price of the decision.
Imagine engineer saying: "this will ruin our company"
CEO: "What? excuse me, how did you come to this conclusion? what analysis have you run? how did you get these numbers?"
I don't think what you are describing is easy to accomplish in practice, you made it sound simple, but complex systems don't operate this way. You have 100 departments, each can contribute 1 tiny problem and combination of them could lead to catasthropic outcome, but in isolation price feels like negligible or too small, no one can put the price on the decision
I mostly said nothing since it seemed no one was interested.
During the contract, I wrote a doc about the shortcomings, problems, and potential solutions, adding to it whenever I ran into something. From code to management to tools used.
When my contract ended, I sent the doc to a couple of people who I felt needed to read it. They loved it, and passed it around to practically everyone. I had emails from offices all over the world with questions about it.
I didn't renew the contract since I had already moved on to other things.
If I had that time again, I would speak up, but I would do so with a well-thought-out document.
But I have to push back?
Just end middle management and the issue from that article suddenly vanishes.
And when such negative feedback arrives, they don't get all Colonel Kilgore from "Apocalypse Now" and decide that CHARLIE DOESN'T SURF.
You can push back and change decisions that happen one layer above but can't do much more than that unless you want to become an activist.
You have to have trust that the higher ups are smart enough to be trusted with the decisions.
But make no mistake: this is also a result of so many countries' piss poor work laws. I can push back against my CEO and happily do so and tell him it's a terrible idea, because the worst that happens is that he gets pissy, but I will not get fired because of it, not get fired because of putting it in writing, because firing people for that would be wrongful termination. Boeing scale fuck ups could only have happened in the US because those engineers would be fired for speaking out.