Senior here. Where I work, everyone has the authority of the position below them. The middle management above my team decides language, framework, and architecture. They were hired from much larger companies, so naturally they just know more. I think our 10mil/yr company doesn't need the complexity of a 100mil/yr solution because we're not Amazon and we're never going to be Amazon. But, we now we have dozens of lambda functions in multiple languages with multiple configs designed in different ways deploying from multiple processes from multiple repositories. Our team is having a hard time changing and fixing anything because the cognitive overhead nears the limit of human capability. I was told "off the record" its because we didn't execute their vision the right way.
I'm starting to think I work in a toxic environment.
Software design doesn't have a formal theory that defines optimal design and there isn't any empirical evidence either.
We know the shortest distance between two points because we have a formal theory that defines it. Because software design has no such thing, everyone is making shit up.
Doesn't matter how intelligent you are. If the thing that's being designed can't be quantified it's the wild west. Those brains are focused on optimizing things we have no idea how optimize and things we can't even measure.
Of course that’s off the record. Because the questions arise from that would place blame where it belongs, on whoever told you that.
Their vision? Like from a dream they had? That was the end of their contribution? Share the vision and play no role in managing anyone building it out? Nice. That honestly sounds like someone that needs kneecapped.
Yeah that's quite toxic. If the project is successful, the top level gets the praise for the vision. If it doesn't, the team gets the blame for lousy execution.
The responsible for executing should have a day in a lot more things, else it's gonna be a blame game.
You had it right with your first statement. Blame always goes to the top. They don’t do anything, making decisions is easy, compared to actually getting it done on a deadline.
Get all the credit when things go well, deserve all the blame when things don’t. Because it’s also poor management when your workers aren’t properly managed and thus don’t properly build out your vision.
I'm starting to think I work in a toxic environment.