top | item 29064692

Ask HN: Is it unprofessional to leave a new job where everything is a mess?

242 points| itistricky | 4 years ago | reply

Hi, after a long job hunting period I joined a small remote first company 5 months ago.

Problems showed up immediately in the form of chaos and dysfunctions in the microservices cloud project I was hired in. Let's put it this way: say you get the seminal book on microservices and the seminal book on CICD. Now imagine reading along and doing almost everything from code up to project management the wrong way (essentially keeping on-prem 2000's philosophy and revamp it as microservices). On top of that add vendeta-developers in Asia (I'm in a small offshoot team in Europe) handing down half-baked frameworks (not-invented-here and reinventing the wheel are strong) with minimal documentation and a culture based on meetings instead of documenting things. Developer sandboxes that just don't work and unrealistic deadlines. In short a huge draining mess where I felt burnt out just a few months after I joined and where I honestly don't want to spent another minute.

Almost every attempt of mine to change anything was met with either "yeah we know but we have to live with it for now" or a straight denial to hear me out - brushed aside as a newcomer (I'm senior and was hired as such).

So, the question is, is it unprofessional to abandon ship just 6 months in or given the circumstances is exactly what I should do in order to protect my well being and my career prospects (the project is a slow motion train wreck IMO).

281 comments

order
[+] henvic|4 years ago|reply
Just leave. It's the professional thing to do, if you can sustain yourself.

In 2012 I've left my hometown and went to the other side of my country to work at a startup. Within 20 days I left because the situation was critical. I was already feeling like I should leave on the second week, but decided to wait just to break-even from my moving expenses.

It was e-commerce startup where the team lead / project manager was actually the only backend engineer.

One of the problems I had was that it was impossible to work with him.

He despised git, so we used svn. Fine. It was in the early days of git, I could understand that. He didn't write proper svn messages (but garbage like... always 'ghnwerigkelrwn'), and told me I shouldn't care about it. Ugh... Okay, I think I can try to change this situation.

Then on my first days of work I noticed that something was very wrong with the repo. Turns out the guy configured his Eclipse IDE to commit to SVN any time he saved any change.

And he'd just type random keys out of boredom in any part of the system (PHP, which is an interpreted language) and break things wildly.

For those that doesn't know: SVN is a centralized versioning system. It's not like git, where you push things 'later'. When you commit, it's sent to a central server.

[+] PragmaticPulp|4 years ago|reply
> Just leave.

Not a good idea for the OP to leave without having another job to start.

The OP only found this job after a long period of job searching. Having a large unexplained resume gap followed by a short 6-month employment followed by another gap is the type of pattern that starts to scare hiring managers.

Start the job search, but don’t just leave until you have something else to go to. Avoid introducing another resume gap within months of the previous long resume gap.

[+] throwaway123x2|4 years ago|reply
Oh God that sounds like a special kind of nightmare. Did you see any hints re:this during the interview?
[+] jabo|4 years ago|reply
I’m more shocked that Eclipse even had a feature that would svn commit on every file save.
[+] kaetemi|4 years ago|reply
In such a situation. He's treating the SVN as his own, not as a team resource. Just mirror his changes to git, and move on. Bypass authority.
[+] rkangel|4 years ago|reply
6 months is a perfectly reasonable amount of time to judge a job and leave it.

The important thing is to be able to defend it in future interviews, and do so in a reasoned way rather than an emotional one. For example instead of "the team were incredibly frustrating to work with and ignored all my suggestions", instead "the culture made it very hard to do quality engineering, which over time was demoralising". Sweeping statements about crap organisations sometimes come off as petty on the part of the person making the comments - individual specific examples work better (e.g. a specific, obviously wrong, architecture problem with one framework, rather than talkinga bout them all as a group).

[+] jrumbut|4 years ago|reply
I think this is great. One thing I would emphasize more heavily is that your objection was not to the problems, your objection was to the insurmountable barriers to fixing them.

Every organization has problems, that's why they hired a new senior developer. If someone read the OP to me in an interview, I'd be sympathetic but I would also be thinking "what if our CICD setup doesn't resemble the seminal book? We've reinvented the wheel once or twice too. Will they help us improve or leave in disgust?"

So I would include specific examples of what you tried to do:

"I sent a polite email to headquarters, I created a demo using open source libraries, I tried to work within the meetings culture and scheduled one of my own to talk about the situation."

[+] rjzzleep|4 years ago|reply
While they do come across as petty in our societies it's downright employee hostile. Why do organizations have so much power on the future of someones work?

So many organizations do legally questionable things and mouth gag you from doing the right thing and reporting their scammy behaviour because somewhere down the line you want to make sure that when the next organization calls for a reference they don't destroy your job prospects.

A simple example related to this point is that this is precisely why it took a whistleblower to expose the shit that Facebook is doing.

If all the previous researchers felt like they could walk away and get a new job, while highlighting their great work AND calling out Facebook for what it does they would have.

I just saw an example of a sequoia funded startup firing someone during mat leave and then having the audacity to propose a onesided non disparagement clause. The person in question was close to accepting it, because she feared a potential backlash in her future career.

It's completely insane that in most societies corporations can abuse employees to the extent that they are and then employees bend over and accept it, because they might have a bad reference. Usually the only way to actually free yourself from those companies is litigation with mutual non-disparagement. That really shouldn't be the case.

[+] windexh8er|4 years ago|reply
I agree wholeheartedly. I've run into this in interviews after short stints and most places will allow you to explain without being accusatory up front. If they are, that's generally a red flag for me. I will often explain to recruiters/interviewers that an interview is mutually beneficial and if what is told to me in an interview is not true, or intentionally hidden from me, and the reality of the work situation does not align with my beliefs/expectations/morals/etc after asking a number of people about those things then why should there be any expectation for me stay to meet some hypothetical minimum on amount of time in a role? If I couldn't perform my role within 90 days they'd let me go. Why is the double standard OK?

I've been in trainwrecks where the market really wanted things the company wasn't delivering on as paid for product. And it could have been really great. Great brand recognition, great people - yet a CEO that had in their mind they could do no wrong. I left, and received a lot of flack for it, yet within one year that company divested because they couldn't sell anything then magically I was looked at differently. It's often hard to get a good read on a tech company in a few short interviews. Especially those on the smaller side or startups. But I don't think anyone should stay somewhere that was not as advertised and have to deal with a penalty for a "short run". Being candid about the situation without disparaging the company (as the parent comment stated) seems to go a long way and most good recruiters/interviews will be understanding.

[+] richrichardsson|4 years ago|reply
> 6 months is a perfectly reasonable amount of time to judge a job and leave it.

Most jobs I've ever had in the UK came with a "probation" period of 6 months, where the employer could terminate the position with a one week notice (or even shorter if I was the cause of some particularly nasty problem), and after 6 months a review would be conducted to decide if the position was going to be offered on a more permanent basis.

I think it's only fair that employees can have the same option to walk away if they find they don't really fit in the culture of the organisation.

[+] zamalek|4 years ago|reply
Or, "we had differing opinions on how to develop and maintain quality software." You can then answer almost any question (even, "what was the disagreement?") with your ideals, how you've put those ideals into practice in the past, and nothing more. You can indirectly explain the problem while keeping the conversation focused on the purpose of an interview: you and your prospective employer.
[+] whiddershins|4 years ago|reply
This … isn’t the advice I would give.

I would personally never say negative things about a previous employer regardless of how carefully worded.

[+] RhysU|4 years ago|reply
> I'm senior and was hired as such

Someone hired you as a senior employee. Senior folks are expected to fix messes like what you describe.

Go to the right person and ask for the political capital and support to fix 2 specific things.

If you don't get a promise for that support or you don't see that support sustained, leave.

If you get that support, fix exactly those 2 things as quickly as possible. Then ask for the support to fix 2 more things. Etc.

You may want to walk into the right person's office with a list of 5 things to address and ask their input on selecting the right 2.

[+] playing_colours|4 years ago|reply
If there is a lot of mess, in most cases, the organisation is dysfunctional. It may have histories of some futile attempts by proactive senior engineers to improve the situation in past. They were either ignored or faced resistance, and eventually they gave up and moved.

On the other hand, it is a good chance for a new senior engineer to show their leadership abilities, if an organisation recognises the mess and is serious about dealing with it. You will definitely learn about it in the interview and see the management encouraging relevant activities.

[+] gwbas1c|4 years ago|reply
A few things to point out:

It's easier to fix a mess when the person who made the mess is no longer there. (Or management recognizes that the person who made the mess was in over their head.)

But, if the person who made the mess is still there, has been there for a long time, and has a lot of political capitol, this can be prohibitively difficult. (I know this from experience.)

Furthermore, if the "right person" doesn't recognize the mess, or refuses to recognize the mess, then it's time to leave.

> Someone hired you as a senior employee. Senior folks are expected to fix messes like what you describe.

Most of the time, yes! (Thankfully that describes my current job.)

Other times senior devs are hired as a possession, like buying a fancy car or a fancy piece of jewelry. Even worse, poor management might not know how to handle a senior dev, or not be willing to recognize the problems that the senior dev needs to handle.

[+] geofft|4 years ago|reply
Not disagreeing with you, but OP specifically mentions being burned out, and I think for this specific situation it may be better to cut losses and go elsewhere.

If you have the energy and enthusiasm for fixing broken things, this is great advice, ideally before the point of burnout / before six months (but after at least a month or so). But not every senior role has to involve cleaning up messes and picking political fights. You're allowed to look for a company that isn't a mess if you want.

[+] JSeymourATL|4 years ago|reply
THIS advice is Spot-on!

I might add as a prospective new employer— what did you learn from this experience?

Essentially, I’m looking for leadership acumen and decision quality.

[+] throwawaysleep|4 years ago|reply
Why bother? If you are a senior, you have the choice of working at places that don't have these problems.
[+] thunkshift1|4 years ago|reply
Can you explain the part about ‘ask for political capital’?
[+] nomercy400|4 years ago|reply
It's not bad to look for something else after six months. Shit jobs exist. Keep looking.

Hard questions for yourself: How did I get in this situation? How did I get such a mismatch between your expectations and reality? Why didn't I see this at the job interview?

Answering these will help you evaluate future job offerings.

Ofcourse I do not know how the interview went. Maybe you didn't ask, maybe you did and they didn't answer fairly. In the first case, ask these questions next time (for example: "Describe to me your process on how you go from source code to a production build?" "How do you run your projects? What methodologies do you use?" "How do you document/test/maintain your code quality?" "What kind of meetings do you have around here?"). See if you can ask about cultural difference as well (you mention Asia vs Europe), and avoid yes/no questions but rather something open.

If they didn't answer fairly during the interview, you have no reason to feel bad for running away.

[+] itamarst|4 years ago|reply
A company I worked for once interviewed someone who had just started at a different company. We asked why he was leaving so soon, he explained he had some differences of opinion and that it wasn't going to work out well. He seemed great, we hired him, he was indeed great.

After we'd hired him, we asked about the old company again. "Oh, it was an utter shitshow" and he went on a long and very compelling rant about how badly managed it was... in far more detail than he had when interviewing.

I feel like this is a reasonable way to do it; don't badmouth your current employer while job searching, but no need to stick around unnecessarily.

[+] eldelshell|4 years ago|reply
This. You're only unprofessional if you start ranting about it at every opportunity you have, specially during a job interview.
[+] rpmisms|4 years ago|reply
Yep, this is how I left my first job. Interviewed at another place, said "not a great fit", left. When I got there I was perfectly happy to explain how the CEO was literally grabbing people by their throats if they didn't meet quotas.
[+] alimbada|4 years ago|reply
Professionalism doesn't even come into it. You're under no obligation whatsoever to even tell them why you're leaving but if you do, you're doing them a favour. If they know what's good for them they'll have exit interviews but I doubt that's a thing they do if they're not willing to hear you out or fix things when you're actively working for them.
[+] ianai|4 years ago|reply
Further, anything you say in an exit interview can and will be used against you. So either tread lightly or keep quiet.
[+] hda111|4 years ago|reply
Never tell why you leave, only if you want a bad reference letter.
[+] snassar|4 years ago|reply
In Germany you have a probationary period of 6 months where both sides can give notice of 2 weeks without having to give a reason. The probationary period is really there to make sure that you fit the organization and that the organization fits you.

It is not usual that people don't make it through the probationary period, but it happens. If you know 5 months into a job that it is not for you and won't work out, then search for something that does. When asked why the time at X was so short, tell the hiring manager why. A place that dings you based on your honest assessment is not a place where you will want to work anyway.

[+] atlasunshrugged|4 years ago|reply
Yes, when I first got to Germany I was surprised at this but after doing it once I loved it. As an employee I had no hard feelings about just saying something wasn't a good fit within a few months of joining (I have a slightly different but similar in practice setup with a French co currently that I'm leaving after a 3m trial period). I think that it's a good way to do things & I think I reflect the consensus view here that you absolutely shouldn't feel bad about leaving a dysfunctional company. The only exception is if you were brought in with the mandate to execute a turnaround, but it doesn't sound like that's the case nor that you have the authority to do so, so don't burn yourself out trying without the power to make real changes for probably not enough compensation for the hassle
[+] mytailorisrich|4 years ago|reply
Employees never have to give a reason to leave. The benefit of probation periods for employees who want to bail early is that the notice period is shorter (it is usually 1-3 months in most european countries). Of course, the downside is that the same applies to the employer and probation periods really are for the benefit of the employer since laying off an employee is an onerous prospect in most european countries.
[+] ljm|4 years ago|reply
I know a few people who bailed out just a month or two into the job. Their reasoning was simply that it wasn't what they expected (and they wouldn't have accepted the offer if they knew that while interviewing).

Doesn't really have to be any simpler than that, and for further interviews it does allow you to make those expectations clear if the question is asked.

[+] wastedhours|4 years ago|reply
Also keep in mind the flip-side of this is that if you leave before 6 months, some hiring managers will see it that you "failed" your probation and the previous employer took the easy way out to let you go for sub-par performance.

Obviously it depends on the politics of a situation, but be wary of those questions that might arise, and still leave on good terms if the new place wants to confirm you weren't let go.

[+] nicbou|4 years ago|reply
Just to add a bit of info: German businesses typically have a 3 month notice period in both directions (though I've seen 6 months). The probation period lets either you or the employer end the employment without a fuss.

This means that it's harder to get a loan or find an apartment until you're over that period. After that, you're golden.

https://allaboutberlin.com/guides/find-a-job-in-berlin#the-p...

[+] democracy|4 years ago|reply
Running away when you've created the chaos is somewhat unethical, running away from someone else's mess is very smart and if anything should teach them a lesson (but we all know it won't).
[+] addicted|4 years ago|reply
Agreed. The only scenario in which I would consider this somewhat unethical is if you’re the person who created the situation in the first place.

On the flip side, if you’re the person who created the situation in the first place I would probably expect the company to replace you anyways.

[+] thieu96|4 years ago|reply
I joined a company and within a handful of days it was clear it was an absolute mess. From code to management. As a cherry on top, the only frontend developer would be leaving the company within a month, and the code was a mess. I discussed my termination of the trial month with the CEO and he was shocked, but asked if I could at least give feedback and guidance to the team, which I did for the remainder of the week, after which I left and got a great job at some other company, been here for 3 years now.

Bottom line is, if you're not happy with your job, then quit and look for something else. No amount of money is worth your sanity (maybe for a handful of months), if you give some feedback upon leaving you've handled it fantastically professionally. If they're too proud to accept the feedback then that's their loss and you leave without a doubt in your mind it was a bad decision.

Go for it!

[+] ethbr0|4 years ago|reply
This brings up another key point: look around at who else is leaving.

If most of the people you respect and value on your team are leaving, and the other people are staying... well, that tells you more about how everyone else perceives the company too.

[+] sfgweilr4f|4 years ago|reply
Not unprofessional at all to leave this kind of madness the moment you find something better or, if things are really bad and you can afford it, tomorrow. If there was cost cutting and layoffs, how loyal would they be to you?

Plus, right now you are slowly (or quickly) burning out. That is not an acceptable result. They are incompetent and unprofessional. Employees should not be burning out due to bad work design.

There is a massive opportunity cost in remaining in a bad environment. You may last awhile longer but only if you adapt to it. Do you really want to adapt to where you are and get comfortable in it?

I'd be returning to the resume stage and put the feelers out into my network. Live is too short for this kind of nonsense.

But in reality I can't advise you more than this because I don't know the full story and basically can't. Hope this helped.

[+] _odey|4 years ago|reply
Q: Is it unprofessional to leave a new job where everything is a mess?

A: No.

Notes: personally I would have either abandoned it during the first month or at the end of the probation period, depending on severity, otherwise I'd force myself to stick around for the year, so I wouldn't get questions during further interviews for why I stayed there only X months. A "hack" would be to endure until somewhere in January next year and then in your CV write only the years of employment like this:

2018 - 2021 Old boring job.

2021 - 2022 Shitshow job (but don't actually write anything bad in the CV about them, only positives).

2022 - present Awesome new job.

If you write it with the number of months, some (not all) recruiters and hiring managers will get suspicious. I've personally had people (colleagues at previous employers, but also random people at random meetups) tell me they trust people less if they see that on their CV, or even filter out such CVs early as they fear you'll do the same there, even though they had the same situation themselves when I checked their linkedin profiles.

I personally don't care at all about the month range when I conduct interviews, and if anybody brings that up I fight against it, as something I've learned from personal experience is this: most jobs suck, most employers suck, I've had to deal with some, everybody I know has dealt with such; then I switch the subject to what's really important: what can you actually do so we get to hire you.

[+] gregkerzhner|4 years ago|reply
An alternative to hacking your resume is simply leaving the short position off altogether. Your resume doesn't have to be a total transcript of your career. It should just be a highlight of most relevant experiences for your desired job.

The same goes for really old jobs too btw - having a detailed explanation of your exploits in Java Swing on page 4 of your resume is likely distracting and irrelevant. Consider making your resume a single page with older jobs grouped together like "1999 - 2008 Various software gigs for Employers1 thorough Employer5"

[+] indymike|4 years ago|reply
>essentially keeping on-prem 2000's philosophy and revamp it as microservices)

This sounds like a company that is frozen by it's legacy code base. There's a lot of companies like these, and they are trapped in survival mode.

> So, the question is, is it unprofessional to abandon ship just 6 months in or given the circumstances is exactly what I should do in order to protect my well being and my career prospects (the project is a slow motion train wreck IMO).

There's really only a few things you can do: If you want to fix the problem, ask to do so. Be prepared with a plan to do so (here's what I'll need, and here's how we'll approach fixing it). Helping a team out of a corner they've been painted into can be very rewarding, but it's an emotional challenge. If the answer is no, or you don't want to fix it, then get another job and leave. There is nothing wrong with that.

[+] xyzelement|4 years ago|reply
This sounds like a great opportunity to level up and learn some rare lessons.

It's easy to see problems and its easy to complain about them - but even if you're right, there's a vast gulf between complaining and driving change. You may be discouraged because you're hitting resistance but that's the nature of these things - if the organization already was ripe for and acting to fix these things, there'd be no need for you to help make it happen.

That's the nature of the leadership challenge - how do you get people to change things when they currently don't want to or think they cannot?

You think you see the right path, awesome, let's assume that's true. But if you can't find a way to make things better, then aren't you saying exactly the same thing that others are saying - "we have to live with it?"

You may not be in for that kind of challenge, you may just want to write code in a well set up environment, in which case you should absolutely leave. But if you want a real challenge of actually driving change and impact, of leveling up your leadership and seniority, this sounds like a great opportunity. Some will see it that way, others never will.

If you do see the opportunity, then the next question is "how" - finding a way to figure that out is going to be an amazing learning experience regardless of success.

[+] qaq|4 years ago|reply
The above holds if you have serious equity stake otherwise it's an opportunity to burn out without much upside.
[+] tekstar|4 years ago|reply
Just to play the devil's advocate for a moment here, I've seen many developers join and instead of learning what is around and why it's there, just see everything that existed before they joined as a Bad Decision that Needs To Change To Fit My Expectations. In complex situations sometimes the best solution looks nothing like a textbook Best Practice.

That being said, what you're describing sounds like a shit show. I've seen many talented developers stay way too long at bad places, telling themselves they can make things better.

[+] crate_barre|4 years ago|reply
One needs to delineate between challenging features/business logic versus obstructionist architecture. The former is fine, you are dealing with a difficult problem space. The latter is not, it causes burnout since straight forward things are not straightforward to do. The latter causes pain and stress.

Business rarely has the capacity to see the blowback of the latter where the product is not nimble/flexible, and there is a clear velocity hit across the board.

From my experience, business rarely has empathy for the latter.

[+] nameless912|4 years ago|reply
I left a job after a similarly short tenure (roughly 7 months) last year, but for different reasons: the product was essentially bait-and-switched on me. I thought I was being hired on to work on a problem I was really passionate about, and within a few months the business at large made it clear that they just wanted us to be be relegated to a "professional services" type arrangement.

I think it's always okay to leave any job at any time for any reason; I once turned down a job at Google because the hiring manager was a complete asshole (I mentioned I had a dog and his immediate response was "oh god, I hope you never bring that thing into the office because I _hate_ dogs!"), I've left jobs because managers lied about petty shit, and I've left jobs because the company wouldn't allow me to work remotely despite several extremely senior eng leaders advocating on my behalf to do so. IMO, an engineering culture completely devoid of the ability to change is at least as valid as any of the ones I've had to leave, and I can tell you from personal experience that there's a limit to how much any one person can change, no matter their influence, the quality of their ideas, or their passion for righting the ship.

At a certain point, you have to don your own oxygen mask before helping others. Especially if this job is impacting your mental health and/or personal life, cut and run right now. There's no reason to stick around for a job that's not giving you the respect you deserve.

[+] mkl95|4 years ago|reply
In my experience that's the sorry state of most so-called microservice ecosystems.

Most of those companies are actually running a distributed monolith, which is worse than a good old monolith, and eventually much worse.

> I'm in a small offshoot team in Europe

Some Americans don't really understand how grim the European software development landscape is. I have built stuff for some potential unicorns and the shit product management get away with is insane. Most projects are downright spaghetti.

Sorry to sound so negative. But to answer your question, I think it makes complete sense to leave that job. 5 months is more than enough to realize a job is not going to get better.

[+] afarrell|4 years ago|reply
To be a professional is to be trusted to do a job in a way that delivers results reliably and sustainably. Part of that is saying no to a job where you would not trust yourself to succeed at that.
[+] crispyambulance|4 years ago|reply
"Everything is a mess" is a very common condition, but also very common is unrealistic expectations.

The feeling you have of burnout, of course, should be taken seriously but the other things you describe sound not unusual to me. Yeah, the real world (at least in my experience) is never like it is in the "seminal books". How will you know that the next place you go to isn't the same or messed up in an equally profound but different way?

Certainly part of this is the remote-first stuff. MHO, but it is simply not possible to gain trust from teammates without regular in-person interaction. Remotes will always be outsiders, and outsiders have an enormous challenge when it comes being change-agents.

[+] altacc|4 years ago|reply
Professionalism isn’t about how long you stay at a job, it’s about how you act around work, which includes joining and leaving a company. There are ways of quitting which are unprofessional but not the act of quitting itself. How much detail you tell them is up to you but don’t feel pressured to go into detail if you don’t want to.

As for career/CV, it’s only a flag for me if there are a lot of instances of short jobs that were obviously meant to be permanent. Personally I still ask the candidate about why that is.

If it’s any consolation, my shortest resignation from a perm job was the morning of the third day. The MD’s motivational strategy turned out to be angrily shouting at people.

[+] chaircher|4 years ago|reply
No but you need to figure out how you could have found out about this disfunction in the interview process and apply it to your new job search, else you risk ending up in a similar situation again