Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'd just like to comment on these points on a 30 year perspective...

Point 4 - incompetent people. They are great. When they fuck up, which they do often, you can save the day by simply being average. Just make sure people know that you saved it.

Point 5 - meetings are great if remote. You can sit there muted on a zoom call for hours tweaking with your bike or playing games on your other computer.

Point 6 - estimates are always wrong so don't put too much effort into it. What people value is how long you spend making up lies so spend some time on it!

Point 8 - Uncertainty. Let other people handle that and hang themselves with it. That's what software architects are for. Be there to clean up the mess afterwards or at least complain about it.

Point 9 - Eventually you do become able to disconnect from your job. One day the fucks just run out. Embrace that early on and save yourself a lot of stress.

Point 10 - The only soft skill is politics. Any sufficiently large organisation employs many politicians. The best way to deal with politicians is analyse the factions and stay neutral. No one can drag you to their side then.

There is a missing point though: objective one is getting paid. Anything else is secondary. If they stopped paying you how much of a shit would you give about all the other concerns? There you go now you understand. Nothing matters so don't get too wrapped up in it or upset about it.



Whenever I see comments like this I feel bad for the commenter.

For all the opportunity and different companies to choose from in tech, to not enjoy your job after 30 years probably means you picked the wrong career path. It’s not healthy to have this much disdain and displeasure around your work.

It’s never too late to consider a career change.


At no point did I say I don't like this. It's absolutely the best career I could think of. No heavy lifting, no dealing with bodily fluids or excrement, no harsh weather conditions, low to no risk of getting killed, no dangerous chemicals, no being shot at etc. And I get to play with things all the time and solve interesting problems.

But it is what it is!


I didn't pick up disdain or displeasure from your original message, and I didn't feel bad for you. I felt good for you! I thought "here's someone like me, who's making a decent living in a nice job, but who has a good sense of perspective and isn't getting caught up in the inane irrelevant trivialities of the tech workplace that are ultimately utterly meaningless." You can make a living doing something you enjoy without having to buy into every single aspect of a corporate workplace and without tangling up your identity with your job. Some of us work to live, and are happy doing that. It's not a failure to be not totally consumed with your career.


Tbf to u/cj, there's a few things you mentioned that would lead one to believe you aren't fulfilled with your job (which, I think, is an important distinction from being 'happy' with one's job).

If 'objective one is to get paid' it comes across as primarily a monetary transaction. That's generally not how the people I know who are really fulfilled in their careers look at it. Sure, pay is an important part, but they also really value aspects like a sense of purpose, the camaraderie of working on a good team, and being able to meaningfully contribute, amongst others.

"One day the fucks will run out." You say this as a point about disconnecting, but you can disconnect while still "having fucks" about your job. Your life doesn't have to revolve around your job, but I don't want to work with a bunch of people who don't really care about what they are doing.

You talk about how you spend remote meetings doing other not-work-related things. I get that meetings can be boring or of little value at times. In those times, ideally, I would prefer someone be honest and say the meeting is of little value and go do something more productive. At the least, I would like them working on something of value to the group while occasionally checking in. You wouldn't act this way in person, so I don't understand why you think it would be ok to do so remotely, other than it's because you can get away with it. Again, that makes it more transactional than contributory.

I could go on with the other points, but all that is to say, I don't think u/cj was completely off with their comment.


I was going to make the same points. Some of these are frustrated and cynical dismissals that may represent reality sometimes, but are counterproductive when taken axiomatically.

For instance, “estimates are lies” fails to acknowledge that planning must still be done in the face of uncertainty, and engineering is the best equipped to do this. The last thing you want is for the pointy hairs to just start pulling deadlines out of thin air. But recognize it’s not about putting in time, it’s about helping the business plan and setting up the team to build things the right way. If you do this well, everyone wins, but it does require the ability to work smoothly with people who don’t share your same expertise and not treat them like idiots.


Planning doesn't mean estimation though; we all know it's just guesswork, and basing business decisions on guesswork is madness. On top of that it's a lot of wasted time and effort.

Milestones and projections is a much more constructive approach, simply tracking the number of tasks in your backlog over time will give you an increasingly correct projection of when the project will be finished.

https://www.youtube.com/watch?v=QVBlnCTu9Ms


Very good point, planning is a broader activity than estimation. I find people bring a lot of baggage to the idea of estimation, like in this case you say "it's a lot of wasted time". There's an assumption in there somewhere about what constitutes an estimate. If you're talking about an eng-week granularity estimate for a project that is going to take 6+ months then absolutely I agree with you.

But for me an "estimate" is just a sense of the level of effort required sufficient for the needs of planning at the time. It goes hand in hand with risks, dependencies, and other assumptions that need to be kept in mind. The exact form of an appropriate plan depends a lot on the business constraints like how delivery timeline interacts with customers, external events, and the broader ecosystem that the company operates in.

As for your suggested backlog approach, this makes sense if the requirements are rigid and accuracy on the delivery timeline is the most important thing. This is situational, but in many projects I've led, the scope is negotiable, and therefore important to keep the big picture in mind to find opportunities to refining or consolidating scope. A common anti-pattern I've seen when relying on ticket/task-level tracking is the team missing the forest for the trees. It's possible to leverage these systems to support high-level planning, but I tend to prefer documents or a simple spreadsheet gantt for that purpose, and use ticket/task tracking for last-mile work, intakes, bugs and other inputs that we don't want to lose track of, but may vary widely in their importance and relevance.


To your point, most planning is bad. That doesn't mean planning is worthless when done right. It seems that most bad planning fundamentally misses the interactions between different tasks (ie it largely treats the different tasks as independent). A probabilistic approach that correlates the tasks seems to work better.

Sometimes estimates are made out of ignorance or borne from an optimism bias. But sometimes they are lies, because its easier to get a project funded based on a misrepresentation, and keep it funded once the initial cost is sunk.


The point is they're always guesses, so we multiply by Pi or whatever to make reasonably sure we're not coming up short. But it's all a game, and everyone knows deep down inside that it isn't working.


>they're always guesses

Maybe it's so prevalent in SWE that most are jaded, but all it means is that we are pretty bad at modeling it or simply don't care. Other domains, like aerospace, have similar problems but have much better methods to arrive at more reasonable estimates (when they care). For example, [1] gets into joint cost/schedule estimating using a more data-driven method where you can put uncertainty around it. It certainly beats 'multiplying by pi.'

[1] https://www.nasa.gov/ocfo/nasa-cost-estimating-handbook-ceh/


Comparing to physical engineering doesn't make much sense to me.

Part of the problem is it's all virtual, so there are no limits; part is that we're always pushing the envelope in the complexity department.

Building the same software again with just a tweak or two doesn't happen very much, the reason we build new systems is often to try something so different that it's not feasible to adapt existing systems.

Most of the time we have no idea exactly what we're building until we get there, even the customers usually have no idea exactly what they want.

Imagine going to a car manufacturer and giving them the kind of specifications we usually get for software, I can assure you they wouldn't be able to give you a good estimate either.

Research is a better comparison. How long will it take you to build a fusion reactor? Depends, right?


There's a lot you've said here that I agree with, but I think we use it to arrive at different conclusions.

FWIW, I've worked in software, automotive, and aerospace. They are probably more alike than you may realize. Vague requirements are quite common. The link above has a section specific to software development, so I don't think it's fair to say it only applies to physical systems. I would characterize it as a systems approach, rather than domain-specific. It uses "WBS" or "work breakdown structure" to delineate tasks. That's an approach that is agnostic to the domain. So if you're working on a mechanical system you might have propulsion, deployment, and control surfaces. If you are working on a software system, it might be user interface, command & control, and data acquisition. But the applicability of the method is the same.

What I think you highlighted is that SWE is generally much less well-managed than other domains. Mechanical engineers often get vague requirements but implement much more standardized processes in their work to hone in those requirements, largely because the costs of jumping in and iterating are much higher. By comparison, software development is the wild west. Like you said, software is virtual, so people are lulled into complacency that they don't need a structured process because they can build and make tweaks cheaply. But what you point out isn't really that software development is inherently different, but just that it's not managed well.

I think your research comparison misses its mark. Research isn't involved with developing some end-stage product for a consumer. The 'product' of research is an experiment and every research project I've been involved with starts with an estimate of how much that experiment will cost and how long it will take. And that follows the same basic structure as any other development effort. Maybe it's an apt comparison for some yet-to-be-proven tech like self-driving cars, but it doesn't explain why most basic CRUD applications miss cost and schedule estimates. I think the answer is that most software development has a culture that isn't as well developed in process control.


And that's my point exactly, every new software system is an experiment. No one has any idea if it's actually going to work out, it's all plug and pray.

If estimating research projects is as much a thing as SW, it's just as insane.

Pretending we know something we don't is lying.

Projections is another thing altogether, let's say we let this run for a month and then we have another look and see where we are. Much more connected to reality than pretending we know where everything is going from square 1.


It’s not any more different than any new mechanical design. Every new car line or rocket design I worked on was an “experiment” just like every new software product. You seem to confuse engineering with mass production. They are two different things.

If you think you’ll get to do research without estimating cost and schedule, you won’t be a researcher for very long. Pretending you know something you don’t is bad project management. But what I’m advocating is estimating with transparency regarding uncertainty. Uncertainty can be quantified. Pretending software is some precious unicorn project that doesn’t have to follow any process is just rationalizing bad process management.


> If 'objective one is to get paid' it comes across as primarily a monetary transaction. That's generally not how the people I know who are really fulfilled in their careers look at it.

Having a fulfilling career is a myth sold to you by employers.

Focus on getting paid enough to have a fulfilling life instead.

After all, chances are the higher ups at your company will fire you at the drop of a hat if they think it will secure them a bigger year-end bonus.


Except it’s not necessarily. As a software developer, you have the privilege to not really care about money if you don’t want to. I didn’t have money problem, ever. Without even trying. I can fly three times between Europe and America, and about 20 more times inside the continent in a year, and I can still put about third of my salary to saving. And I live in a country now where software developers are heavily underpaid: Austria. Most of my friends in other fields can’t even imagine my life - their exact words.


> As a software developer, you have the privilege to not really care about money if you don’t want to.

That sounds nice for you, but your experience is not common I don't think. It's certainly not my experience as a software developer in Canada, where I struggled for years and even now make "just" a comfortable living.

I'm very happy I don't have to worry about rent and groceries and I can save quite a bit, but I'm certainly not able to "not care about money"


HN has a high concentration of above-average salaries, even within the US. It's tough constantly hearing how many multiples more my southern equivalent at FAANG is earning without it affecting my sense of self worth.


I think this is one of the major downsides of focusing on money as the primary part of a job. It can easily become a constant comparison, which has a natural way of making you miserable.


Wow, Toronto really seems a terrible place in context of cost of living.


Is it a myth if people have managed to do it? It takes some self-awareness and conscious decision-making, but it's certainly possible.

IMO, a focus on getting paid can lead you to optimize the wrong things in life, making fulfillment less likely than more. It has a weird way of changing your value system by changing what you focus your attention on.


Right, but you are cynical and dispassionate. There is a world you could be working in a place where you are more passionate and less cynical.

(This could be more personality than experience though, so I agree it could be a misread)


After 30 years in the job, I say that the poster you're responding to is just realistic. I love my job. I love what I do, but it's worth remembering that it's just a job. There is so much more to life.


Amen to that. Work to live, don't live to work.


Not everyone needs to be passionate about the day job. Being present, competent, and reliable is enough. I’d personally go on to say that it’s risky to put too much emotional investment into something you don’t own/control.

I prefer to invest my passion in things outside of my day job. Working is fine, but it’s a means to an end to fuel more meaningful things. We don’t live to work.


"I’d personally go on to say that it’s risky to put too much emotional investment into something you don’t own/control." Bingo! This is exactly what happened to me.

What I learned is that, even in a great environment where there was a ton of latitude to have ownership of technical details and even product details, it's still contained within the broader context of a business. That business has interest in the thing you're working on while it's a factor in creating value, and when it becomes time to change focus onto other things, it will generally do that without much hesitation.

I've been burned by this multiple times. Eventually it clicked for me in the way you phrased it. So I show up and do what I can, bring my expertise as much as I can, gauge where the limits of what I can provide are, and keep a healthy distance mentally otherwise.

One other note - you can still be passionate about software and not one specific day job. You can still work on other projects and explore ideas as much as you want. It's just that that's a separate thing from work. Dedicate time and space separately for that IMO.


> One other note - you can still be passionate about software and not one specific day job. You can still work on other projects and explore ideas as much as you want. It's just that that's a separate thing from work. Dedicate time and space separately for that IMO.

This is what I was trying to get at and you've phrased it beautifully. Thank you.


I am passionate about the things I'm interested in, not all the unnecessary fluff around them :)


> There is a world you could be working in a place where you are more passionate and less cynical.

The idea that if you're passionate about something you won't have any complaints about it or enjoy it 100% of the time is unhealthy. Most people realize that there's always an element of 'grind' to any task. You could be the most passionate person in the world, but I can guarantee that something about your passion will annoy you slightly. That's just being human


I don’t disagree. Sorry I feel people have misread a lot more malice into my comment than I intended.

I felt sympathy for the OP not superiority.


To say it's "personality" is a little passive aggressively degrading. These opportunities are not accessible or sensible to everyone all the time.


I think you misread my intent. I was saying it could be personality of cynicism (which is fine) and nothing to do with the job.


No, this is being realistic. Time makes the rose tinted glasses go away.

This would be the same with another career.

It doesn't mean he does not like what he does, just that he sees the reality of working in an organisation.


I don't know. I've been doing this for over 30 years and that seems far more cynical to me than realistic.


I've been doing half of yours and I found that the advise is more realistic and I'm doing exactly all the points he listed but still love my job.


To some extent presenting a cynical affect is seen as intelligent, or “cool”. The poster claims they like the work, so I’d just take them at their word.


I love programming but can’t drink the koolaid.

I haven’t found a company yet that meets my energy. All I get is people “excited” to be working for their company because they are “changing” the world. It’s marketing vomit.

To be honest I would prefer to have few million dollars in investments and not to work for anyone at all. No arbitrary deadlines, no corporate ladder, no politics.

I just want to write some code, build some servers and play with things. Maybe make something that benefits people in general.


> It’s marketing vomit.

An understatement. Do these people actually believe in it ? Or are they just faking it because one has to adhere to company's value ?


Most people are faking it. Being able to spend your time on something that both significantly improves humanity and pays the bills is a rare opportunity.


I don't think that's really true (though the claim might be too general to even evaluate on its merits). The same way that I don't believe most religious leaders are secretly atheists.


I dunno I'm an atheist and I've thought about starting my own cult occasionally :)


I've always wondered what substances people are using, the more that they have to touch that stuff. When I was more naive and inexperienced, I was blind to this, and I also judged it.

Nowadays, as long as the marketers are taking care of it, and they aren't ruining their health, I don't care what they're taking as long as it's not meth.


I always wonder this. I think many people actually believe the bullshit because they aren't intellectually curious and have spent no time exploring how other organizations might work. This becomes a problem for software engineering because they have nothing to draw on other than their past work. If they haven't worked anywhere other than your current employer, and your currently employer is a dumpster fire, they are going to continue to repeat bad patterns.


In a company whose business is software-mediated (which is basically all businesses these days), there are a bunch of people who are excited to be part of the journey… and a bunch of tech people who have the power to actually do things because their hands are on the keyboard and they can make the business change.

I know which group I would rather be part of.

Given that being paid to do things is going to involve working for some sort of business, I’d rather be in software development for such a business than in marketing or sales or HR or operational support…


> To be honest I would prefer to have few million dollars in investments and not to work for anyone at all.

This is possible, especially on a tech salary. Have you heard of the FIRE movement?


Of course I have. I do make good money but not $500k.

I’m hoping to increase my net worth by few millions in the next 10 years. Getting close to my first one.

I might grind and go for a big tech job, but it needs to be remote.

I then plan on either working an extremely laid back job where I put in 10 hours a week and collect a salary without giving much fucks or doing something exciting that might not pay so much.

Maybe I will find something along the way that excites me.


harsh reality is that 80% of humanity works a dead-end/awful/not wanted job just because bills. IT is a nice bubble in which you do something you are mostly passionate about and you get paid well. I'm not saying "we got it good so don't complain" but sometimes is worth to analyze the situation from the perspectivo of an outsider. IMO i can do whichever tech job, the more i dislike it the more i need to be paid, that's all


Pretty much any job I might have enjoyed more, if it's not a lot of fancy words for "become a celebrity", will look like minimum wage compared to software engineering. Even when it doesn't, pre-AI software engineers were aggressively stalking around the corners of dark alleys to cut the wages/number of seats of that job.

Most other lines of work guarantee poverty or are a riskier gamble with worse prizes and worse loses.

You want to be at the top of the titanic looking down at those swimming to what's left of the upper deck, not rearranging chairs seconds away from being underwater.


I love writing software and building things that solve real problems, but it’s astonishingly rare to do this as employment. Yet, you still need income as children don’t eat for free. So for the other 90% of us you have to make a choice:

* Go to work knowing you are probably not productively writing software and just accept that reality for what it is: staring out the window while other people listen to the sound of their own voice out loud all day long. And, you often have to drive through lengthy traffic to relish in this experience.

* Write software outside of work at cost to your marriage, time with kids, personal finances, and everything else with work life balance.

* Go do something else.


They might just have a different perspective than you. I complain about my job a lot. People say to me, “Wow, you must absolutely despise it.” The truth is that if I absolutely despised it I would have left a long time ago. I just have no reason to talk about the good parts. I focus on problems because I want to improve on them.


> I focus on problems because I want to improve on them.

Does this work, though? Does the complaining lead to improvements?

I'm posing the question as a challenge, and also out of curiosity. And I'm of the school of thought that it's necessary to acknowledge reality, but, complaining to the point where people think I despise what I'm complaining about may indicate that another approach may be necessary (such as finding practical solutions and giving yourself options that you can test out).

Apologies if being presumptuous.


It’s probably different for every person but complaining about my job either helps me arrive at a solution or realize that I can’t do anything about it and distance myself. I’m very lucky to have never been in a situation yet where the problem is unfixable, truly unbearable, and I also can’t just leave.


Appreciate the response. I think I do something similar, but just in private.


Ever hear the term "mid life crisis"? It exists because people around 40-50 - that is 20-30 years into their job they realize they have been doing the same thing and it is getting boring.

While it isn't too late to consider a career change, I'm not sure that is a good idea. For some it is, but many stay - particularly in tech - because they can make a lot of money and thus afford some hobbies that are not boring. Often this is overall your best course in life: find a hobby you enjoy and keep doing your job.

Obviously everyone needs to make their own decisions.


I'm not that guy, but I don't have to like it. I'm not skilled at anything else and I couldn't make this much money in any other career.

Most people will never enjoy their work, but I can dislike my work while being far better off than most people ever will be.


Maybe... But isn't your view also very dismissive of their experience and the constraints and context of their experience?

By far, most companies above a certain size do not operate in a way where these principles do not apply.


> It’s never too late to consider a career change.

Absolutely, but the huge difficulty is finding a place where the grass is greener. Nearly the whole world is quite equally shitty, it is just the kind of shit that you will see at the various careers ("septic tanks") differs.


nah, L take. Have a life.

I remember going to hackathons and wanting forced timed experience to build anything. I remember going up to the companies that wanted you to build on their stuff and being surprised at their substandard APIs and how lackadaisical and unmotivated those engineering representatives were, I just didnt understand. A fortune 500 team just hanging out a hackathon with no capability or interest in providing real support?

Now I think back and I realize they just had other things to care about

The hackathon and job could be fulfilling, their DIY projects at home were more fulfilling.

Their entrepreneurial endeavors were more fulfilling.

Sure, they could be totally checked out and burned out too.

But it doesnt matter, set boundaries with your job because that definitely doesnt matter.


I actually read that he is enjoying his job and has a healthy attitude.


Aye. Sounds like there are no illusions and a "lets get it done so we get out at 5pm sharp" attitude.

The "I love coding and need to stay to 8pm every day because we're going to change the world!" is insufferable. Hit whatchu gotta hit, don't play the games, and push the release out the door. Then get out there and live life.


Big boomer energy here: it's called work for a reason.

You don't have to enjoy every minute on the job. It's not likely that you're going to be working on passion projects every day. You're not even going to be intellectually stimulated by the vast majority of tasks you will be given. You need to get used to the fact that almost every job as a programmer is probably going to be working on a system that retains eyeballs on screens, counts something, or shuffles around forms.

When you do this for twenty or more years it gets pretty boring. Where are all of the data structures, type systems, formalizations, optimizations, etc? Taken. There are a few people who get lucky enough to have jobs where they can work on things that interest them, where they get to work on hard problems that get them out of bed and plague them while they're in the shower. But they don't leave those jobs and there aren't exactly a ton of new ones being created either. Unless you're lucky enough to be in the right place at the right time to get into one of these jobs, you're more likely to be sitting in meetings and filing JIRA tickets.

Cherish the times when you do get to work on a project that piques your interest. It can happen. But it's rare for it to last for most people. You have to sustain your interest and curiosity in other ways. And it's totally fine if it's anything to do with not-programming.

Meanwhile, on the job? Do your best, show up, be nice and professional. You'll do fine. You're here to clock in your time for money so that you can do other things that you actually like: reading books, spending time with family, doom scrolling, etc.


When I was in college I had a professor who joked that her standards had gone down over the years. Nowadays, her only criteria are: "no criminal record."

Maybe it's just a joke and we don't need to get that cynical, but I think that in the end, enjoyment of the work comes from: whether you can find some creative process in it, and whether you like your coworkers. I think this is the optimistic way of looking at "work is called work for a reason."

To that end, even plain-old programming beats a whole lot of other fields. But to think that we should be drinking the kool-aid and all is definitely not going to stick for the vast majority of us by the second or third decade. I certainly enjoy my job, even though it's just "work."

My professional life and mental health definitely improved when I finally accepted this in full. Whereas at my previous job, the entrepreneurs sold everyone on using the tools and languages of their choice (and sacrificing for compensation in a big way). Noble attempt, perhaps, that may have worked in a different time and era of tech, and under vastly different macroeconomic circumstances. But ultimately, it should not have been surprising, in retrospect, that no one would do any of the work-work that it would've taken to make the company work.


> I think that in the end, enjoyment of the work comes from: whether you can find some creative process in it, and whether you like your coworkers

Hard agree. I look for the interesting things about it and try to, "find the fun." It's nice when you see something you built work well for people, solve problems, etc.

When you get to work on a project that aligns with your values and goals, it's a blessing! Take it, enjoy it, savour it, and write about it. Dive in deep! When it's gone, it's gone.

But there's a lot of busy, necessary work in programming that isn't going to be like that and it still needs doing.

There are a lot of businesses out there that need people to do that busy work and will pay well for someone capable, competent, and willing to do it. It's not glamorous, exciting, satisfying work... it's work. You get paid for it.

Update: s/able/willing/


> I feel bad for the commenter

yeah the post where you don't even directly address him, its just teeming with compassion.


Agreed. I'm "only" 20 years into my career and, while it has ebbed and flowed, it's also something I love and am thankful I get to do for a living.


It absolutely might be too late for a career change. If you're paid well, and have come to rely on your income, staying put is likely your only realistic option.


How many people in the world (, software engineers or not) actually have the privilege of enjoying their jobs after 30 years?


Working for any organization comes with its downsides. Pretending like they don't exist and gaslighting someone who's come to peace with them for long-term job satisfaction comes off as pathetic to me.


Spot on! After 16 years, I'm looking to get back to academia and do a PhD. I felt like I don't enjoy what I'm doing for far too long, even though I changed jobs about 8 times.


Came here to say the same thing, but a lot more angrily and a lot less eloquently. Thanks!


I used to think like this, but after getting a wife and kids, there’s just no way a corporate job can be continually rewarding like you describe.

Everything is always mired in unpleasant bullshit and emotionally detaching like the above poster suggests is the most pragmatic way to handle work.

I’ve lost all desire of proving myself and working on interesting problems, because at the end of the day, I’d just rather spend time with my family and do fun personal projects. Work is work and it will be never live up to an idealized concept that you have in your head.


> It’s not healthy to have this much disdain and displeasure around your work.

The disdain and displeasure is a result of experience. Of knowing what needs to be done and not being allowed to do it.

> The right way, the wrong way and the Army way

Usually, the problem is the sort of people who get promoted into mismanagement. They were good at "people skills" (and all too often - their only skill is sucking up to their boss) and bad at programming. This is a systemic problem that I have not seen any sort of possible way to fix in all the decades I've been working (or visiting dad's office when a youngster). If you could find a way to ensure that only skilled managers get promoted (and incompetent ones fired), you will fix Capitalism. No more Enrons. No more Innitech.


It's a self-perpetuating process though, since the productive, skilled workers are by definition spending the majority of their time learning and doing productive things, while the remainder have the majority of their time freed up to play political games and elect more of their own political kind into leadership roles. That tends to increase the workload of the productive people, further pushing them away from the nexus of decision-making as they're too busy keeping things running. Eventually a crisis occurs in the top-heavy organization (or society, even). The doers burn out or leave, only demanders remain, and everything goes to shit.

Perhaps worker-owned companies could help with this, but I'm sure that the time investment imbalance dynamic would still be an issue to contend with.


It's a job, trading labour for money. Enthusiasm isn't a requirement, it's not an acting job.


I don't think it is reasonable to expect to truly enjoy one's job. This seems like a luxury that some people in certain fields might enjoy, but most of us tolerate or hate our jobs and wouldn't do these activities by choice.


WAT? Seriously? Career change?

Your parent post is on-point. You can be passionate about your job and still do the things that he said he does.

You're gunning for absolutism while parent's post is realist.

I love my jobs (yes, all of my employers) but there are few meetings that IDGAF but have to be there because of many reasons. I muted myself and do something else.

I used to be an idealist but I slowly changed my approach because I realized at the end of the day, I'm dealing with human beings day-to-day.


Weird takeaway, I thought the comment was brilliant and spot on! 30 years here too!


Don't mistake zero-fucks with zero-cares. Staying cool while keeping your sleeves rolled up working on fixes is an absolute life skill. Knowing it's always "Same shit different pile" is maturity, not resignation. Working hard because you are a valuable engineer doing a good job, despite knowing that the world is full of chaos and nothing will matter in 5 years is called Professionalism.

Get paid, invest, be chill and fun to work with, enjoy your family and friends, go fishing or something.


Thanks for sharing your valuable point of view. Unfortunately TV shows, media and being a nerd at home while everyone else was having fun created the myth of the brilliant software engineer that is saving the world through coding - in some cases it was therapeutic or a way to be "different".

Reality is that the software industrialization (which happened after 2000 I believe?) didn't give a damn about those nerds or 10x engineers or whatever: they want decent people that can be replaced as needed. Not necessarily in a cynical way but in a way that every other field works - employees should not become a risk. When that happens, you as a manager have failed miserably.


Yes that's a fair perspective. They wanted fungible staff. The only way to add personal value is to be as non fungible as possible which means being an expert on niche things that the fungible folk aren't. That is usually domain specific concerns and intricacies.

But really I haven't changed the world. I've made it a lot worse. I caused the loss of thousands of jobs. I took money from bastards and con men in return to make things to make the world worse. I celebrated the demise of competitors and their staff going hungry.

And I only did this all because my official qualification didn't pay as much.

At least I'm honest.


That is a choice. Not criticizing you for yours (and bonus points for honesty), but optimizing for money is not the only game in town. Plenty of software engineering work makes the world better while paying enough for a very comfortable life. Not FAANG levels, but good money. My 2c.


This. I've learned that I can't optimize for income, because typically it means I'll be doing work I dislike, or working for a company I dislike. For me, there is no amount of money that can balance that out. I'll prefer a position that pays a bit less but that I enjoy over one that pays excellently every time. To do otherwise ensures I'll have a miserable life.

Others can and do differ, of course. We all optimize for what's important to us.


Yes I agree. I don't make FAANG money but I live comfortably. I think what is important is optimising for a fair balance of happiness in life, which despite my negative outlook here is pretty damn high and taking home enough cash to enable you to do what you want to do before you drop dead.

I'd be more invested in something which improves the human condition but that's a 1 in 100,000 job. Perhaps I should have done biochemistry or something at university.


Hey, if it makes you feel better, a lot of biochemistry research ends up being completely meaningless fluff that is only published to inflate the author's reputation, but will likely have zero effect on the real world.

You can be cynical about anything if you want to :)


Hahaha thanks for the perspective. I feel a little better now at least :)


> I'd be more invested in something which improves the human condition but that's a 1 in 100,000 job.

I think the ratio is much larger.

But consider that market forces do work:

Since a lot of people want to do such a job, the salary will be quite low (i.e. so low that there won't be a long queue of people who want to do the job for such a low salary; the salary will just be high enough that the positions can be filled), thus these jobs will typically only be attractive to people really who want to put their money where their mouth is (i.e. their willingness to improve the human condition is so huge that they are willing to accept such low salaries).

On the other hand, the salaries of "bullshit jobs" or jobs where you do evil things will be much larger, because otherwise the company will have difficulties filling the positions.


Disagree there is a choice.

We all have money pressures. It is ALL MOLOCH.

If you think you have a choice, then count yourself lucky that your life ended up in a position that allows that illusion.


> At least I'm honest.

For what is worth, I appreciate this last bit and I think many others do, too. It's depressing to see a person doing all these things and not seeing through this.


You've obviously hit a sore spot for some people.

The system is built to capture value (not create it) while externalising as much damage and cost as possible.

The sooner one accepts that the less deluded one needs to be. There's no company 'mission'. The only mission is try to find a way to survive and prosper under hegemonic capitalism.


It's worse than "the system". It's natural human behavior. Take as much as you can for yourself and your friends/family, push the costs onto everyone else. Altruism only happens in proportion to the extent to which it's felt.

Humanity has not yet invented a system that discourages this behavior effectively in the presence of abundance and wealth.


> The system is built to capture value (not create it) while externalising as much damage and cost as possible.

What system?


The System. US. We are MOLOCH.


> The only mission is try to find a way to survive and prosper under hegemonic capitalism.

How true this is depends on where the money is coming from. Founders at a bootstrapped company may actually believe in their stated mission. I've seen it. Once investment money gets involved, sure, it's all about the exit. Even the founders may be legitimately confused about this, which results in a lot of mixed messages. Professional leaders who have held executive positions at large enterprises have zero illusions and will probably give it to you straight if you ask them one-on-one.


Your grandiose language (I've seen things you wouldn't believe, etc.) means you aren't as self-aware as you think you are.


Sorry I didn't think past listing the horrible things I'd done. Perhaps I should have stuck my business hat on and gone a bit more Cervantes to fit the mould of startup culture?

"One man scorned and covered with scars still strove with his last ounce of courage to reach the unreachable stars; and the world will be better for this."

Urgh no I'll stick with reality.


That's Cervantes? I thought it was by Leigh and Darion. It's possible that they adapted a real (translated) Cervantes quote for a song in Man of La Mancha, but a few Googles don't yield any trustworthy sources that attribute the quote to Cervantes himself.

In any event, Brian Stokes Mitchell did a phenomenal rendition: https://www.youtube.com/watch?v=zbgTUwUP-ew

Wait, this is the Broadway World forum, right?

Edit: Yup. Confirmed with someone with a doctorate in Spanish Lit and a deep love of Cervantes. That quote was invented for the musical. Oh well.


A "nerd" will be under-utilised and probably dissatisfied in most companies. Most software projects require developers with a level of knowledge that is "industry standard" - being able to write good-enough code in a popular language/stack with a popular IDE and tooling used in a company-specific way. Nobody would care about your vim customisations, the lock-free data structures you implemented, or your deep knowledge of compiler optimisations.


I think this is spot on and that distinction deserves to be in the education of present and future programmers. It's at the root of the different terms (programmer, SWE, computer scientist, developer) and it's not unusual for a role to demand more than one of these types of behavior. But, it's often disheartening to those who would rather spend their time daydreaming in math.


> Reality is that the software industrialization (which happened after 2000 I believe?) didn't give a damn about those nerds or 10x engineers or whatever

That's only true for 95% of companies, not 100% of them. But if you're really in the 5th percentile, you shouldn't care about these 95% anyway. I've been lucky to experience software companies that really care about exceptional engineers (and have proper business incentives to do so), and it truly has been the best place to work at as a software engineer.


> Unfortunately TV shows, media and being a nerd at home while everyone else was having fun created the myth of...

Well, yeah. But how many real careers are accurately portrayed in TV and media, or closely resemble doing $Stuff as a hobby? I'm thinking somewhere between "zero" and "Gell-Mann Amnesia".


Here’s my one key observation after 35 years:

Whenever someone refers to planning as “lies” and whines about “politics” … you can be sure they are a difficult person who blames everyone but themself.


The poster is referring to estimation, which is different than planning. Estimating is hard, and requires a many people working together. It can be done for a group, but not for individuals.

In many places estimates are actually lies. There are even plenty of companies where realistic estimates, and well planned projects will get you sidelined. These are often places that reward for fire-fighting rather than planning, and where your value is judged by how busy you appear to be rather than how efficiently you work.

It's important to understand which kind of company you are working in, and if you understand that, then you can adjust your behavior appropriately, and succeed within the environment.

I'm happy to be working in a place that rewards for planning, but I've worked in places where detailed and accurate planning was punished. Oddly enough, this division is surprisingly disconnected from whether the business is successful or not. A good business model will cover a multitude of technical sins.


"politics" just means "large groups of people making decisions together". People love to complain about it, but in reality it is the one tool we have to steer large organizations.


"once God crapped out a 3rd caveman a conspiracy was hatched"

You can't have large groups of people making decisions without politics, and anyone saying otherwise is kidding themselves. You either play the game and pick a side, or someone picks it for you and you get what you get.

Keep in mind this is entirely separate from ruthlessness or backroom deals; this is just the way of things with large groups of people.


> Whenever someone refers to planning as “lies”

I believe it's all about size. Small tasks can be estimated fairly precisely, with 30% margin maybe. But some people extend this logic to huge projects and this simply doesn't work.

I give you example: I was once asked to estimate the amount of work needed to migrate a huge org from on-prem to one of the public clouds. Without even knowing what kinds of app they were running. I said I can only do a very rough estimate and there are too many variables to be precise. But they insisted and hired someone else to do this job with the precision of half-day!

Needless to say, their estimates were too optimistic because they could only include what they knew. By design, they couldn't measure the things they know nothing about because these issues haven't appeared yet. Last time I checked, they are still migrating and I have a feeling they will finish around the time I had originally planned, that is the second quarter of 2024.


When you estimate small tasks, most of the estimates will be accurate, but once in a while, you'll overlook something and a small task turns into a big task, e.g. you need to switch APIs or the customer wanted something that sounded similar but turns out to be much more complicated under the hood. So it's not a Gaussian distribution, it's that once in a while a task blows up.


So you're saying you didn't get the job and the people who did are getting paid a lot more than they originally bid? :)


No, I quickly moved to another team and watched my colleagues get fired or quit one by one as they couldn't keep the estimates done by someone else under pressure. It was a surreal experience.


In my experience, large estimates are only ever Rough Orders Of Magnitude. Our teams do not pull any work in to be done unless they've broken it down to the smallest estimated components. Anything with a large estimate is inherently inaccurate and not ready to plan around.

The situation you described seems quite broken


I think you'll find I blame myself for these issues. I just do not deny that they are issues.


Acknowledging the ubiquity of politics in organisations is not whining. He only offered a way to deal with it for those not interested in playing the game, or who are not very good at it.


I blame everyone else and myself equally.

But I'll stop whining about politics when I'll stop witnessing well-behaved but incompetent people turn projects to failures.


Here is something i encountered, sometimes higher ups will put arbitrarily deadlines and act like the entire business depends on you meeting that deadline for a project and after that deadline passes no one seems to care that much about your product, they even allow you more time to do it "right".


That some top-tier management practices you experienced there. I expect your productivity*quality sky-rocketed.


Spanish theory of management! The more they push the more they get!


Just to comment on incompetent people. There are kinds of incompetence. It also makes a huge difference where in the hierarchy they are. Incompetent boss will not let you save the day, but will make you take the blame, for example.

Here's an example of incompetence I deal with every day. The head of R&D department either pretends not to understand or is genuinely this stupid as to engage in the following process over and over:

* We release a program with many defects due to the short development and testing cycle, but especially due to poor (or missing) planning.

* Customers complain they cannot achieve what they want using our program.

* R&D lead bravely rushes to "extinguish the fire" by adding new feature to work around the customers' complaint.

* Because the feature was never properly planned it creates multiple new issues while coming late to the testing stage.

* We burn past the deadline, and eventually have to release still half-baked.

* Customers complain again...

There's no place in this scenario where any of the underlings can swoop in and save the day, because saving the day would be to tell the R&D head that he needs to go through due process of planning his contributions and coordinating with other department heads, esp. the QA. But nobody can, because this will be judged as insubordination and violators will be fired. Over half of the underlings are on work visa, not to mention that the company is almost exclusively filling its niche. So, nobody wants to speak up out of fear of being fired.

On the other hand, such incompetence only lowers morale, leading to most underlings losing interest in the subject matter and doing the absolute minimum to hold the job. You'd think it's a miracle such a dysfunctional company keeps sailing... but, I have this to tell you. This is not the first company of this kind I met in my life. All companies of this kind that I've met by the time I've met them were over 20 years old, profitable, big, fearlessly looking into the future...


I love that I work somewhere with no incompetent people (or rarely) as it makes working a lot more fun. You spend most of the day solving real problems.


That is how I feel in my current team/department - but I always worry that if you don't know who the incompetent person on a team is...


That is why I hanker and breed plenty of imposter syndrome :-)


It happens sometimes! I've been there. Enjoy it while it lasts.


I had a couple of jobs like that. I looked back and worked out they weren't real problems. They were problems invented to sell solutions for that made money. Supremely productive but alas pointless too.

I eventually developed a philosophy of passive capitalist nihilism. I can't change anything meaningful so I will use the accumulation of capital as a coping mechanism to deal with that.


There are no “real” problems if you have water food and shelter and your family and friends are safe etc. Everything is consumerist driven. Driven by desires.

But my current job they are building something worthwhile and I believe a lot of companies are. But the FAANGs might feel less like that. But let’s say you work for Splunk or Shopify or a government portal or writing drone software or whatever I think it is useful.


Desires are real though.


I don't think all of this applies in a small outfit. Some of it, sure... Politics is less of an issue in smaller companies. Disconnecting is perhaps actually harder in small companies, idk. Incompetent people can't easily find a place in small companies I reckon, unless, unless everyone is incompetent, in which case the company won't be around for long!


If anything, politics is MORE of an issue in smaller companies, but it usually plays out differently. Be aware of what's going on and _be involved_ or prepare to get blindsided at some point.


Fair points there. Although I have worked for a number of very small companies (startups) that have been successful and totally incompetent, at least one to the order of having the CEO threatened with jail time by the authorities.


Strongly disagree. The smaller the company is, the more political it is. Because now there's no layer to appeal to or to inject sanity; it's the way of the owner or the highway. Being on the right side of the owner is the most important thing and if you're on the right side, you can be as incompetent as you want (see: son of the owner is an idiot, but is the second in command).


Sorry you’ve been burned by nepotism and incompetent leadership. That’s not the root of politics though. Politics is about decision making processes and power dynamics that emerge in large groups. This becomes difficult regardless of competence because power and control become decoupled due the bandwidth limits of single humans, and so the methods of influence and direction become more manipulative and/or more draconian.


Maybe you're right. If so, I guess I am one of a lucky minority that buck the trend!


depends on the small org. large orgs have a lot of people and a lot of personalities, processes, HR handbooks, you name it.

small companies have a handful of people, and if there is a clash then you're gonna have a bad time. in some ways this is good since you have only to lever or negotiate with 2-3 people, and can get facetime, but if you're on the shit-list it's not gonna happen.


You make a good point. There have been times an HR handbook / department would have been useful. At the end of the day it's a choice I guess, which kind of org you work in. HR departments can also be a bad presence, depending on what is going on for you at the time.


>estimates are always wrong so don't put too much effort into it. What people value is how long you spend making up lies so spend some time on it!

Why people always say this? In my team we have never missed an estimate of what we have planned. I also don't remember it in other projects where team does take time for planning. What is so hard that people find estimating their work?


> What is so hard that people find estimating their work?

Unpredictability for any new work. Even knowing my codebase well, I sometimes forget how changing some piece of code will require changes in other places. And without having done exactly the same work before, I cannot know how difficult it will be and how long it will take.

Dependency on other teammates or other teams. If another team is building something that your work depends on, you have no way of knowing when you'll be finished. If the code you write needs to be reviewed by other team members, and then you'll have to incorporate the suggested changes, this makes it harder for you to say how long something will take.


Maybe you are getting good quality requirements and / or have a system to work on that is somewhat easy to reason about.

Requirements are often hazy. Pushing back on that is good, but if the response is "do it anyway" then you either quit or handle the uncertainty as best you can. The latter makes estimating hard.

If you are going to have to depend on third parties (whether internal or external) that is another thing which can torpedo an estimate that was made in good faith. There would often be too much uncertainty in that situation to be able to accurately account for it in an estimate.

"estimates are always wrong" is obviously an exaggeration - the whole comment is written in that spirit.


Sometimes the spec of wants to be built is just some notes on a napkin with a whole lot of ambiguity.

Sometimes the "estimate" was already predetermined to meet some arbitrary marking goal.


I'm amazed to read this. I'm pretty sure that I've never seen a reasonably accurate estimate for a nontrivial task in my entire career.


Are you always working on similar projects? Unknown unkowns are what gets you.


> What is so hard that people find estimating their work?

The central difficulty and huge part of many programming projects is actually the "unknown stuff" that is insanely hard to estimate, be it

- requirements set up by users are often very vague

- interacting with some very complicated third-party library/software that takes years to only understand the basics of

- many programming tasks are unique, thus you have never implemented anything remotely related, and thus also have hardly any idea where the difficulties might lie

- the new software "has to behave like the old one". In the old software, there exists an insane amount of corner behaviour where nobody has any idea why it was introduced, but the users will at some point complain if the new software behaves only a little bit different in such an obscure corner case


> The central difficulty and huge part of many programming projects is actually the "unknown stuff" that is insanely hard to estimate, be it

This is my observation as well.

I also think that devs tend to consider the central problem they're solving when estimating, rather than the totality of the work that has to be done in order to complete a task. If I'm tasked with adding a new feature, my mind is focused on the business logic of that feature and if you ask me how long it's going to take, I'll tend to answer the time for just that. I'll tend to forget the time required for all the other ancillary work around that (documentation, UI changes, code review, QA, etc.) Omitting that stuff results in wildly optimistic estimates.


For sure, some teams are way better at estimating than others, and I don't think it helps when a team has the attitude that estimates are some sort of corporate bullshit.

No other engineering discipline has this level of immaturity. Sure, estimates in other industries are also notoriously hard, but you don't see this utter disregard for them you see in software. And, I bet you donuts that every "software engineer" here as demanded estimates from other fields and felt angry when they were missed.

"When is that bridge going to be finished?" "When is the road work going to be completed?" "When is my house renovation going to finish?"

Estimates are important. And yes, they are hard, but there is spectrum of skill levels at doing them well.


Outside of HN commenters, anyway, I don't think I've encountered a dev that doesn't understand the importance of estimates and that thinks they're nothing but BS. Most make honest attempts at accurate estimation.

However, most devs I've worked with were also very aware that estimates themselves have such a large margin of error that they can be considered a bit bullshit even though they are necessary.


You can make any deadline if you pad enough.


Careful, available budget will always be spent, available time will always be filled.


Which, when you ask enough questions, is what most stakeholders want.


Unless the budget is limited, and estimates have to be "optimized" to meet political goals. At that point, disengage and waste as little time as possible on making up shit.


At most companies the stakeholders barely know what they want. They provide a vague idea of what they want, and you give a wild estimate (referred to as a Silly Wild Ass Guess). Knowing all of the details of the problems that one is going to encounter in their old legacy system is basically impossible without spending a bunch of time up front, and you always discover more when you start writing code, so it is best to just start and iterate until you have enough of what the stakeholders want and you move on to the next disaster project.


"we have never missed an estimate"

After 35+ years of software development, you are either lying, incompetent, or worked on exceedingly trivial software. Sorry to be harsh, but I can guarantee you that if you were given a significant software project, asked to estimate and then deliver, that the vast majority of the time your estimates would be wrong.


They could also be greatly padding their estimates. When I estimate things, I take the amount of time I think it will require and double it. In my businesses, my partner would take my padded estimate and quadruple it. By doing that, we never blew past a deadline promised to a customer. That doesn't mean the estimates were accurate -- if they were, no padding would be necessary.


I think it depends on industry, maturity of team (tenure on that project).

I’ve worked on teams that have exactly your experience. I’ve worked on others where they could just never hit the mark. Skills and experiences seemed equivalent. There didn’t seem to be a magic bullet reason, just a whole series of reasonable explanations.


Some problems I often see:

   1) The people estimating the work aren't always the ones doing it.
   2) Engineers are optimists, estimates are often best case.
   3) Not enough padding added to estimates (see #1 and #2.)


It's easy on small teams on small products. Eventually, as capitalism demands eternal growth, they grow to the point that the complexities and hack jobs that were used to deliver previous estimates impact them. Then no one wants to turn up with a realistic estimate. Eventually all the estimates become lies because of the incalculable complexity of the estimation process that results from the complexity of the product and your options are usually to try and lie and deliver late, but not later than other teams in the org.

Every org I've worked for ends up like this.

There is a lot or intellectual dishonesty out there. It used to bother me. It doesn't now. I just don't partake in it.


Learning point 9 early will save you a lot of pain.

I'd add this: Care about your job, do your best, learn, grow. It'll serve your career and it'll serve your happiness/satisfaction.

HOWEVER, accept that things will go wrong/dumb decisions will be made, and it's not all up to you to fix. If other people make dumb moves, you don't have to die on the hill. Let others fail, it's good for them too. I promise you that nobody will actually care after it's over. It's not worth the mental agony.


>Point 5 - meetings are great if remote. You can sit there muted on a zoom call for hours tweaking with your bike or playing games on your other computer.

You dont have to tell people about it...


What is valued is presence and contributions. That doesn't necessarily require attention for the entire meeting. I'm not going to live forever so I would rather expend that wasted 80% on something that I value. The outcome of the meeting is always the same!


I've asked my coworkers to cancel a biweekly meeting that in my mind creates no value. That meeting still lives on, so I don't feel guilty about reading news or clipping my nails while it happens.


Have you asked what value they see in the meeting?


I think they decided to end the conversation there and then when I suggested axing the meeting, so I didn't bother. I just show up every two weeks muted and get noted as an attendee on some pointless meeting document. No skin off my back since I don't own equity.


Not GP, but I once asked my engineering colleagues if I was the only one who doesn't pay attention in the bi-weekly all-hands because most of the information is irrelevant to me (e.g. what new marketing strategies we're using). Some admitted that they would do some work on the side, but some also said "well, those people also want to have a chance to share what they did".

I found this remark puzzling and illuminating at the same time. Apparently, for some people, meetings aren't about productivity but about satisfying psychological needs.


Sounds like you are part of the problem


Unlikely. I don't create meetings. I get invited to them. They are mostly unnecessary and have a net negative return of investment. I mean lucky if any of them have an agenda, minutes or an action and rarely does the facilitator actually have any conceptual knowledge of the subject. The meeting exists to service the facilitator's personal value and the naïve process model, not the business, the staff or the customers.


Why just dont attend them?

Im invited to like 10 of meetings each week

Nobody expects me to attend those where im not really important or need to discuss stuff


Because that means I have to justify not being a "team player" then. And I can't be bothered with that. I'm not creating conflict for the sake of it.


Just stop attending then and do actual work and raise it up with whoever you report to. You are just as guilty for blindly accepting this behavior and then fucking around. Either do your job or do something else.


Managers forget to ask themselves if a slack message / email could have done it instead of creating ANOTHER meeting.


And it is your job to tell them to go fuck themselves and stop wasting time


What problem?


If you can’t identify it, then you are definitely part of the problem


My retention from any audio is simply better if I’m doing something other than staring at the screen. On meetings that I’ve listened to while taking a walk, I can think back to specific things on my walk and recall exactly what was being discussed, sometimes months or years later. This holds true for doing housework, yardwork etc. There’s some spatial component of memory that wakes up while I do that. It might look like I’m not paying attention to the meeting at all, but I’m actually paying more attention and getting chores done. Win-win.


And you wonder why execs are pushing RTO so hard


That's mostly because all that empty office space looks bad and it's worth nothing now.


> Nothing matters so don't get too wrapped up in it or upset about it.

The "it is what it is" way of looking at things, I wish more people in this industry would embrace this.

It more probably won't get one to 600k yearly comps while working at FANGs, but at the same time is a lot more healthy for one's psyche in the medium to long term (and for the psyches of those close to that person, like family and very close friends).


Wow I’m sorry, it seems like you really had a bad experience.


I had good ones too. But they didn't pay as much.


Point 10: don't this makes you a target? Being part of the tribe might be painful, but getting thrown into the jungle alone is a hell of a lot worse.


It makes you a target if you position yourself as a faction of one that tries to influence decision making. That's a contest you're not going to win, 99% of the time.

If you just go with the flow, and are reasonably competent, changes in faction dynamics usually wash over you. You end up taking orders from someone else, every now and then, but if blame needs to be pinned on someone, there tend to be juicier targets.


Exactly that.


No, if you're competent and have good soft skills, you can survive a purge even if you did not take a side.

I was hired at my previous job by a departing manager who just lost his struggle against our new manager. I managed to finish my job, extend the solution to other teams (as mine went from 12 devs, a handful of Indian support, an Indian QA and PM, to a dev and two level2 support). It was probably my most painful job yet, I regressed, I didn't really 'finish' in the sense that it lacked documentation, good CD pipeline and minor tweaking to make it more efficient, and I hated the last months with my whole being. But politics didn't touch me.


> Point 4 - incompetent people. They are great.

I used to think this too but it rarely works that way in reality. Why? Because, as Roger Sterling put it, "Half the time this business comes down to 'I don't like this guy'".

Incompetent people survive because, for whatever reason, they're liked that decision makers, who may themselves be inccmpetent. Or it may be they're just similar in outlook, background or interests. It doesn't matter. Or they may be politically savvy enough to take credit for things that work and deflect blame when they don't.

I've seen teams spend a half on something, not launch anything, make a post about "we learned a lot" and get praised for thier "achievements".

> Point 5 - meetings are great if remote.

For many people, myself included, this is still incredibly distracting. You can't switch off entirely.


Money, Assignment, and Team — if any of these two are shitty then find a new job. But be honest with yourself.


For a software engineer, these are great points to follow if the goal is to be the incompetent person on the team in a few years...

Personally, while I find myself frequently in too many meetings or spending way too much time with email, or $DEITY, git rebasing to satisfy some power-hungry gatekeeper it is the little side projects that save my sanity. While many are the equivalent of throwing paint on a canvas, it is cathartic. So maybe the one good thing to come out of the google mgmt style that everyone seems to have copied (not the side project bit, all the other garbage) is the 20% time.


> Point 10 - The only soft skill is politics. Any sufficiently large organisation employs many politicians. The best way to deal with politicians is analyse the factions and stay neutral. No one can drag you to their side then.

Staying neutral does not only have the meaning "be diplomatic" or "don't give an opinion", but can also mean "treat all factions equally", which includes the case "treat all of the people who make political attempts with open hate". This way, also no one can drag you to their side. :-)


Definitely correct. I'm glad you extrapolated that point.


> The only soft skill is politics.

This statement is void of content - virtually a tautology.

All soft skills are politics. Politics is large in scope. You do a favor for your friend? That is politics of the "good" kind.


I think that one very important issue got left out: always be learning. The colleagues that ended up having to change careers were ones who refused to keep current with technology. Or who treated education like a vaccine: "get it" once and never again. "Learning how to learn" is probably the most important skill one learns in college, yet it is treated as a side issue (if at all). So many tech stacks have ended up on the "dustheap of history", yet we have to constantly learn new ones.


"It's nothing personal, it's just business"


Truly the love of money is the root of all evil...


Point 9 - Eventually you do become able to disconnect from your job. One day the fucks just run out. Embrace that early on and save yourself a lot of stress.

This is the most important life lesson anyone can learn, but I think it can only be learned by going through a flaming dumpster fire that burns all those fucks away.

You can't get that confidence and no fucks given attitude on your own, at least not for most people. You have to go through the shit and earn it.


How sure are you they are incompetent vs. just not giving any fucks/disconnected from the job and there to get paid (it's objective one after all!)

This seems a little inconsistent to me.

Is it really their fault if the industry says they are qualified and gives them a job when they are incompetent?


Well the people who don't give any fucks want to make their life easier so they do a minimally competent job and are usually supremely skilled avoiding pain. The disconnected people don't actually do any work at all. The incompetents cruise in, full of ego, poop everywhere and expect everyone else to clean it up and take responsibility for it. I don't mind that job because it's an open ended task. As for it being their fault, no it's not really, you're right. But management need butts on seats apparently so standards will be reduced until they are full.

Also many incompetent people, when faced with enough pain, will turn into competent people and eventually stop giving a fuck too.


So much truth in such a dense format. =)


Jaded and cynical as hell.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: