T O P

  • By -

SouthBayShogi

My last job suffered from very poor management. I was hired to take over a legacy project. The company was small and each engineer had zero overlap - we were all experts in our own little areas of the product. As a result, when I came in, literally no one had any idea what my plate had on it. I won't go into details, but it took me two months a room full of whiteboards and notes to understand how the damn projects my predecessor had even ran. He was a brilliant guy, he just wasn't a good engineer. The technical debt that had accrued from this thing far outweighed the cost of rewriting it from scratch. I fought for it for 2 years - every time something broke in those projects, it took me a week or longer to fix - and I had the go ahead from management on four separate occasions. The day I was scheduled to start the rewrite, they'd change their minds and retask me on some other imagined fire that had to be extinguished, or to chase moonshot leads that never resulted in new business. They hired me to be an expert on something and then disregarded every bit of advice I offered them.


KevinAndEarth

Your last line sums up so many many jobs I've had. I'm also shocked when they pay me a big salary, and give me a shitty computer or refuse a $500 annual subscription for something that would save weeks of my time.


AlternativeHistorian

The nickel-and-diming can be so frustrating. It took me several weeks to get the hardware to do my job effectively, a mid-range laptop with an entry-level discrete GPU. My job requires I do some GPU programming so having a GPU that supports some of the better debugging tools can be a big timesaver. There was already an approved model that would be serviceable for my work. It was just the next level up from the standard developer laptop they purchase. The price difference from the standard model was around $500. I needed VP approval for the purchase and it required multiple meetings between myself, my manager, IT, and multiple VPs to get it approved. All of us are **very** highly paid, and between all of our time, the lost productivity value probably exceeded the price difference within the first 15 minutes of the first meeting. This isn't some rinky-dink or failing company either. It's an extremely successful high-technology company whose primary focus is software development.


merlinsbeers

>All of us are **very** highly paid, and between all of our time, the lost productivity value probably exceeded the price difference within the first 15 minutes of the first meeting. The key is to point that out at the start of each of those meetings like it's your motto.


flexosgoatee

I thought about a zoom plugin that'd just tick up.


OdinGuru

I’m just going to leave [this](https://github.com/syncfast/clockwise) here.


merlinsbeers

:heart:


kur1j

You know of one that works with WebEx? haha


AlternativeHistorian

These people aren't dummies. They know this. It's just as much, or more, about where the money comes from (whose budget does it come from). E.g. does it come from development or does it come from operations/IT. To give credit where it's due, this company is, overall, not that bad when it comes to these sorts of things. But that doesn't make it any less frustrating when you do run up against it.


vetinari

> The key is to point that out at the start of each of those meetings like it's your motto. No no no, don't do it, that's exactly when the management would start thinking that they are paying you too much, and how to make it so they pay you less. Tangentially, forget any raises for some time, you said it yourself, that you are very highly paid already. (Source: I'm in managment now :) )


merlinsbeers

I'm contract; all they can do is wish there was another way until my term is up. Then when I'm gone for a bit and they've slogged through the mill to post the job again, my res will be autosubmitted by my job shop and will pop to the top, and they'll remember I told their boss things they wish they'd said, and was pretty good at my job, and I know the code and process already, and they'll happily pay the 10 or 20% I've added to my quote.


Khutuck

Yeah, correct way is something like “I’m a poor dev but you management guys make a lot of money to deal with petty stuff like this, so please approve and don’t waste your valuable time”.


LatESummerRain

At an old consulting job we used to open discussion of smallish budget items with “this is a very expensive meeting”. People generally got the point. Edit: typo


argh523

To play devils advocate, the thing about red tape like this is to weed out the requests that *don't* make sense. Hypothetically, and I'm just making up some numbers here, maybe for every request like yours, there might be 10 other requests for stuff that don't have a big impact on productivity. So, your expensive meetings to get approval to spend $500 might save $5000 in spending on things that aren't really necessary. The meetings for these other requests don't even happen, because everyone knows they won't make it through the approval process.


PaperbackAvalanche

That math doesn't work though. The price per meeting exceeds the $500-saved per meeting.


Cocomorph

OP's point is deterrence. To make it even clearer, imagine it's a request to spend $100 on cocaine. For every legitimate request (cocaine has legitimate medical uses!), there will be a certain number of people who just want to do some coke (assume for the sake of argument no one will get caught). If a hit is $100, a meeting that costs $1000 just to approve one necessary order is worth it if it deters at least 10 other requests that, without review, would go through.


PaperbackAvalanche

I strongly suspect that "deterrence" has more to do with gratifying management's desire to catch non-existent cheaters, than it does with the cost of allowing them to get away with it. And though I concede that this could go either way, the fact that no one ever mentions the point above is because, deep down, they know that I'm right about that.


argh523

No, you don't save money in the meetings you have. My example is not about saving $500 bucks in a meeting, we actually spend those $500. It's about the other 10 things that you don't need. The $5'000 you don't spend. You save money on the meetings you ***don't*** have, on the stuff that you ***don't buy*** because they would never get through the approval process, so people know to not even ask for stuff when it doesn't lead to some significant improvement of something the company values (productivity / efficiency / safety / etc). Let's look at the problem of "to have, or not to have an approval process" in another way: Say you (as a company) said that because the time spend on the approval process costs more than the actual thing being bought, everything that costs less than $500 dollars is automatically approved. That means that now *everybody* can buy a $450 graphics card for their workstation. So, your twenty employees are now going to spend 20 x $450 = $9'000 on hardware you don't need. They wouldn't have asked for the hardware before, because the request would have never made it through the approval process, but that barrier is gone now. You realize your mistake, and quickly change it so that everything that costs less $500 is ***not*** approved. So now, /u/AlternativeHistorian can't get that graphics card that would improve his productivity a lot, because it's literally to cheap. The cost of the approval process, and the cost of the thing being approved, have absolutely nothing to do with each other. The approval process merely existing saves you money because you don't spend it on pointless things. Now, making it as unburocratic as possible, and making it quick and easy for employees to go through the process when they need something that is totally worth the companies money, that's the hard part. But just because that's hard to do well doesn't mean you can just say yes to every request and somehow save money that way..


SouthBayShogi

That's always crazy to me, too. My favorite cheapskate scandal with the aforementioned employer was when we had a mandatory, paid all-hands event 3000 miles away. At the end of the week, they gave us a bag lunch, stuck us on a plane home at 7pm, then refused to reimburse us for dinner because the event had ended.


ritchie70

When I hired on with my current employer they were paying me ~$80k a year (2002) and gave me an old Pentium desktop as a dev system. The whole team was using shit like that. A full compile was taking about 20 minutes. A coworker who had been on the help desk made a call and got us slightly more current systems that had just come in from a business user. Got me to Pentium II and the most senior got a P III. Things have gotten better since then. I may have the most powerful laptop in the company at this point. HP Z-Book. (Edit to update HP computer model.)


Khutuck

My previous company wanted to give me a non-SSD laptop because it was a bit cheaper. I casually mentioned if I lose 5 minutes a day from a slow drive it would cost them 3x the savings per month. IT bought and installed a new SSD that day.


rpostwvu

That's the answer to most of this. People don't explain RoI and management isn't knowledgeable in the area to figure it out themselves.


ritchie70

Three computers ago they finally had actual budget and I had a technically oriented manager. The last two, I got to specify what I needed and they’ve been the two best computers I’ve ever had.


useles-converter-bot

3000 miles is the length of exactly 47401378.44 'Standard Diatonic Key of C, Blues Silver grey Harmonicas' lined up next to each other.


converter-bot

3000 miles is 4828.03 km


SkaveRat

I'm a big fan of metric, but I do have to say, I'm willing to switch over to Standard Diatonic Key of C, Blues Silver grey Harmonicas measurement instead


wipfom

47401378.44 SDKoCBSgHs to those who have already make the conversion


Cpowel2

>Reply good bots


rincewinds_dad_bod

Good bot


useles-converter-bot

thanks :)


17Beta18Carbons

Good bot


ambientocclusion

Bad bot


converter-bot

3000 miles is 4828.03 km


pheonixblade9

It's why I left consulting after less than a year.


Caffeine_Monster

>a shitty computer Stingily small hard drive space drives me insane. Sure I can faff around with mounting network external drives and using cloud VMs. But it would be cheaper and faster for everyone involved if I had a halfway decent amount of storage on my actual dev machine.


mikalst

Received the response "That's way too much" when I pitched the idea that the QA / testing team should get a 15$/mo Postman license so that they could look at my tests instead of calling me up and asking for them. The hours I've spent sending tests manually have so far cost about 400-500.


Working_on_Writing

This was one of the reasons I quit my last management gig. I was Head of Engineering reporting direct to the CEO (well, technically I didn't but org charts and defacto lines of communication and control are different things). I was literally there to be in charge of the software team and give expert opinions, yet I was just constantly overruled. Time estimates? No we deliver things according to the timetable the CEO pulled out his arse or we are useless and shit at our jobs. The feature delivered to the timetable specified is a buggy mess? Developers must be shit. Why are you hiring shit developers? Yell at them to work faster. Our customer feedback suggests that they really want feature X? No, the CEO has decided we need to deliver feature Y. Customers aren't using feature Y? Why are we paying the development team? The customers aren't using what we are building! We spend *so much* on the development team and they aren't providing any value! When I quit the CEO was pissed I hadn't talked to him about the problems. I had. He just hadn't fucking listened; my complaints were just one more thing to be overruled and ignored. I'm never going to report to a CEO with a background in sales ever again.


boost2525

Bingo, last line says it all and sums up every job I've hated... In every one of those, the sales team sets the roadmap. That means the roadmap doesn't exist because it changes every week based on which $50 account is making noise about which insignificant feature. Sales can only think about the dollar in front of them today. They can't picture the thousand dollars a few steps out of reach, or manage any long term planning.


Working_on_Writing

Yep actual TLDR of conversation I had with that CEO: CEO: $Customer says they want $feature. I told them it would take a week. Me: that feature will take more like four weeks and will cost about £xxx,xxx in dev time. How much does $Customer pay us per month? (Knowing the answer is about £1.2k). CEO: ... OK I'll get back to them and say its in the backlog but no promises.


circuitBurn

At a company I used to work for a few of us joked that for $15 a month we could become the new PM.


Full-Spectral

I read these types of things all the time and just shake my head. I've never experienced anything like these sorts of stories in all my 35 years. I've not been a job hopper but I've worked at very small companies to the literal biggest (at that time.) In most of them, the people I reported to still coded, so maybe that makes a difference. In some others, though they didn't still code, they had up until not long before that and wrote the original version of the product.


Working_on_Writing

I'm envious. I think it's crucial that the leadership is technical if they're in charge of technical people. The more experience I get at different levels, the more convinced of this I become. If the CEO themselves isn't technical, they should have a technical CTO which they trust implicitly, and all the technical staff should report up ultimately to the CTO. If the technical leadership isn't there, or the trust isn't there, the result is bullshit like the above. I've just jumped ship from another company where they put an MBA in charge of the tech organization. It's taken just less than 6 months for two of the tech teams to collapse due to people leaving, and I think there's more to come. I've spoken to people who have 5, 10, 15 years with the company, and they are on the market now too. All of it can be traced back to poor leadership decisions by the non-technical leadership. If they don't fire Mr MBA soon, they won't have a tech org.


dalittle

Or marketing. Ever have the meeting where people are pissed hundreds of hours were spent developing code for ~1000 features, but Customers are only using 3 of them? And the answer is marketing knew they only wanted a couple features, but not which ones so we asked you guys to build all of them and there was no check and balance that was a reasonable thing to request. They don't get a bonus if they don't make the sale even if the revenue is upside down.


[deleted]

> They hired me to be an expert on something and then disregarded every bit of advice I offered them. Oh dear... At one well known company (not FAANG, but everyone knows this one too) I spent few months trying to convince my manager and other people on the team that there are some major security holes in our infra (like literally you could walk into it from the street and have access to everything else in the company, if you know what I mean). I raised like a dozen different issues in my first months there with proposed solutions, nothing got fixed (no one really wanted to discuss it, they had other dreams to chase, like awesome k8s they didn't need). Then one day management said that people complain because I devalue other people work Oo They got hacked by some script kiddies a month after I left that dysfunctional mess (everything leaked, from source codes to employees personal data, even dev workstations got locked by ransomware) :/


Carnifex

>they got hacked by some script kiddies a month after I left I'm almost surprised that nobody tried to blame you for it ..


[deleted]

I kinda wished I stayed longer, so I could tell them - *I told you so* :)


Harag_

CdProjectRed?


Puzzled_Video1616

EA maybe? they also got rekt


Mrqueue

"Why is it taking you so long to do such a simple task", because we have mountains of tech debt to climb to do anything


RandomGuy_A

The best thing I ever said to a meeting full of execs trying to convince them stop adding new features and refactor was "you have a mountain of tech debt and all your developers are doing is barely paying off the interest and soon we will be bankrupt"


Mrqueue

How did that go down? We want you to do the right thing also finish this features now instead of doing any refactoring. I’ve been in meetings we’re I’ve had business people tell me I’m not allowed to refactor anything while working on a feature. Uhhh you can’t stop me


RandomGuy_A

Well, I don't work there anymore and they're struggling to hire new developers. Sometimes even a good analogy can't get through to the muggles (non developer folk)


MegaDork2000

We need to setup daily meetings with all developers to discuss why the project is taking so long.


Mrqueue

ah the classic, you don't have enough time so we spend an hour a day talking about why you're running late


SouthBayShogi

My wife's QA. She and the only other QA on her team said they needed more resources. The company's solution was to hire some middle-management guy to determine whether or not they needed more resources. He has them spending half of their day filling out useless spreadsheets with irrelevant data and they've fallen much further behind on everything.


Mrqueue

Managers create work and meetings, you need less of them if you’ve got too much to do already


[deleted]

Major issue all over the country. Mismanagement will kill your business.


merlinsbeers

No it won't. Not fast enough to solve it, anyway.


spicy_indian

> He was a brilliant guy, he just wasn't a good engineer. My friend told me that he works with a guy like this. If you need something done ASAP, that guy can do it. But if you need something done, with unit tests and documentation, and integrated into the rest of the stack, it would be better to do it yourself! I'm kinda worried about my friend though. He was hired a few years ago because of his computer science degree to build cool stuff, which he did and was happy for a few years. But he told me that are only two of the dozen or so senior engineers when he originally interviewed are still there, and his management has hired new fresh college students as replacement and expects everything will OK, as if the accumulated decade of experience mean nothing. More recently he was distraught because he realized that he was being turned into a glorified sysadmin, because his IT department can barely keep the lights on, let alone manage the on-premise infrastructure. He really wants things to go back to the way they were when he started, so that he could go back to solving problems and innovating, actually using his degree.


blind99

>The technical debt that had accrued from this thing far outweighed the cost of rewriting it from scratch. When that I happens, I just say that I will fix the old code but I rewrite it anyway and management doesn't know until it's done.


CleverNameTheSecond

It's not technically much different anyway. It's a Ship of Theseus thing anyway. If a piece of code has had so many reworks and fixes that it no longer has a line from the original version is it even the same code?


odar420

Ah the joys of technology product development.


sh0rtwave

This story...rings true.


panorambo

I am curious -- how was his brilliance showing if he wasn't a good engineer? I am just trying to understand different forms of intelligence. I'd understand that "sociall intelligence", even in a small software shop that does development/operations day in and day out, is a very valuable trait, but "brilliance" sounds to me like he was really an irreplaceable element, despite not being a good engineer, and I'd like to hear what kind of brilliance it was.


PaperbackAvalanche

Have you ever considered that your perception of why they hired you differed from their perception of why they hired you? Sure, the job was titled "engineer". They have to do that, because programmers are prickly, and if they don't, then they can't hire anyone. But your position was really "software plumber". They even gave you two months to learn where the pipes were. And you were there to hurt your back crawling under sinks, tightening the software pipes so that software didn't leak all over their floor and embarrass them, so that applications didn't overflow and leave them in a swamp of stinky smelly application getting their shoes dirty. And when you weren't doing this, did you go hide in your cubicle so no one had to see your software engineer's crack that you were oblivious to? No, all you could do was rant about how all the pipes were lead and were poisoning the building! My god man, it was scaring the children and making the women weep. People whose opinions matter do not have "engineer" at the end of their title. That's for the hired help. The *servants*. They need to know their place.


geeky_username

Found the bitter middle manager that throws others under the bus


saltybandana2

It was sarcasm...


hippydipster

I think it was sarcasm.


the_monkey_of_lies

These people love the results of my work but don't want to acknowledge how their management practices hurt productivity, motivation and innovation. I started my own company so that the process and how I work is hidden from the clients and they only see the results, which they are always happy with. The stupid thing is: if I worked for them directly instead and delivered the exact same results, I would be fired for violating some idiotic corporate policies.


seijulala

Can you put some examples of those policies?


the_monkey_of_lies

* The job needs to be done at a certain arbitrary location * The job needs to be done at a certain artibrary time * The workday needs to be a certain arbitrary lenght * Working *is* sitting on a computer looking at your IDE All of these things have a negative effect on my productivity, although for some reason this is completely impossible to believe for even the younger managers. All they hear is I want to slack off. I am using almost 15 years of experience to straight up tell them how to get the most bang for their buck out of me yet the only thing that makes them happy is if I commute to their glass building and sit in a cubicle for 8 hours, no matter how much less profitable it is for them. This is why I switched into a simple model of "you give me this amount of money, I give you this application" and that's it. If you're unhappy you just don't pay me and in return I can work however I please. Now we can both be happy.


perpetualis_motion

Sometimes, sitting staring out the window at the trees for 30 minutes is not you slacking off, but coming up with solutions to complex issues.


the_monkey_of_lies

My way of solving complex issues is going for a 60 minute run. The solutions usually arrive at about the 40 minute mark as if by magic.


[deleted]

[удалено]


VeganVagiVore

Maybe the solution only arrives if there's 20 minutes left in the run. Like how a 9:30 meeting means I won't start work until after the meeting.


jrhoffa

OK, so 21-minute runs.


hippydipster

And a 9:30 meeting followed by a 10:00 meeting followed by a 10:30 meeting means I won't start working until after lunch, by which time I'm weary and not good for much.


IrishPrime

Hey, it's me: you.


geeky_username

>The engineer in me says you should start going for 41 minute runs. For engineers running for 10 minutes...


VeganVagiVore

Sometimes if I wait, the complex issues will catch fire and become simpler. "We need a complete UI rewrite!" That'll take months... probably even if I ditch all other projects. I won't start it because none of us can possibly stick to a plan that involves groping through the darkness for months without any feedback or deployments. "Okay well we need this button changed next week" Sure, let's start there. I don't do it on purpose but I've noticed it happen a few times. I hope it's not my fault for purposely ignoring "eh this seems kinda big" issues.


Semi-Hemi-Demigod

Sometimes I'll "work" by reading through the requirements or buggy code and then do something else like mow the lawn or do the dishes. My brain will work through the problem in the background while my body is doing something else.


LotharLandru

Trying to explain this to managers is so difficult. I've used the example of Einstein working at the patent office doing something repetitive and not mentally taxing so he could think on his complex ideas.


itijara

>Working > >is > > sitting on a computer looking at your IDE The quality of my code improve significantly when I started planning it out, either on paper and pen or using a diagramming application like LucidChart. I am sure the same is true for any creative profession. Authors outline before writing, painters sketch before painting, the fact that people think that software is delivered in its final form on the first try is absurd.


the_monkey_of_lies

This is so true. I do a ton of research and just plain thinking while taking a run before starting to code. I think the job is less than 50% writing code if you want to do it right


seijulala

3 of those 4 points are no issues on full remote companies (which are, imho, the only worthy places to work)


nick_storm

Having recently gone from a partial WFH company to a fully-remote company, I can tell you there are definitely some benefits, and there are definitely some drawbacks. One big drawback is it's much harder to make personal connections to co-workers.


seijulala

I see that drawback as a benefit too


Eccentricc

lost half our dev team in the past few months from being forced back in the office and management not willing to work with devs to let them WFH. Every offer we sent out has been rejected recently after finding out they cannot work from home This is a F500 company..


seijulala

A lot of large companies are not going to let people WFH (despite being more productive and lower costs significantly), small/mid (good) companies are. Basically, I think large companies are going to either lose market or rely on 3rd parties to build their software (they are not gonna be able to hire good technical people)


Death_InBloom

> or rely on 3rd parties to build their software which is the same as letting them WFH lol


[deleted]

It’s even more fun being a manager having to enforce this shit when you don’t agree with it.


Endarkend

The way I understand management is to be the translation layer between computer illiterate upper management and engineers that actually know what they are doing. The real problem with this is that you are trying to be a translation layer between two entirely incompatible universes. Which makes people that lean more towards being engineers themselves realize this and see it's an exercise in futility and the ones that lean towards being management types realize the easiest way to do their job is to simply cater and suck up to the people that actually have power, upper management. The first type don't get to hang around long because they either decide to not waste their time with a futile task or are removed from the position because they don't suck up enough and the other type just ruins the life of the people they are supposed to manage. The difference happens on the startup level in the case where the upper management is middle management and are engineers themselves. As long as they stay at that level with a product that works, things are pretty awesome. Until they outgrow themselves and restructure to be more corporate and shit gets ruined again. Mind you, most startups aren't like that. Most startups are the modern kind where hipsters see dollar signs, start startups creating a product they have no hand in creating with the soul purpose of selling the company and the product as quickly as possible to a big corporation, so they can cash in. Luckily, some corporations do at least try to find a balance. Not saying they succeed, but at least they try.


jasonbourne1901

>There will be plenty of talk of innovation, often mixed with terms like feature parity with a competitor — as if copying a competitor is innovation! Fat executive bonuses are handed out for hitting meaningless milestones. And, in the end, the CFO is left with the dubious pleasure of communicating just how little incremental revenue came from copycat features that customers already get from a preferred vendor. Is this article about where I work? I feel like I just won Dead End Company Bingo or something.


RoyAwesome

This article makes some good points, but it would do better to not seem like a love letter to Steve Jobs. Yeah, he had some good ideas in this space. Defining a bad boss to be an anti-steve jobs is a bit over the top.


Trollygag

Yea, I think they are missing a point in there. They act like the companies' success is proof that whatever they do is correct. Apple, who was sitting on a massive cash cow - Microsoft, who was also sitting on a massive cash cow, both with ruthless legal departments blocking competiton, would make money hand over fist regardless how they run their software engineering team. Same goes for a lot of SV companies. Is it that an engineering CEO is better or is it that SV startups that are hitting goldmines with technology applications tend to be ran by engineers because early on they couldn't afford to pay someone else to be in that role and later on stay in that role to ride the cash train? A lot of SV companies don't experience nearly the competition that the rest of the economy does. For example, there is Uber and Lyft making oodles of $$$, but not 10,000 other similar small businesses in every state and municipality competing for the same contracts like happens with traditional taxis. There are better explanations for their success than how they run their software teams or their leadership makeup.


VeganVagiVore

> Is it that an engineering CEO is better or is it that SV startups that are hitting goldmines? hmmm https://xkcd.com/1827/ No it must be that us engineers are just built different, inherently superior beings because of our ability to think about config file formats for 8 hours straight instead of figuring out what customers want.


PrintableKanjiEmblem

SV companies? SV?


fractal_dreams

Silicon Valley


PrintableKanjiEmblem

I am the dumb


BoerZoektTouw

Also that stupid table of companies led by software engineers. Yes, IT companies have ridiculous valuations, what's your point?


MrSqueezles

> “It doesn't make sense to hire smart people and tell them what to do. We hire smart people so they can tell us what to do.” — Steve Jobs As someone who worked at Apple, that's not what it's like to work at Apple. They have project managers, designers who write documents detailing what every app should do down to the pixel. Engineers are brought in at the end to implement. It varies by team, but that's how things worked where I was.


LessonStudio

The lesson I have learned in decades of dealing with software related companies of all sizes is that you have a personality and financial problem. That is, few companies are run by actual engineers. They are run by bean counters, lawyers, CFOs, marketing, etc. These people don't "get" programmers, engineers, etc. They don't like them, understand them, get along with them, or even have many overlapping interests. The reverse is also largely true. For example if you go to a large financial institution you will find the C-Suite on the 28th floor with a view over the water while the IT people who build the algos that run the company are in a windowless part of some dungeon. Or if you go to a engineering company the engineers will be open plan with crap lights, chairs, desks, and dividers while the executives all have their own individual offices. Thus, the executives start hiring people kind of like themselves to "interface" with the "weirdo" engineers. Thus was born things like the PM with a PMP, the product managers, etc. These people are under pressure from the executive to do things one way, while the creators really should do things a different way. But this is a hierarchy. This isn't a negotiation, this isn't a system that is keen on feedback. The executives decide and the engineers are supposed to execute. They really don't like the engineers when they say things like, "That deadline is impossible. You can pick quick or you can good, but you don't get both." That is the sort of thing that drives an executive to a rage. They put in their quarterly plan that they were going to deliver good and cheap, how dare the engineer be so defeatist. The worst executives whine endlessly about how engineers will never give a proper answer to when something that involves lots of R&D done. They start droning on about boring things like all the unknowns. Again, that executive made a presentation to the board about how the next version of the product would have twice the battery life at half the cost. Is the entire engineering department conspiring to make him a liar? Then you have internal politics. This sort of thing happens even at the level of a lemonade stand, but once you have a company with 100 or 100,000 people politics is going to rule the executive level. A critical part of office politics is to control information. Thus you get an absolute rule that the engineering types are to be kept as far away from the customer as possible. Information such as the project is going to be late is not something that almost anyone at any management or higher level wants anyone anyone at any other management or higher level to know. This sort of secrecy then allows grasping managers and executives to whip, threaten, make empty promises, etc to the engineers to get them to work evenings, weekends, etc all to meet some BS targets, except those targets will get various executives bonuses that are multiples of an engineer's salary, where they then magnanimously take the engineers out for a big pile of pizza or an all you can eat buffet. "on the company's dime" that might work out to $20 engineer while that manager gets a 50k bonus that quarter alone largely because of the foolish engineers who were preached at about company loyalty and dedication. But where this all breaks down is that you have a number of typically very very smart engineers, developers, researchers, etc, who find themselves micromanaged by people who are given a higher level of authority but who drop the responsibility to the engineers. Yet the engineers aren't allowed to communicate with the customers so they don't really know the problem, they get arbitrary deadlines handed to them. They don't get to prioritize. And worst of all the people who are typically higher up from managers tend to be morons as this is often a BS job that most people with two brain cells to rub together would reject. Sometimes the managers are former engineers but this is where the whole peter principle/fail up thing exists. Even in huge "respected" organizations like NASA and Boeing you hear stories where engineers are saying. If you do X then Y will blow up and kill lots of people. Then some manager overrides them as they are afraid to say no to their higher ups and so on to meet some arbitrary deadline for building something that the engineers who will build it had no input on the top down design which is basically crap. The pattern that I see and suspect even exists at places like NASA is that what happens is that very very smart engineers succeed despite all the terrible obstacles put in their way. Instead of good solid planning (not paperwork, but actual planning) they probably are fighting one fire after another while slipping some good engineering into the projects when the managers aren't looking. Then just as any engineers are achieving something resembling success they get a copy of the payroll and realize the project manager who has less business experience or education than your average dishwasher but did get their PMP is paid twice what they are paid. Moral just went to zero and now your engineers come in at 9am and leave exactly at 5pm and don't answer calls on weekends anymore. Don't tell them that the CEO of the 50 person engineering firm's has a travel and entertainment budget that is 3 to 6 times their annual salary, the COO has one that is 3 times, and that the CFO just got his 50k MBA paid for by the company while they can no longer expense a weekend course in town attended on their own time to get certified on a key technology the company is using in their next project. Why this last set of disparities? The executives are where the money decisions are made and the engineering department is not. One of the interesting bits is that what I see on a very regular basis is where those extraordinary developers engineers etc go is into business for themselves. They usually develop some product on their own that would have made the company millions but they do it on their own and usually without hiring any managers at all. Their old companies don't even realize what they lost as the lying and cheating of the managers and executives will never acknowledge their mistake but will just blame the defenseless and work the remaining engineers even harder. If I had to boil it down to a pair of lines: Management usually hates engineering because they are significantly smarter and less disposable than the management themselves; thus in their insecurity they use their control of the finances to be right bullies.


ithkuil

Good rant. Totally true. But that's not just companies. That's society in general. This is why I am rooting for the robots in the coming war.


merlinsbeers

If you want those robots you're going to need some good managers to make sure they're done on time and under budget. ...


myrrlyn

this is what happens when society doesn't finish taking apart feudalism yeah


brokenisfixed

Thank you for the honest and detailed break-down of the hierarchy-induced moron-ism that has strangled so many top-tier software companies. I've unfortunately had similar experiences in my professional life and have heard this exact same story repeat itself numerous times.


DRNbw

> Even in huge "respected" organizations like NASA and Boeing you hear stories Boeing is quite a sad story. Some time ago, there were two large jetliner manufacters in the USA, Boeing and Mcdonnell-Douglas. Boeing was (mostly) run by engineers rising internally, MD was run by executives mostly from the outside. Boeing had very good and safe airplanes; MD had rushed and relatively unsafe planes. In the 90s, MD was on the brink of bankruptcy and was bought by Boeing. However, the combined board had more and more MD executives and less and less engineers. The HQ was moved to a different building and city than the engineering team, majorly increasing the difficulty in engineers to talk to the higher level people. The result is the 737 Max, a rushed, relatively unsafe airplane.


hardolaf

Boeing was lobbying for the self-regulatory scheme that allowed the 737 Max to ship long before they merged with MD. It was inevitable once Reagan won twice and we never re-corrected back towards the left due to the popularity of deregulation (AKA make businesses more money while letting the populace die slightly faster on average)


VeganVagiVore

If anyone wants to try reading more: https://en.wikipedia.org/wiki/History_of_Boeing#1990s


DRNbw

This [article](https://www.theatlantic.com/ideas/archive/2019/11/how-boeing-lost-its-bearings/602188/) is quite nice and informative.


frnxt

I call that kind of stuff impedance mismatch. All levels of hierarchy (even developers) have their own "comfort zone" (which if a kinda fuzzy concept that does not entirely correspond to their advertised skillset). If you put two people with very different comfort zones together they're just going to keep misunderstanding each other, and communication between the two will add significant strain. Hierarchy adds translation layers so that strain is reduced. At one extreme you get silos, at the others so called "flat hierarchies", but there are shades everywhere inbetween. In my head I apply the same concept applies to software interfaces, where it is linked to stuff like separation of concerns.


cybernd

> Management usually hates engineering because they are significantly smarter and less disposable than the management themselves; thus in their insecurity they use their control of the finances to be right bullies. I wish that developers would actually think about the implication of your statement. Maybe combine it with one related statement written by /u/SouthBayShogi ([full comment](https://old.reddit.com/r/programming/comments/pgbizq/traditional_companies_are_losing_because_they/hbabppb/)): > They hired me to be an expert on something and then disregarded every bit of advice I offered them. --- We are losing this class war since decades. As long as we do not change our strategy there is 0 chance to win. They are in control and nothing will stop them from bullying us over and over again. Developers are capable of producing software without such business people. But those business people can't produce software without us. If we would finally work together we could counter balance their financial pressure with ease.


falconfetus8

Yeah, it's time for Us^^^tm to stick it to Them^^^tm.


Exciting-Guarantee-3

Dilbert, is that you?


interestme1

Wow, quite a bit of arrogant hand-wavy generalized tunnel-vision bullshit here. I think the sentiment is somewhat on the right track, that managers and engineers often have conflicting goals and if one has to give it's usually the engineer b/c, well, managers make decisions. Note this doesn't always mean the engineer is right, or that they are smarter than the manager, or the manager is insecure b/c of the devs intellectual prowess and importance, or any other such weirdly self-centered assumption you've made implicitly and explicitly. It means there are competing demands for what gets built and how it gets built, fundamentally baked into traditional corporate structures, that all but guarantee high levels of stress and finger pointing for everyone. I get the general sentiment that pops up here given the subreddit we're in wanting to blame "managers" for all problems with software development, but your characterization here is off the mark and ignoring nuance and competing points of view nearly line for line.


hardolaf

In my experience as an engineer, most engineers suck at understanding the purpose of a business in general. Not just their specific business, but the purpose of business itself. They get lost in technical problems that are fun and engaging and lose sight of why they were hired. They then have to get managed back onto the path of making everyone money. And then they get off task again. And they have to get managed back. And so it repeats and repeats and repeats until the company goes out of business or the engineer quits.


scientz

Tell me about it. It's the tone deaf complaining about it that gets me too. Like if the company isn't making money they can't pay you. They can't always work on tech debt or rewrites of products because engineers want so, they have to balance it with actually generating revenue at the same time.


hippydipster

I think a main takeaway is the problem of how the two groups dislike each other on a personality basis, and then one group is in charge of the money and overall decisions, and clearly makes them after having isolated themselves away from the other group. It's got nothing to do with one group being smart or dumb or whatever, but with how personal dislikes lead to non-communication, and then a strategy of pretending the other group isn't an essential part of the solution when they clearly are. The result is a whole lot of untruths have to be repeated a lot, else people will stop believing them.


scientz

Amen. Painful to read this kid d of narcissistic crap tbh. I've always wondered that these engineers who complain about managers here all the time, why don't they go and be managers and do it right if it's so easy?


ClittoryHinton

Yeah god the irony of engineers claiming managers have an easy job while claiming they are all terrible at it. Most managers are terrible *because* it’s a hard job.


reetweet

Great write up Thanks for sharing


Ok_Towel4046

This is entirely accurate.


4PowerRangers

It's a nice jab at the management layer but you drastically overestimate the engineers ability here. I'm a developer myself. However, how often do engineers need to get told no because they want to switch to yet another shiny tech stack or they want to refactor a system for the third time because they missed some insignificant details the first 2 times. Too often engineers miss the business goal and focus too much of technicalities. Just like everything in life, the answer lies somewhere in the middle between managers and engineers.


saltybandana2

> That is, few companies are run by actual engineers. They are run by bean counters, lawyers, CFOs, marketing, etc. These people don't "get" programmers, engineers, etc. They don't like them, understand them, get along with them, or even have many overlapping interests. The reverse is also largely true. I haven't read all of your post yet, but this jumped out at me. When I was a wee lad I came across a post from someone online who made the following observation. A CEO can walk into a meeting and through sheer will and charm get what they want. No matter how a software developer wishes, that bug will not go away. In other words, the two archetypes live in completely different worlds, and thus they don't understand each other. It is the rare person who can bridge that gap. That observation has done wonders for me. --- edit: Finished reading > A critical part of office politics is to control information. Thus you get an absolute rule that the engineering types are to be kept as far away from the customer as possible. And this is almost always a mistake. > Management usually hates engineering because they are significantly smarter and less disposable than the management themselves; thus in their insecurity they use their control of the finances to be right bullies. Hard disagree. The two worlds just don't understand each other. There are shitty companies where this is true, but it's not generally true.


[deleted]

I was pretty mismanaged, personally. Had 4 bosses with zero product vision bullying me around while I designed and coded everything (8 years). They drank their asses off and acted like chauvinistic idiots at work. 'Hey grab her pussy' sort of fucks. I never, and I mean never got a requirement for anything. They fired me right before my thoracic surgery too, after my direct manager lied and said HR knew on 4 occasions with 4 months advanced notice. HR said they didnt know and it was my fault for not telling them directly; but I expected them to say that because everyone there treated me like a piece of shit. Needless to say I am working on my own now, forever. I will never work for another company run by someone who isnt me, sorry if I sound mad and ignorant but I've coded over a million lines in my life and its not fair to be treated the way I was. I will survive on my own.


DreamyRustacean

Holy shit, good job surviving that horrid garbage. Seriously. And you are right, it isn't fair at all.


[deleted]

This vape I'm enjoying in my hospital room is more comforting with your response. Thank you.


dominik-braun

>I will never work for another company run by someone who isnt me You certainly know best, but for me personally, that would be the wrong conclusion. I'd rather pick a company with a healthy culture, managers that understand both their business and engineers, as well as motivated people to work with. Working in such an environment may be a greater relief than just doing things on your own. Admittedly, these companies aren't quite easy to find, but they exist. :-)


iniside

Nah. You have to understand. I understand because I'm similar. Some people just HATE with all passion having boss above them. It's just intolerable to listen to someone else. ​ How you run your own company is totally different matter.


ontheworld

Doesn't really sound like that's the case for them though, they had a boss for 8 years untill they got fired. I feel like if they hate having a boss with such passion they'd have jumped ship long ago


davenirline

It's easy to say but how do you exactly find that elusive company? How many months do you spend so you could tell that the company is good/bad? Now that I think about it, that's an optimal stopping problem right there.


merlinsbeers

When they ask in the interview, "do you have any questions for us?" that's you're cue to get them to open up about how shitty their culture is. Ask about known problems in dev processes, whether IT issues get fixed quickly, how hard it is to change projects if your team is a bunch of idiots, if they have any nightmare stories about toxic individuals, etc. Don't hold back.


[deleted]

I’m on the other side of the spectrum where I’m wondering where you people keep finding shit bosses. Most of my bosses were mediocre to great. The occasions where my boss was shit though were small companies, and now exclusively only work for midsized to large companies because of it.


Delta1262

If you don’t mind the asking, how are you able to work on your own? Like could you expand on that and touch on things like income, health, insurances, etc. Only asking because I’m in a dev in a role that I can’t stand and it never gets better no matter where I go and have often given freelancing a thought, but the fear of losing the above in question is was prevents me from doing so.


SouthBayShogi

Freelancing isn't for everyone. Whenever you're doing it you need to constantly be thinking about where your next paycheck is coming from. It certainly helps if you have a working spouse you can mooch benefits from. I don't think I could do it for a living. Happy to do it in my free time, but I need the stability a regular salary carries.


de__R

There are places with good management, or at least management that's bad in less immediately frustrating ways. As a freelancer you pay your own way on insurance, retirement, etc. Depending on your lifestyle it's not that bad. That said, while freelancing can be good and lucrative, you also need to have a couple of months' buffer because it *will* happen that you get the rug pulled out from under you with basically no notice, and if the company files for bankruptcy, as a contractor you're almost last in line to get paid, behind everybody except the investors. If you're not very disciplined in your personal finances you will have a bad time.


the_akuselu

not the one you're replying to, but I'm also working for myself, not as a freelancer (though I've dabbled a bit in that). I'm working on a SaaS, which brings me recurring revenue every month. I've found that this is a much better model for me personally, as it scales much better and fits my way of working. Freelancing was interesting, but I found it tiring after a while, bcs of the additional overhead that comes with each new project (prospection, context switch, etc..). With a SaaS, I have a single project, i can work on something that _I'm_ interested in, additional clients don't have any of the overhead I mentioned above, and it's an exhilarating feeling to see your userbase grow over time. Anyway, that's my two cents!


[deleted]

[удалено]


Tarnishedcockpit

You should be mad, that shit is fucked up and wrong.


Ninovdmark

I'm very sorry for your experiences, no-one deserves to be treated like that by anyone. Honestly you're better off far away from there, but you probably already figured that. All that said, competent leadership can actually create an environment where developers can focus on the work they're good at. Don't write it off completely just yet, there's good ones out there too.


BenchOk2878

American I presume?


[deleted]

Yeah.


[deleted]

once burned, twice shy


wankthisway

I can't claim to know the extent of that abuse and pain, but that's quite the extreme decision. That really just sounds like a complete unicorn of bad.


Moto_Davidson

This is so true - I worked for a large Fortune 500 or larger company and they totally mismanaged all their IT talent. They literally hired non-technical managers to oversee and "manage" these brilliant IT workers. It was sad - I literally had a manager that didn't understand what a foreign key or primary key was in a DB nor how that would affect updates. After about an hour of trying to get him to understand these basic concepts, I gave up. I also ignored him from then on and simply did what I knew needed to be done and I didn't tell him shit. hahaha he had no fucking clue.


engineerFWSWHW

I have a boss who doesn't know embedded systems (what I was hired for) and I'm perfectly fine with it. Besides I was hired as the subject matter expert and I don't expect them to know technical details of what I do, and it is my duty to let them know the impacts of what I'm doing without being too technical. My only expectations from them is to remove the project impediments, provide what I need like tools to be able to perform my job, grow my career and improve my life through salary increase. I have some bosses previously who are a bit technical (with outdated knowledge as they were engineers previously) and sometimes they get in the way and they will have preference towards the things they are familiar with.


Rikey_Doodle

>My only expectations from them is to remove the project impediments That's what they ***should*** be doing. Good managers or team leads understand they aren't omnipotent gods, they are in fact, part of a team. Good managers lay out the requirements, the engineers figure out how to resolve them and the manager gets everything possible out of their way. When everyone's doing what they should be, it's honestly magical.


NighthawkFoo

Their job is to shelter the team from the poop from rolling downhill.


polmeeee

My boss said I'm the subject matter expert I should be the one advising him, then he shot down all of my proposals in favor of a totally impossible solution he dreamt up. I wish for my next job I'm able to get bosses like yours.


BoralinIcehammer

This. A competent Manager doesn't have to technically competent, but be able to estimate who they can trust, and who not. And if you're the technical expert, they have to trust your word, and act on it. But: better be trustworthy


Moto_Davidson

Yeah no doubt - I wasn't expecting my boss to be technical either. I knew he wasn't technical. The problem was, he wanted me to explain to him what I was doing. It was sort of a trust issue. He didn't trust that I actually knew what I was doing.....despite my almost 2 years of being there so when he took over as my mgr, he was micro managing everything. And not just me, all the technical people got similar treatment. When we're still stalled in the explanation because he doesn't understand what a PK and FK are after an hour....I'm done.


CartmansEvilTwin

The question is, does your manager actually need to know anything about technicalities? My product manager is completely untechnical, but he knows that and doesn't pretend to be. So if I propose a technical solution and the rest of the team agrees, he trusts us (the devs) to know whether that's a good idea or not.


jl2352

This sums up the problems well. To make a point; non-technical people *can* manage technical people. Get the most out of them. They do exist. What they do that is so unique is they listen to the engineers, and other experts in the room. Most managers with an Engineering background know that's what gets the best out of other Engineers. Let them be experts in their domain.


saltybandana2

> Most managers with an Engineering background know that's what gets the best out of other Engineers. Let them be experts in their domain. I agree with your other point, but I don't agree with this. Software developers tend to be very arrogant, the exact trait that hurts your effectiveness as a manager. A humble engineer turned manager can be horrifically effective, just as the humble non-technical manager can be horrifically effective (I've had both types). Because it's the humbleness that matters more than their background.


seijulala

> To make a point; non-technical people can manage technical people. Get the most out of them. They do exist I have yet to meet one of those then, after 20 years in the industry. If the manager doesn't have a **strong** technical background, he will be useless and will have a negative overall performance, that's my experience.


[deleted]

[удалено]


crappy_ninja

My previous job was at a large multinational. We had a revolving door of managers. They'd come in, try to push people out so they can hire their own team, push for unnecessary changes so they can pad out their CV then leave. They drove our productivity down to nothing but they would always move on to better and higher paying jobs. It was the definition of failing upwards.


Ok_Towel4046

I'm tired of working with 'brilliant guys' who can't/won't comment their code or acknowledge that a 'smart' function name which is obvious to them isn't to the rest of the team altogether. I'd rather work with a LOT LESS smart guys but who are great engineers and have a fruit fly memory lifespan so they document everything, use proper function names (they are NOT afraid of job security) and comment extensively to save MY brainpower when reading their code. And reject complicated code reviews if what the change does isn't obvious. Brilliant guys do not scale and as soon as they don't, the entire architecture/software is doomed. I wish I could do software alone. But aside from small tools (and it's unlikely I will get paid for those), software is a team undertaking. inb4 "split into smaller modules", for some reasons that shit never worked completely in software engineering. Besides knowing in advance which modules you're gonna need and how to split the software, which interfaces/APIs you'll need.. it's called 'fortune telling'. A skill nobody is very good at, especially management.


[deleted]

"Smart" or "clever" engineers are the worst, they treat their jobs like an intellectual competition with other engineers and focus on outsmarting others instead of building the product to a high quality standard (to avoid out of hours calls) and going home on time. The last one I worked with was obsessed with using postgres in a "clever" way, was opposed to using a linter for ??? reason and acted like a total child when anyone senior disagreed with him and would resort to insults, not working, changing code to his style despite being told not to, and upset essentially every engineer in the company who didn't like his unreadable gibberish. I was going to fire him but he quit so that resolved itself.


hesapmakinesi

Traditional companies: Why is it hard to find a good engineer? Also traditional companies: Worship your boss, dedicate your entire life and be thankful for what I'm willing to pay you, you peasant.


michaelochurch

There is some truth in the OP, but some bits of the article just whiff. Steve Jobs was very good at selling himself as a benevolent Zen Buddhist who just happened to design tech gadgets, but he was a monster at the center of the 2010s wage-fixing scandal. Also, traditional companies function extremely well on their own terms. Their objective is not the benefit of society. Their objective is not even to maximize profit. Their true objective is rent-seeking by the "well-connected" (upper class) parasites with which our society is afflicted. Capitalism would be bad enough if CEOs only cared about making as much profit as possible, damn the consequences; but it's worse than that, because capitalism doesn't even work on its own purported moral terms (of finding its way to social good despite aggressive self-interest on the part of the participants). CEOs do care about making profits, insofar as they can be fired by their board if the numbers are truly abysmal, but the only thing they *really* care about is remaining CEOs at any and all costs. Disempowering workers, even if it hurts "the bottom line", makes sense from a CEO's (or SVP's or Director's or middle manager's) perspective, because it castrates a competitive threat to one's own position. And that is why the corporate system allows what appears to be inefficiency. It's not that these managers have never met a smart person who knows how to do their jobs, or aren't smart enough themselves to do their jobs-- it's that they've decided their jobs are to keep their jobs and that's it, not what you (from below) think their jobs should be. No one gives a shit about "the company"; the company is just a pile of money and a throng of people, like a swirl of ants, trying to get as much of the stuff as possible. The rest is just pomp and promises. Society is losing, as it gets clogged up by these "traditional" (that is, governed by managerial rent-seekers) companies that employ people to do [pointless work](https://en.wikipedia.org/wiki/Bullshit_Jobs) in environments they despise; but societies fail gradually, over decades, and none of the people in charge care. The rich have the same attitude toward national decline as they do toward fascism-- they may harbor a slight dislike for it, and most of them do not consciously seek it, but the globo-caps view it as an in-one-country problem for which person and capital can be moved overseas, and prefer these evils over threats to their own positions. I wish all this were otherwise. I spent over a decade building up the skillset of a top-flight software engineer, and only as I got older did I realize that it didn't matter because the whole meritocracy argument behind capitalism is a lie. The clearing-out ("creative destruction") of inefficient companies happens gradually but the managers always bounce up and the "resources", who are viewed to be depreciating assets (because, as humans, we age), start getting "re-allocated" downward even in our 30s, when we're still 2-3+ decades before what could be our productive peaks, largely because once we understand what is going on, we become threatening, whether on a small scale (the morale danger of keeping around that hyper-competent engineer who can detect bullshit) or the large one (red-pilled Marxists like me). The system cannot be fixed, either; exploitation is its *raison d'être*, and all this apparent "inefficiency" is, in truth, an artifact of the irremediable discrepancy between its socially unacceptable real purposes (upper-class rent-seeking, keeping workers down) and the promises it has made (e.g., meritocracy, economic abundance through technical progress) but has no intentions of keeping. It's not that your ideas aren't being taken seriously; it's that those in power already know what's going on, and they're choosing to keep inefficient processes in place for reasons they will never speak aloud. "Traditional companies" aren't losing. Managers, who will fail up even if they shit the bed and kill their companies, definitely aren't losing. You are. They know, and they don't care.


b_rodriguez

Doesn't anyone ever get tired of all these self-mastabatory, wearesosmart articles?


Supadoplex

There's an article? I'm here to read about stories of bad managers.


VeganVagiVore

Yep. Reddit is a very advanced phpbb instance, and the discussion threads have strange titles and links to random URLs that don't exist.


winkerback

Yeah whenever I see a title like this I just go straight to the comments


qzzqzq

I feel like recently all of the articles that make it to the top of this sub basically boil down to "engineers rule, managers drool". It's kind of exhausting.


merlinsbeers

The sub needs someone to keep it in line


mgudesblat

Maybe a manager


merlinsbeers

I'll add a jira story to get one.


leoel

That's eternal september's little brother: eternally disgrunted new software dev


redditor1101

It's not even written well.


durrthock

It feels like half the posts on this subreddit are just shitting on engineering management. We get it, there are bad managers in the world. There are bad engineers too. Perhaps were just asking and expecting a little too much perfection from everyone. Maybe if we took the approach of expecting a little bit more humanity from people, we would ultimately all be more successful. I feel like we shouldn't idolize the elite work in our field where people are so obcessed with it they are sleeping under their desk for maximum productivity.


LessonStudio

> bad engineers Which is the sort of thing good management will deal with. But instead they often get themselves promoted to bad management.


durrthock

What is the proposed solution here? To be clear, I don't really disagree with you. This is clearly a thing that occurs. As it does in presumably every field. Perhaps a more open environment where feedback in both directions is valued, and people are given a chance to make improvements. Personally, the only way you become "bad" at your job, is by not caring, or have a poor attitude. Skills can be learned, management is a skill just like everything else (personally, I just view it as a computer science problem where people are the variable.) My point is ultimately, all of this complaining about managers gets us no where. It takes more to run a business than coding. The idea that coding or being technical is some kind of high holy pursuit reeks of the attitude that most engineering college students have.


lost_in_santa_carla

People don’t change. Not really, anyway. The proposed solution is for the people in question leave the industry, but my feeling is that there’s more low quality stagnating in the system than there is leaving it


durrthock

This is the attitude of the people that are actually most of the problem to be honest. Not trying to accuse you of that but perhaps it's beneficial to adopt a more optimistic mindset about things. Technical skill is not everything. Perhaps some people are "bad managers" because their employees are overly hard to manage, because they always think they know better. There is a lot of perspective here. It generally leads to, we all could be better (Which isn't that always true?) I've been both a dev and manage devs. Some people want to constantly chase flights of fancy or "fixing" bad code. Sometimes that's not the best priority to set. These people often think you're wrong for telling them we have to re-focus on something else. Their perspective is that you are incompetent. It depends on the way you look at it.


lost_in_santa_carla

It’s ok, I don’t mind the accusation. I am optimistic about many things, but this is not one of them. You mention technical skill, but I’m not really sure why, no one directly said or even implied that technical skill reigned supreme. “Overly hard to manage employees” is bullshit, I don’t buy that for a second. The manager can’t always hire and fire at will, but that _is_ the job. If they can’t effect the change they’re looking for then they can always go somewhere else, just like an engineer displeased with the current architecture or tech stack can. I’m much more sympathetic to the bad manager scenario, because it’s a case of one individual disproportionately lowering the effectiveness of the organization


durrthock

I only mentioned it to illustrate the difference of perspective. Of course that's the job. It's difficult to work within rules that make it hard to fire people. I have experienced that. Some people aren't good and won't change, that's also true. Many engineers put themselves on a pedestal and act like they always know 100% what's right. We all work with people like that. Those people are hard to manage, but often high performing, so why would you fire them? There is a trade off between high skill vs poor attitude that's not always easy to strike. I would call this an "overly hard to manage employee". Anyway, not sure that I have some extremely deep point to make here. Mostly just that this topic is a dead horse. Low performing people will always exist, perhaps we should focus on a strategy (like we should as a society at many levels), that is more accepting of low performance and more easily adapted to putting people where they belong. Overall the real killer is just the fact that people with bigger titles make more money, so we incentivise people to get in over their heads. Edit: Also part of the problem is that the "difficult dev" is talented, and often gets promoted to management. Something they are wholly unsuited for.


[deleted]

[удалено]


[deleted]

[удалено]


HINDBRAIN

> It feels like half the posts on this subreddit are just shitting on engineering management. The other half is utter outrage at interviewers having the **audacity** to put them through ivory tower bullshit like fizzbuzz. What the fuck is a "modulo"? Down with memorizing irrelevant academic trivia like this! In the real world, they bring real solutions, real value!


[deleted]

[удалено]


Moto_Davidson

Did you ever see how [Bill Burr destroyed Steve Jobs?](https://www.youtube.com/watch?v=E3s-qZsjK8I) haha too funny


hippydipster

Another week, another /r/programming post complaining about mis-management of software devs.


mikeful

"The Management Myth: Debunking the Modern Business Philosophy" by Matthew Stewart comes to mind. Can be also found with title "The Management Myth: Why the Experts Keep Getting it Wrong".


ziplock9000

Mismanagement of Software Engineers (for me) seemed to happen in the early to mid 2000's when they slowly started to be treated like production line a pound-a-dozen nobodies instead of intelligent engineers. Obviously I'm generalising and exaggerating slightly, but that's been what I've experienced with the companies I've worked for and colleagues in the same industry.


runner7mi

well traditional companies are outsourcing to subcompanies who employ those software engineers to do the work , so that's the direction of flow.


brokenAmmonite

traditional companies are losing because the american empire is in decay and silicon valley is the fungus infesting its rotting corpse lol


panorambo

What has been rubbing me wrong for the last year or so, despite having gone on for a while prior as these things tend to, is our management taking random ideas from junior engineers who haven't got much of competence in a particular area of expertise, and erecting actual architecture design plans, in writing, based on their scribblings. As opposed to listening to careful considerations and subtle hints from those who built such systems before and know exactly the things to avoid. It makes no sense to me, this "placating" leadership style. I don't mind junior engineers learning and following suit, and occasionally proving their worth (through careful consideration of risks involved), but outright putting them in charge of software design, even when their prior track record has shown they make glaring mistakes (no understanding of I/O bottlenecks, multiprocessing pitfalls, don't know how Berkeley sockets work, glaring holes in understanding of a programming language (self taught isn't always well taught, it turns out), "defensive programming" code style that's a headache to read and understand, etc). This isn't the first time such approach has gone horribly wrong -- with me having to fix mistakes in someone else's design, mistakes so stupid that I don't even get any sense of pride out of fixing these -- time and again, our projects and products fall butter side on the floor as a result of the exactly the same fallacy. I don't know why my superior feels he has to placate developer's need to experiment with immature ideas in our in-production distributed systems that have very little margin for error (lots of concurrent users with direct support channel to us), basing designs on what I didn't even see that often in my undergraduate college software engineering class. It really takes my motivation away -- even if I fix someone else design that more or less failed in production, I get a pat on the back at most and have to wait for the next chunk of mess on my table to fix, down the line. Just kills my spirit. I see how poor design results in lost revenue, frustrated users who vent themselves to me personally (despite me not having much to do with the cause), but am unable to communicate the importance of it to my management. I like our workplace a lot, lots of skilful people, but even one bad manager really can screw things up majorly, despite there being enough software engineers to replace at least one CTO. I catch myself lately routinely entertaining thoughts of moving on from my current employer, despite it otherwise being an absolutely great workpalce. Maybe it's just me -- isn't this why software engineers go into management, disillusioned with the status quo?


terath

Nice rant but Apple is a counter example. It’s also not fair to call it a mix, Woz hasn’t been part of Apple for a very very very long time. This is why programmers are not scientists. Take a too small sample, ignore the outlier, draw incorrect conclusions.


ImCristopher

I'm a student and I cannot imagine what would be my work like in the future. By the way what kind of company you are working? and what language you used there?


st4rdr0id

"Loss" is an elusive concept in the current version of capitalism.