Live data from Hacker News

Ask HN: How you ever quit because the engineering culture is too messed up?

news.ycombinator.com

11–20 of 24 posts

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#11

Yes, I have done this. Mostly because my work depended on certain technical architecture being setup but there was an unwillingness by management to do so. This was primarily because other people at the company refused to admit they didn’t have the expertise to set it up and instead did their best to cause my project to drag for months. I eventually left and completed a project that dragged for over 2 years in less t…

That's exactly one of the problems that I have. Somehow people are okay with things taking 2 years rather than 3 months though so there isn't a lot of pressure to change. I'm at a point where I don't know if sticking around can have a positive influence on my career, maybe I'll learn to be more zen? How will that help if I change jobs? Or, will I become used to bad engineering and sabotage myself in the future? These…

Culture comes from the top. That culture is busted. The fact you can spot problems and solutions plus you care enough to try is a big indicator you're far better off in a culture that will utilize your mindset much better.

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#12

Yes, I have done this. Mostly because my work depended on certain technical architecture being setup but there was an unwillingness by management to do so. This was primarily because other people at the company refused to admit they didn’t have the expertise to set it up and instead did their best to cause my project to drag for months. I eventually left and completed a project that dragged for over 2 years in less t…

That's exactly one of the problems that I have. Somehow people are okay with things taking 2 years rather than 3 months though so there isn't a lot of pressure to change. I'm at a point where I don't know if sticking around can have a positive influence on my career, maybe I'll learn to be more zen? How will that help if I change jobs? Or, will I become used to bad engineering and sabotage myself in the future? These…

Forcing changes in already messed culture may backfire. You need to take the confidence of key peoples in the team before 'forcing'.

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#13
(I answered this in the other thread, but thought I'd crosspost here too)

It can be a tricky one, but fundamentally the _reason_ why change isn't happening needs to be understood. A company full of smart people is unlikely to _never_ want change for any reason - especially if that change would clearly make everyone's life easier. But maybe everyone is overloaded with work and a bit burnt out, so 'big' change is scary to them? Or perhaps the 'important change' really isn't that important? I've worked with devs before who have spoken for hours a day on the need to change x, y and z, when in reality it wasn't fully needed (and/or their suggestions stemmed from misunderstandings).

I guess my latter point there relates to the fact that there's not always a single "right way" of doing something.

Now I know that this might sound like I'm the same as the people shooting down your suggestions in your linked 'Ask HN' thread. Trust me, I'm not like that: I left my previous job a few months ago for the exact same reasons that you have outlined (i.e. there was clear change that was needed, but the 'powers that be' weren't willing to make those changes).

But to circle back to your question: assuming there aren't massive organizational problems at a company, change usually needs to be made slowly-but-surely with the buy-in of any previous 'change blockers' (where possible). Anyone trying to force through lots of change in a short period of time will usually struggle.

If even minor change is not possible, there's two main possibilities:

1) You're wrong about the change, and you might be the problem.

2) You're right about the change, the company is dysfunctional, and moving to a new job is the answer.

From your linked thread, (2) does sound like the situation in your case (fortunately/unfortunately).

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#14
I haven't, but I was working as the lead developer for an agency on a big-name client in the financial industry.

My point of contact was their head of marketing, who said that all development had to go through the IT team. Despite having a large web presence, their VP of IT was adament that IT would handle all web-related work. Their developers were all employed and trained as IT technicians, even though they came from development backgrounds. Obviously, finance is a protected industry, so working IT in a place like that is no joke, but having IT handle all software development AND the maintnenace of IT systems meant that nothing got done, and when outside work was brought in they had to confirm to crazy standards.

Anyway, I was brought in to fix some build systems, built by a previous company. I spent three days there and got it working in the end. I actually spent most of my time chatting to the marketing lady, who was constantly asking me hypotheticals about how things work with other clients, how long it takes to get changes made/approved on a website, etc. Her questions were quite in-depth around clients we already had, and I said roughly how things worked. A week later, the VP of IT kicked off about unapproved work on the website build server (which was approved by one of the IT/dev guys), and she resigned. A week after that, she was a marketing director at the client she had questioned about.

I ended up chatting to her face-to-face a few weeks later, and she said there was a huge split in the company on how the engineering team should be run, causing nearly a dozen developers to join her at this new company. They all handed in their notice within the week, and the VP was so pissed off he put them all on paid gardening leave and told them to never come back.

Fast forward around a year, and I was at a conference taking a workshop on BDD with a new employer. A few of us were chatting to the guy running the workshop, when one guy chimes in about why he was on the course. He said some idiots at [Company Name] had built an awful website with a crazy build server setup, and that their IT team were looking to learn enough to perform a complete rebuild. The company name was my old employer, but the cringe doesn't end there. The person running the workshop was employed at the company that initially built the website and the build server, and I remembered his name in the commit logs as the one that lead the entire build. Their IT guys were literally bitching about incompetent developers to the guy that had built their systems, and his face dropped when he figured out they were bitching about his project. Despite trying to skirt around the subject or justify why some things are built the way they are, we sat there for twenty minutes as they tore apart what I'd consider a valid setup (onsite TeamCity, generated build scripts and artifacts running on a separate secure box to ensure that the site could be deployed if the build server went down, and a test suite to switch a blue/green type setup).

I pryed about their team, and they said that their IT team was trimmed to run a lean senior-level team. In the space of 18 months they had lost at least 20-25 people, and their IT/engineering team were going to rebuild a large-scale website with very little web development expeirence, all while maintaining the IT systems for a fairly large company. To pry further, I pretended to know a developer that had worked there previously, and the guy smugly said "well, if he's not there any more he was cut - not everyone can handle what we do".

It's been a few years since then, and from what I can tell they're still running the same website. I wish I could remember this guys name or the VP's name, just to see if they are still there.

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#15
Yes, I have done this. I joined a small start-up as a developer, and they admitted they needed to increase their professionalism and they would stand behind me as I did so. This was around 2005 or so when standards weren't as good as they are now.

Management consisted of designers and a self-taught programmer. While extremely intelligent, his ego could get in the way of making a good design decision - he didn't take kindly to constructive criticism or alternative ideas and would sometimes invent articles he had supposedly read that supported his biases. This was effectively the number one problem and in retrospect after identifying this, I should have left much sooner.

They failed every single question in the Joel Test and by the end the only points I had managed to change were to introduce source control and to introduce a bug database.

I look back on those days and I did enjoy the working environment to an extent and I enjoyed working with the people and even the technical co-founder was a really good guy out of work (and as I said, next-level intelligent) but the engineering culture was preventing me from doing my best work so I quit.

The final straw was when I was being shouted at in front of a client for introducing a bug in production that I could have sworn I had fixed weeks ago. After investigating it I discovered the co-founder had made a change, encountered a failing unit test and just deleted the test instead of fixing the underlying problem. The commit message was just "z" and came along with a few dozen unrelated changes.

The company is still around and I understand doing well. Every now and again though I encounter their product and I'm able to replicate a bug I first added to the bug tracker in around 2006. I feel they are doing well because they had a genuinely good idea and brought it to market sooner than anyone.

I won't say who they are because I don't wish to publicly shame them. I hope they have a better engineering culture now.

The next company I worked for had all the same problems except for the co-founder with an ego problem and I was able to get them to an extremely high level of professionalism and left behind an extremely high functioning software team after I moved on to the next level in my career.

To conclude: If your company has a poor engineering culture and it is getting in the way of you doing your best work then you should resign and find another job. You can still see the people you like at that company socially if you want but staying there won't help your career.

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#16
post #9

This can be frustrating for sure. Your question / post is a little light on details, so I am reading between the lines a bit here, but to some extent you'll find this everywhere, and dealing with it can be a useful skill. Can you provide a few more details on what you mean by "management infrastructure"? Are we talking source control / build systems / JIRA workflow stuff here? I would suggest trying to find ways to b…

+1 to the approach of leading by example. I sometimes phrase it as, "Focus on what you can change, rather than what you cannot." It is difficult to be in that environment that doesn't have a good engineering culture. It, however, should not stop you from doing what you believe is right. If you are relatively new to the company, in order to bring influence, it might be worth it to build trust before "rocking the boat.…

I love John Wooden. He's eloquent and full of fantastic life lessons. I always jokingly say he's my spirit animal for a reason.

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#17
I once worked at a place where everyone working there was recruited straight out of school. They were nurturing a mentality of "I don't have to learn things ever again". Mind you, they were using Delphi 2010 at the time but were stuck in their old ways, using DataSets like it was 1998.

I was hired and had about 3 years of experience back then. It seemed like they tought they knew everything about software development at that point and swore to themselves to would never learn something new again. They were perfectly happy with their "misc" file, containing somewhere near 45K lines of code, hundreds of functions that were totally unrelated. Nothing wrong with that, according to them.

So yeah, I spent 8 months there. One wednesday afternoon, I had enough and went to my boss, handed my resignation, and never stepped in that office ever again.

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#18
How long have you been there?

If you're brand new, then just be quiet and listen for 6 months. Find out why they do things the way they do. They often have, if not totally valid reasons, at least reasons that are more valid than they seem at first glance. If you don't know their reasons, and you're telling them that they should do it differently, then of course the aren't listening to you.

But if you've been there for a while, you know which are the bad ideas, and you can't get them to listen to better ones, and that frustrates you, then it may well be time to leave.

Re: Ask HN: How you ever quit because the engineering culture is too messed up?

#20
Throwaway for obvious reasons...

I worked at a YC startup a couple of years ago. The day after I started, the guy who hired me (eng manager) quit. All engineers reported to the CEO (former dev). That was the first red flag.

The second red flag occurred a week or two later, when two of the other three engineers cornered me in a room and tried to convince me that I should do what they say instead of what the CEO wanted. Second red flag.

Third red flag was when any tough decisions were made, the CEO would leave it up to us to work out amongst ourselves. Majority ruled. He was so afraid of pissing off any of his engineers that he just wouldn't do anything at all. Total clusterfuck.

They would play games once a week to try and team build, but it was a joke. Nobody trusted anybody else, and everyone was trying to undermine the CEO. Technically, they were doing things fairly OK. They wanted 100% unit test coverage, they had a proper CI/CD pipeline, they expected 2 people to approve every PR, they versioned their APIs appropriately. But none of that works if the people culture blows. And this one blew hard.

I stuck around as long as I could while I tried to find something else, but I couldn't have been more glad to leave a place. It was hell working there.

Post reply on HN