Ask HN: Is it just me?
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 ] threadKnowing 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.
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.
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.
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.
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.
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.
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…
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).
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.
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'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.
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.
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.
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?
Once you feel things go sour, don't prolong the agony.. That kills.
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.
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.
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?
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.
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 SF. In Atlanta we have 90+% retention at a five year mark.
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.
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.
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.
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.
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!
- 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.
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.
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?
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?
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.
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.
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.
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.
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”.
You shouldn't put pressure on yourself to make something work if you're getting disillusioned. Better to go somewhere better