Ask HN: Is it just me?

89 points by throwaway-24112 ↗ HN
Over my whole career I can see a pattern.

Typically, I work for an employer for around 3 to 5 years. At the start of each employment I make several successful leaps, often designing and building new systems (usually single handedly). I am rewarded with various pay rises, bonuses and promotions. Then around the halfway mark or later, things sour for a variety of different reasons. Typically, I will fall out with someone senior, like my line manager. It's normally over something mundane but definitely technical.

In each cycle I try resolving things in different ways but each time I fail; then I desperately try finding a new role with the knowledge that the whole process might repeat itself.

I can recall the various reasons the fallouts occured, e.g. frustrated by a boss's crony cancelling 3rd party supplier contracts (which I had to grovel to reinstate), having differing views about testing/automation (I am fond of both), how workloads should be spread more fairly, etc. There are many different reasons.

In the more recent cycles I just end up being entirely unproductive at the end.

Is it just me?

108 comments

[ 2.1 ms ] story [ 197 ms ] thread
No relationship ends successfully, nothing wrong with spending 3-5 years at an org, learning what you can, then moving on.

Knowing this, maybe it’s worth resetting your goals at the next role to take i to account how this cycle tends to go. Set “end” criteria for when you should move on and reevaluate those goals regularly.

>99% of my work relationships have ended "successfully" in the sense that even though we don't communicate anymore we still have mutual respect and would work with each other again, so I'm not sure what you mean by "no relationship ends successfully"
> No relationship ends successfully

I guess once again it depends on how you define success. I am still friends with some ex bosses and even ex partners. It does require a level of maturity for both parties to accept that just because circumstance threw you together it's quite possible to reach the point where it's best for everybody to part ways.

An enemy is the worst thing to have. If you can put aside the ego-driven temptation to burn bridges you'll end up with more tranquility, less regret and maybe even a better network of contacts.

> No relationship ends successfully

I disagree. I was recently hired at a company that I worked for years ago. I left because I tired of the project, but left on very good terms. Good enough that both the company and myself are looking forward to another run together.

That was a relationship that ended successfully.

I meant with the company as a whole, not an individual.

By ending your relationship with the company, you're declaring that relationship necessarily deficient in some way. My advice is to define those deficiencies deliberately, rather than in an ad hoc way.

> I meant with the company as a whole, not an individual.

As did I.

I don't disagree, technically, but calling the relationship "deficient" has implications that aren't necessarily true. For instance, leaving a position because of a change in your personal circumstances isn't leaving because the relationship is "deficient" in any sense other than your needs have changed in a way the company cannot accommodate. It isn't because there is anything wrong with you, the company, or your relationship with the company.

If you meant the company as a whole, why was your counterexample about an individual relationship?

I think you meant an individual, however what you demonstrated was that your relationship with that person hadn't ended, which actually reinforces my point.

Your implications aren't my implications, and none of them are what I said.

> No relationship ends successfully

Uhh pretty sure that’s furthest thing from the truth. I had lots of managers that I’d absolutely work with again and companies that I’d definitely consider going back to. Then there are ones that I’d never work with if I can. Sometimes (a lot of times?) work stream just peters out…

Sounds like you may need to improve your social skills. Good employer should understand than nobody is amazing at everything, but such is the world today that marketing wins everywhere (on personal level too).

Or you think you are better than you are, not possible to tell from the post (but I'd say unlikely given some introspection that went into making it).

Or maybe his social skills are just fine and it's the corporations he's worked for that are pathological.
The problems OP listed didn’t strike me as unusually pathological. There’s probably some rationale behind each of those decisions. Certainly not the kind engineers like to hear, but political and budgeting reasons.
As the old saying goes - "If someone's a prick, they're a prick. But if everyone's a prick, you're probably the prick". I hope this doesn't come off harsh but I would strongly encourage the OP to look inward.

Did you actively build a relationship with your boss? Did you actively solicit feedback from all the stakeholders in a given project? Did you ask earnest questions to try to understand people you disagreed with?

When I was younger, I thought anyone that disagreed with me was incompetent. This had upsides since I pushed through projects others thought were impossible. But you alienate a lot of people in the process. More importantly people start rooting for you to fail. This is fine a very narrow set of situations but as a whole you're far better off taking the same effort to understand the people around you.

My hypothetical question to the OP is have you ever had a falling out with anyone that you felt truly understood you and wanted the best for you? I haven't.

It’s tough because at scale you can always find some poor schmuck that’s a perfectly decent sort and has run into pricks over and over. “Maybe it’s me?” the poor fucker opines. And well-meaning folks like you or me will suggest the “asshole rule” — if everyone’s an asshole, you’re the asshole — and we’ll be right in general but not in this one unfortunate case.

But you just can’t tell which is which from where we’re sitting.

So, OP… probably you’re the asshole, but maybe not.

i've worked in the office and in the non-office environment. i have problem working with the office people - i can't trust them when they say - "it works" or "i will do it".

i'm in a cycle. i quit software eng job hating everything, everbody, and software engineering (which i very like). i go to work away from computers. my happines goes up, my optimism goes up, making software makes me happy. then i say to myself: i am good working with people. if i can do it here then i can do it in an IT company. The IT company turnouts as an unorganized mess with dumb people pretending to be experts.

(comment deleted)
I used to get a little crazy and quit jobs over stupid things.

But…

Becoming (mostly, I’m a veteran so there’s places to go) homeless, living way below poverty level driving a cab for nine years, getting evicted at the start of the pandemic because I living day to day on cabbie pay, almost becoming homeless again (doubt my parents would have taken me in without the pandemic) and being able, through unemployment benefits, to climb myself back to where I was when I last rage quit my job in ‘09 I realize the little stuff doesn’t matter all that much…water off a duck’s back as they say.

Spot on. It also took me a change for the worse to appreciate having a normal job
Would love to read a book or blog about your experience some day.
Is it just you that you make enemies every 3-5 years? No, it takes 2 to have an enemy.

We live in a society of conflict avoiders.

Conflict is human. You can decide whether it’s worth it for you to stand up for what you think is right. Some people don’t and sadly that’s what organizations prefer.

> At the start of each employment I make several successful leaps, often designing and building new systems (usually single handedly).

Maybe you are very good at building something alone. Working in a team, however, is more about communication and clarity than mere technical achievement.

In a sense, this includes many technical aspects, tho: if an experienced newcomer would arrive in your team when you are 6 month in a new system you are designing, would he be able to blend in?

3-to-5y is a lot. my period is 2~ years. 10+ times. Plus once or twice i managed 4 years, but in 2x2y 90% different projects.

Once you feel things go sour, don't prolong the agony.. That kills.

And here I am, working on the same project since 2005.
The phrase for this is "hero to zero".
I think it's definitely possible to end up in your situation through no fault of your own. But if it were me, I'd definitely look into seeing if there was a way I could have fewer conflicts and avoid that situation.

That said...

The most reliable way to get raises in our industry is to move jobs every 3-5 years. And since you're doing that anyhow, I'm not sure there's anything to fix here. You get to be yourself, and you get the raises.

Also, you're self-aware enough to ask if it's you or not, without an obvious bias towards it not being you. That makes me think you're doing pretty good.

Also, you're self-aware enough to ask if it's you or not, without an obvious bias towards it not being you. That makes me think you're doing pretty good.

Empathy and a desire to be a better human are underappreciated values in this industry. I’ve made this a pillar of interviewing at companies I’ve worked at over the years; it’s better to hire kind people with a capacity for growth and skills in the right direction than to hire folks with all the necessary skills and experience at the time of hire but with poor social skills or a lot of dogma.

what if a candidate is scared that your company will be bad? how can i tell if your company has kind people?
Typically when lines of communication break down, it's because trust has eroded.

Based on your example, is it possible that it takes 3-5 years for the business to understand the limit of your capability? You get early wins but eventually every convo becomes a debate. It kills energy, and neither of you wants to be around each other anymore.

They can't fire you without lots of effort because you're probably fulfilling your duties, but it's no longer "fun" to work with each other.

Can this be mitigated? Certainly. More open minds on either side. When was the last time you lost an argument, accepted the decision, and moved on?

> Typically, I work for an employer for around 3 to 5 years. […] Then around the halfway mark or later, things sour for a variety of different reasons. Typically, I will fall out with someone senior, like my line manager. It's normally over something mundane but definitely technical.

This is a red herring. The fact you’ve carried it out this far to the 3-5 mark is extraordinary. Most people move every two years just to overcome this effect.

This really depends on the company, in my experience people in corporate jobs tend to stay for a very long time.
I think there might be a survivor bias at play here.

What I saw when I worked at a big corporation was that there was an accumulation of people who stuck around, but there was also a constant churn of people who hated the culture and didn't last. I haven't counted, but I would guess that a decent majority of the colleagues I had over the course of my time here came from the latter group, even if most the people at any one time came from the former.

In most companies the people who stick around will turn out to be the mediocre workers. Which is fine. Not everywhere needs to be staffed with the second coming of von Neumann’s. But the pattern is generally that competent people will leave unless you pay them enough to put up with shit. There is no shortage of companies in big metropolitan areas that will pay you better. In smaller areas, sure this pattern breaks and good workers may stay on to hold onto their job.
> Most people move every two years

In SF. In Atlanta we have 90+% retention at a five year mark.

That's less attrition than I would expect from retirement alone (falsely assuming age was equally distributed) 90%+ doesn't seem plausible
It's factual.

If I had to guess, most folks at my last office were between the ages of 20 and 45. We only saw one retirement during my tenure. A few folks left to a local startup and did far worse than when our company IPO'd and 100x'd our options. I could name everyone that left and count them on my fingers.

We collectively maintained a spreadsheet of Atlanta hiring dates and frequently compared our seniority against our colleagues based in SF. Most of us were in the top 5%, according to an internal employee registry API that could tell you your seniority rank.

The whole point of staying in sfba rat race (at least to me) is getting exposed to a lot of different things working with a lot of different people/companies
I got to have a lot of internal transfers to further my learning.

I got to build active-active systems that handled user sessions and core business APIs to the tune of 80,000+ queries per second. Caching layers, hand-optimized replication, eventual consistency algorithms, etc. Outages would cost millions of dollars an hour.

I worked on one of the teams responsible for building a migration path from on-prem to cloud, getting workloads from bespoke containerization onto k8s, securing clusters, and developing automation around CI/CD.

I joined an ML team to build product, did various frontend work, maintained important developer platform pieces... It's hard to enumerate it all.

You can have a full tour of tech inside most big companies. And you can continue getting promoted and working up the comp ladder.

That’s same thing that OP is doing except without associated pay raise bc you’re trapped within one company. A lot of people move projects every 2 years at faangs. I don’t see much difference between that and switching companies entirely personally
If you know more of a company's stack, you're worth more to them [1].

I was getting $400-$500k total comp in Atlanta. None of us were seeing a compelling reason to leave, at least anecdotally in our limited sample size observations.

In any case, I left to pursue my own startup ambitions. I added one to the count.

[1] Granted, some problems require fresh blood, new ideas, killing internal weirdware, questioning assumptions, new domain experts, new leadership, etc.

This is my experience. I've come around to thinking it's a "trough of disillusionment" thing combined with the nature of hierarchical organizations.

Try reading "Developer Hegemony" by Erik Dietrich. I'm not sure about his remedies yet, but he presents a good model for idealistic types to understand corporate pathology.

I've been working more than 11 years at my current small company. There are often times where things do not work the way I want. Bad communication, new strategies I don't like, different opinions on how do something, bad or sloppy code I need to cleanup, crappy processes, etc... etc...

But still, after all those years, I don't feel bad about it. That's life and life is a mess sometimes. There are things you can change and there are things you can't. And most often a change takes quite a lot of effort or leads to nothing.

You need to distance yourself from this mess. This is easier if you first and foremost take care of yourself. Lead a good life, take care of your family, do sports, do something else than think about your job all the time.

And on the job, just try your best and even if things fail, learn from them and carry on. Hope this helps a bit. Stay strong and all the best to you!

This is easier said than done. How do you “try your best” and also disengage when there are things you don’t think are correct, just, etc. For me personally I haven’t been able to find a foolproof solution unless I’m working a contract with very scoped deliverables
I agree. I find it very hard to be motivated in situations where I don't think things are being done correctly. Of now that I've grown up I realize that's completely arrogant the problem is that realization doesn't help.
In time you will realize there is no correctly just different ways with different tradeoffs.
I have found that a life of sports has prepared me well for a life of work. Growing up, I got used to "trying my best" and still losing for various reasons

- opponent way better than me

- had a bad day / off my game

- unlucky for some reason

What I learned then that has carried into work is that I can try super hard, and still things won't go my way. What I started focusing on in sports was my AVERAGE game. I kept trying to improve my average over months, and years, and that helped me avoid focusing on down days.

The same applies for work. I give it my best, and I try hard, but there are days, even weeks sometimes, where I struggle to do much of anything. I just accept that I will have powerful weeks too (and I do). Be calm, and move on.

(comment deleted)
I played in amateur leagues in college. None of the things you mentioned are same category as “teammates phoning in” or “coach is doing stupid shit” or “you’re polishing the bench while less skilled person is playing bc he’s friends with coach”. Which I’m guessing is what OP referring to. Sure when you’re a kid you just want to do good and have fun. When you start taking on more leadership roles things like above become harder to ignore.
(comment deleted)
Concentrate on the stuff you can do well. I'm sure everyone has some traits or some skills he can rely on. Practice those skills, improve them, be open to new ideas.

The thing is, even if I know or see things I don't like, often it is actually quite hard to figure out a way to improve the situation, a way which works for everyone in the team. Those things take time. You can try to improve those things, but be prepared for a bumpy road. Going in full head on can be painful, things can get personal or you'll do or say things you could regret. Sometimes it's better to wait it out, sometimes it's better to take it slow. And sometimes it's better to just leave it and concentrate on the stuff you can do well.

I don't want to sound like a know-it-all and possibly there are companies which are hopelessly lost. But there are always things to learn and to improve on a personal level. And I'm sure you'll feel better, if you don't try to fight every upward battle.

How do you handle different opinions from yours and disagreements in general?

This seems like you're asking a question about basic social skills, and it's only tangentially related to development. I'm not saying that to dunk on you, but it seems like maybe you're framing the entire issue incorrectly?

that's not my point. tp says "just accept the mess and go on with your life, but do your best". I'm saying this is an oxymoron.
I think you may be proving the point I was attempting to make ;)

You do your best within the constraints you're given, which is what is being said in your example. You are welcome to make your arguments for or against a decision (as far as office politics allow), but just as there is a breaking point for you being told to do something you feel is "incorrect," there is a breaking point where you become "the guy who always gives them a hard time."

Soft skills are important as technical when you're working with others. You have to pick and choose your battles. Don't confuse a platitude with a literal decree. Does that make more sense?

Ok now you're turning this into a semantic argument. My view is you either did your best or you didn't because there were things (perhaps outside your control) that prevented you or whatever it may be, and hey - that's OK, but I just don't go around lying to myself or whoever else that I did the best I could when that happens.
And in our field a lot of times the “wrong” decision can have tangible negative consequences for work-life balance or general enjoyability of work for one team or another. It can be frustrating to see it play out in slow motion.
This is great advice. I’ve also been struggling with “letting go” when things don’t go my way. People need to find a way to be at peace, whilst simultaneously striving for improvement.
I am currently reading non violent communication after seeing a suggestion for it on here.

I think communication is an underrated skill set. Mostly because it's so easy to feel like you are good at it when you are really not.

I think a lot of us are in the Dunning Kruger phase of communicating.. I know I was up untill a few years ago and I've been in my job (as a 3d artist) for nearly 10 years.

The "non-violent communication" style feels so unnatural though. When people talk to me using it, I feel uneasy and suspicious.
Conflict occurs but are they always hills worth dying on? That's what you need to evaluate when it arises. If you can't live with a decision then OK but don't rail against it once made. That's not your place and won't be accepted behavior. Jumping to new positions requires you to prove yourself again. Eventually that gets old and you lose interest. Being a cog in the machine is OK as you get older IMO.
Pretty normal.

I joined a larger (tech) company a few years ago, best thing I've ever done. Instead of jumping companies I just jump teams.

Need to be productive to get the team switches but that's not too hard.

I typically follow a 3-5 year pattern, too. Not because things sour or I have problems with anyone, but because I get bored with the project.
2.5 to 3y is my normal stint. Generally speaking, I tend to end up getting to know a place well enough to realize some cultural quirk which I'll be powerless to correct will render what I set out to do in the first place infeasible/impossible. This will generally be coupled with having enough data to start to see the fray points of those around me, generally leading to "time for a context switch". Either that or a personal life event matures and ends up throwing a wrench In things. It is not just you, friend.
A guess. You might start acing a certain way or make certain demands on your boss, colleagues, or employer after you feel you have contributed something important. You might feel justified in doing this because you feel like you have contributed more than others.

The raises and promotions are rewards for those contributions. The paycheck you received are compensation for those contributions. No one else owes you any more than that and it doesn’t entitle you to dictate how things are done outside of your responsibilities.

The above is my guess from reading between the lines.

Not evolving with the needs of the business? Start ups in the very early stages are a different beast. As they grow and try to find product market fit it becomes more of a business problem than a technical one. So understanding the needs of the business first helps. And with that comes the knowledge what technical things are ok to be left broken.
If this inevitably happens, then it most certainly is you. Stupid stuff happens all the time at every workplace, whether or not that makes your relationship with your employer untenable is up to you. You need to remember that you’re getting paid to do what your management wants you to do. If they want you to do something that you consider to be stupid, and if they choose not to listen to your advice about why it’s stupid, then it’s still your job to do it. If raising your concerns with management is causing your workplace relationships to sour, then it’s likely your communication/interpersonal skills that are lacking.

If you find the decisions from management to be completely intolerable, then that’s fine too. But it does mean that you have to find a new job. Finding a new job and then resigning because you didn’t agree with the direction the company is going in is also completely reasonable, and can be done completely amicably. But if you’re finding this happens every 18 months, then you perhaps also need to consider whether you might be too dogmatic about your technical opinions.

Its because in the beginning there is a lot of low hanging fruit. Its easy to make a difference. Added value is so obvious, you do not have to explain. (Probably the reason they hired you) Then, when the easy and obvious work is done, the discussions and frictions start about what work is actually valuable ...Navigating those waters also requires a skill which is not technical. There is nothing wrong choosing for work where its easy to make a difference.
> At the start of each employment I make several successful leaps, often designing and building new systems (usually single handedly).

That’s your problem. Once you’ve gone above and beyond a few times too many they will move the goalpost and you will eventually become unable to keep up. Also things like https://en.m.wikipedia.org/wiki/Crab_mentality will set in eventually.

The name of the game is “managing expectations”.

Maybe the reason for fallout is because the honeymoon phase has already gone by, and you want something different but haven't come to terms with that yet?

You shouldn't put pressure on yourself to make something work if you're getting disillusioned. Better to go somewhere better