Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: I love programming but hate the industry. Can anyone relate?
453 points by DanUKs on July 18, 2022 | hide | past | favorite | 328 comments
I love building and working - always have, always will. I've been programming for nearly 10 years, 5 of those professionally but the industry is literally destroying my soul and it has recently become crippling.

I've been in all kinds of jobs, from start-ups to massive corporate companies. I'm forever building my own side projects as I love it, as well as love the idea of making my own living but as you all know, side hustles don't make money over night.

I'm currently in a great job. By great job I mean, the money is really good, there's room to grow and the opportunities are endless... Yet I can't bare it. I can't bare the devs that go out of their way to work weekends without being asked, I can't bare the endless meetings, constant micromanagement, bringing the stress home to my family.

I don't know where or who to turn to. Can anyone relate?




I highly recommend doing what I have done most of my career. Get a job at smaller to medium sized non-tech company. Every company, in any industry, has computers. They need you. You don't have to work with a bunch of tech or finance people. You can get a job working with chill people in some other industry with a better culture.

When it comes time to negotiate, negotiate HARD. And not just for money, but especially time. Ask for so much that you think they will laugh or be scared away. If they say no, you lose nothing. Eventually the right opportunity will appear. I didn't think anyone would say yes to a 4-day work week, but I kept asking. Eventually someone said yes.

The one worry I am having these days is how long this strategy will remain viable. As SaaS and low/no code solutions proliferate, it makes little sense for non-tech companies to build when they can buy. This is especially true as engineer compensation continues to rise. Engineers who congregate at SaaS companies can build better products than a handful out on their own who are building a solution for just one company. Increasingly, the only engineers that non-tech companies need are people to manage their data, people to glue the SaaS APIs together, and maybe some frontend people to put a custom interface on it.


> Get a job at smaller to medium sized non-tech company. Every company, in any industry, has computers. They need you.

I personally had the worst experience at such jobs. Small/medium sized non-tech companies don't value technology and don't understand its importance. If it works, you're invisible and just a cost center, if it doesn't you're to blame.

For work/life balance I've found big tech corps the best (not FAANG). I haven't worked on Saturday/Sunday in the last 10 years. I've seen people negotiate reduced hours/days successfully.


> Small/medium sized non-tech companies don't value technology and don't understand its importance.

I work closely with IT departments within such companies through ERP implementations/localizations and can coroborate this. In my experience 9/10 non-tech companies with their own IT departments(1+ person) don't value and especially don't understand what their IT department does.

On the other side, the people working within such departments are in my experience just terribly bad at sticking up for themselves, and explaining what needs to be explained. They don't draw lines where lines need to be drawn and they see themselves in the same way as the management/leadership does.


Counter-anecdote: I'm working at a non-tech company (we build the in-house technical software that everyone else in the company uses) and the experience has been great. We deliver real and immediate value, our clients are our colleagues and there's a great emphasis on UX, user testing and what not as a result.

Yes, there are loads of other problems, especially on the technical side, because tech isn't the company's strong point (our processes, especially revolving around the DB and deployment, are quite a mess) but the right things are in place that make me enjoy my job.


That might be the counter-anecdote that proves the rule.

In my own humble anecdotal experience, the less focused a company is on tech, the worse. Beyond that, if management is not from a software (or engineering) background, they will likely have no clue what to expect from programmers (because such hard things are simple and such simple things are hard) and the treatment will be . . . strange.


That gives you more freedom


I would love to get a job building internal tools that my company needs and uses but I haven't had any luck actually finding those kinds of jobs, so I always wind up building products.

Any advice on how to find those kinds of positions?


Connect with a recruiter (or five) and tell them that's what you want. They exist to act as a filter, and if you work with several from multiple companies/geographies in addition to doing your own searching, you'll eventually find what you're looking for.


In my experience, recruiters basically keep your name and skillset on record and don't take into account any of your other wants/needs.


You've worked with shitty recruiters, which is to be expected because most of them are.

Some of them are great and they're the ones worth keeping in touch with.


I'm honestly surprised how many don't even seem to take your skillset into consideration.

You don't have to know much about programming languages to know that if none of the words on my resume match the ones in the job listing, it's probably not a good match.

Maybe I need to be more clear that while I'm willing to learn new tech for a job, I probably don't want jobs where I have to learn an entire new stack just to get started.


Agreed -- and, even worse, in my experience they don't even know about more than 20% of the opportunities.


connecting with recruiters is a meme.

they're basically glorified salespeople. they would only reply to you if they thought there was quick money to be made.


I ended up in this current position because I was first interested in their field of work (geospatial work), and secondly skilled in programming. Even if I weren't a programmer I would probably work for them in some other capacity.

I don't feel qualified giving advice but personally I think I would look beyond what is commonly considered "tech". As another poster mentioned, everyone uses tech. When a company's work is sufficiently complex or special, chances are they may not rely on external vendors 100%.

Really out of my depth here but maybe some types of firms where I think there could be some interesting stuff internally:

- engineering - analytics - games - graphics/animations


Vfx industry


Also, if they have an existing solution that they're looking for someone to maintain/port/update- it's more likely to be some cobbled together spaghetti monster without any documentation.


Whether it's a mess or not depends entirely upon the skill of the people that built it and the constraints they were under while building.

There is no shortage of anecdata on HN and elsewhere of people being shocked at the poor quality of the code base at FAANG and other high level prestigious companies.


The world is different now. It's 2022 and the value of technology is far more clear to the average person.


but mostly not so much if the person has an MBA.

Sure, it's a gross generalization, but after 25+ years in this industry, I stand by this bigotry.


I wouldn't worry about no code software. They usually can only get you a quarter of the way. Then the requests start coming in and then the client wants their custom workflow in the app and no code can't do it. It usually doesn't take much for the client to realize they need something more custom. I work in the GIS industry and its a great mix of always learning something new but not only working with tech people.


Every time I hear about no code, I think about the code written by PROFESSIONALS that leads to list like Dan Luu's "Everything is broken": https://danluu.com/everything-is-broken/

If professional at top quality firms with the best tools can't write code that works, how is "no code" written by people that don't understand going to work better?


No-code is more likely to be written by people who are direct experts in the business domain, unlike the telephone game that is the development cycle in most software orgs.


I work with experts in the business domain, often C-Suite as a consultant. I've come to understand the domains almost as well as them for the companies I work with. While this knowledge is invaluable, and critical to getting the solution right in my experience they still would be completely lost when it comes to a no-code solution.

They generally only think happy path and have a really hard time understanding why you need to think about edge cases. They don't understand how to structure data or implement robust processes.

No code is great for very simple things. Fill out a form and send it in an email. But for more important and complex things we'll still need programmers. I'm not yet convinced that no-code is an amplifier for programmers. Beginners maybe, but more experienced developers are in my opinion far more likely to be productive in a text based environment.


"No-code" programs are still programs; each visual node or block or whatever is isomorphic to a construct in some programming language. Being code, it has to be maintained, especially as business needs shift, and "experts in the business domain" have other, better things to do with their time than maintain a bunch of computer programs. Thankfully, there are people in the company who specialize in maintaining computer programs -- software engineers. Which means that ultimately, software engineers will be responsible for all that no-code, and in addition to the usual telephone game they must contend with rat-wrestling some near-undebuggable node graph that lives only in a proprietary tool into doing what they want rather than using the tools they're familiar with and best at (ordinary textual code, version control, debuggers, etc.). And, Syndrome style, the company ends up throwing away the valuable time and effort of real software engineers so some mid-level manager can pretend to be one (and walk away when they get bored of that).


This never happens. It just gets written by different professionals. Best case, they are cheaper.


So basically no-code can be used as a foot in the door strategy? Like, hello I offer you some training for this great no-code tool and help you build exactly what you want, then I stick around to round the unavoidable rough edges?


The problem is if you started with no code, can you round the rough edges? One reason we use code instead of no code is so we can extend the product in any direction that is necessary, not just the few that were anticipated by a tool.


Many are impressed by the no-code claims and start that way only to get bitten after a few minor successes by said rough edge - then what else can you do than try to soften your current investment's thorns. And arguably anything can be addressed, given the right motivation/time/money.


My last few jobs have been replacing no-code setups. It certainly doesn't take teams long to figure out how bad the current offering suck. Sometimes only 3-4 integrations in.


There's a lot of people who have been doing the no code thing to build solutions for at least a decade now not knowing a lick of how to write code yet still building fantastic websites that get hacked almost every time because they don't appreciate how to maintain them. Do I need to name names?


I work at a private school and do a lot of data work that involves a substantial bit of programming. I CANNOT imagine a better work environment in terms of getting to enjoy the bits of tech that I like without all of the negative stuff that I see out there. The one thing I certainly lose out on is strong programming peers and people to learn deeply technical things from, but everything else is a positive: culture is excellent, I get to participate in all sorts of things that aren't programming related, have the freedom to tie technical itches that I want to scratch with work projects, etc. It's truly awesome, but something I would only recommend for someone who is looking at their job more wholistically and is ready to embrace some really major QoL gains with a very appreciable downside of probably developing less "technically" than you would at a traditional shop.


This is not inherently true - there is no hard and fast rule stating smaller companies are better to work at than larger companies by any metric.

I've worked at a broad spectrum of different sized firms with various titles ranging from analyst to engineer and have found no consistency between size of firm and work/life balance.

Ironically I've had a better work/life balance working for larger firms, but ultimately it comes down to your manager and how they manage the department.

One example - worked for a large investment bank building software and systems from scratch. Worked 6-7 days a week for up to 14 hours a day at times, but I honestly loved the work and was under no obligation to work that much. My boss and I had a great friendship outside of work and he would call my personal phone to remind me to stop working and do something else.

Any requested time-off was always approved by him, he would give me three weeks off for the month of December in addition to the PTO I had already taken during the course of the year.

Contrast this to a smaller (albeit one of the largest in their industry) company where we grinded every day 50-60 hours per week, PTO was a hard limit of 3 weeks per year and you were not permitted to take more than a week of PTO at a time and had to check-in every 5 days by e-mail. It was the worst job I've had in engineering. That said, there were brilliant folks working there but most left within a year. I sort of hope the company implodes but they're running away with success atm thanks in large part to the high quality engineers they hire (kudos to their hiring squad).


Exactly this. You have freedom, customers that are happy when you build something that saves them time. I'm not worried about low code that much because the real value is in translating business needs to software anyway. They won't care about how it works.. they just want it to work haha.


> Increasingly, the only engineers that non-tech companies need are people to manage their data, people to glue the SaaS APIs together, and maybe some frontend people to put a custom interface on it.

I presume you didn't see much industry yet. In reality, every existing company that is around for 10+ years have already tons of legacy apps or apps nearing that threshold, a lot of times tightly integrated in the rest of ecosystem. That isn't going away for some shiny new SAAS overnight, nor over year.

I've been hearing similar predictions since at least 2010 and they are just not true for much of the business.

Our bank (and in bank, IT is always just a cost center) has tons of external SAAS systems. Yet our internal systems grow, their integration grows and we are actually hiring more people to handle all this.


I see this too as an independent. As a company brings on more SAAS stuff it gets more complicated to manage, and integration to legacy will always exist, in fact often enough it can entrench the legacy even more as more and more integrations are piled on to each other.

The other thing is that things that were possibly not handled by technology before, are now handled by technology - so while they leverage it, it creates increasing demand for IT.

Sort of a shift from regular staff - purchasers, AP, etc and more IT staff.


I agree with the sentiment about small to medium non-tech companies. Any place where the code supports the product instead of IS the product, IMO, is a much more laid back place. (This is from my very limited experience)

>> The one worry I am having these days is how long this strategy will remain viable.

I just started reading "Ask Your Developer" by Jeff Lawson, CEO and co-founder of Twilio. He advocates that ALL companies should be building their own software, but only software that differentiates them from their competitors. They wouldn't build the next Twilio, NetSuite, Oracle, Salesforce, etc but software that enhances their brand, customer engagement, etc.


> Get a job at smaller to medium sized non-tech company.

From my own experience, I can recommend the following approach for someone with a database background: Look for successful small companies. They typically have some homemade information management solutions that do not scale, such as using Excel where a database would be the right thing, etc. Then tell the management how much better such a database system would be: how much time they could save, how much more consistant and reliable their data might become, how many interesting key figures they could extract from it, etc.

When you are hired, you are usually the only person responsible for the new database project. This gives you all kinds of organisational freedom and limits meetings to occasional consultations with the management.

> I didn't think anyone would say yes to a 4-day work week

Do not set a fixed time per day or week, but instead agree on an annual time budget that is slightly less than what you might want to work. Do not agree on fixed project deadlines, but instead create a detailed to-do list with priorities. Work above average at the beginning of the year until March. After that, you should mention from time to time: "I am already x weeks over the planned time budget". You will then usually not be pushed to work more and can take days or weeks off at will to get back in line with the planned time budget. In December, no one will usually complain if you charge the company more when you are still ahead of the planned time budget. And if they do, just take a longer Christmas holiday.


I don't think this is what OP wants.

He hates regular jobs. He wants to work on his inspiring projects, but doesn't know well how to monetize/market them.


Yes but if OP is building stuff on the side, this type of employment may give the time & headspace to do it, along with less stress.


I dissagree: he hates his job, that is what is producing the stress in the first place.

Otherwise he'd be happy keeping a job and having the weekends for his own projects.

But this is obviously not the case.


My impression is that he is comparing himself to others and worrying about other developers working weekends, possibly making him look bad if he does not do the same. The reality is that the “weekend warriors” at the company are doing more of the same type of work while he would be working on other tech of his own interests on weekends if desired, broadening his knowledge of other toolsets and methods, which will prove quite valuable in the long run.

Quit worrying about what other people are doing.


My solution to that problem was to switch fields. Now I have a rather comfortable job and plenty of free time. I get to work on whatever I want and only if I feel like it.

Some days I wonder what it would have been like if I had chosen to program professionally. I try to maintain my skills just in case.


That's easier said than done. I'm a data scientist/ML engineer rather than a software dev, but I don't think I have any skills that would give me remotely similar pay in any other field. At least not without going back to school. I could teach math or CS as an adjunct I guess? Build and sell computers? Enact crypto scams? Maybe I lack imagination ...


Regarding SaaS, I think programming departments within IT at non-tech companies will get smaller but not disappear. My employer uses around 8 different SaaS platforms that do not interoperate, and this requires a translation layer. We also have automated export/backup routines, and one large database that we use as our system of record.


> Get a job at smaller to medium sized non-tech company.

I do the first part: finding smaller to medium company. Smaller companies have better visibility, more work than people can finish so everyone gets to work on big whales. There's in general a better comradeship too. Revenue per employee in good smaller companies are usually larger than that in big companies, so people don't have to fight for resources as much.

I'm not sure about "non-tech" companies, though. IT in non-tech companies are usually cost center, so there's usually insufficient investment in tech workers in those companies. Some line of work can be hard to find in non-tech companies: distributed systems, large-scale database systems, high traffic systems that require deep optimizations on throughput, latency, and etc.


I run a small boutique outsource software development company, 11 developers, 2 managers. We have a 4-day work week, async communications, etc., etc. Pay is not great, but we compensate with sanity a lot.

It is possible, just keep looking! :)


Second this. I currently do some work for real-estate agents, who are a more interesting lot than I would have expected going in.


This is, in my opinion, great advice. I work at a non-profit cultural institution as sole IT admin and I have never been happier with my job. I couldn’t imagine going back to the startup world.


I think most people here can. That's why, when people have enough money to retire, they DO retire, and not continue working. Work for most people is trading time and physical and mental health for money. In our profession, we got it better than most, but the underlying principle is still the same.

Also, there are definitely better and worse companies. I'm currently in the best job of my life (well paying, fully remote, very little meetings, no micromanagement, using interesting and cutting edge technology), but it took me 15 years to get there. The catch is that such companies don't have to hire that often (because people don't tend to leave them), so most openings at the market in any given moment are from shit companies where average tenure is 18-24 months and half of the staff has low-grade depression. The job market is essentially a market for lemons, unfortunately.


I disagree about the retirement thing - I knew a lot of multi-millionaires from a very successful IPO who kept working for 5+ years afterwards. Even fully vested they had all their friends at work, they had a lot of influence, it was like a weird little social club for mostly dudes who didn't really have other hobbies outside of work.

I agree about the second half, though. My current job is just a terrible meat grinder, hiring and churning like crazy, and they just keep pouring gas on the fire by trying to grow headcount without retaining people they already have. Everyone is sick of interviewing and the solution is to hire more people so the new people can start interviewing and take some pressure off the old people.


> I knew a lot of multi-millionaires

Stop right there.

I don't think this contradicts the statement "I think most people here can [relate]"

Yes, a million $/€/£ isn't what it once was, and being a millionaire isn't in itself an indicator of exceptional riches, but the term "multi-millionaire" still certainly implies a level of wealth that sets one apart from the average (even among ycombinator-readers).

And I would imagine you're proportionally much less likely to be a fan of the industry inversely to the measure of the safety net / impetus-to-participate-in-the-rat-race-of-9-to-5 you possess.


> Yes, a million $/€/£ isn't what it once was

Stop right here. The parent comment was about multi-millionaires 5+ years ago.

Assuming everything hasn't been spent, riches becomes richer when you have capital.


What's relatable to me about your post as well as the ancestors posts is mostly about the comfort level allowing one to actually enjoy the industry.

For example, when I wasn't comfortable, I was always chasing the next language/framework so that I was marketable to someone else's company, and this was actually at the expense of the best solution for whatever company I was at. It was always like "lets make this new microservice, in this new language", "let's refactor this whole project but blame 100% of it on the prior developer and no other ulterior motive whatsoever", "what's the personal development budget again? sure, I'll tell you all about my goal of learning this new language you don't use". Most of the engineers are doing it. If you're drowning, save yourself first.

and now its fantasticaly liberating for me to simply not have to do that! It opens up other possibilities I couldn't understand, such as learning a super niche and new language even if the payoff wasn't clear, this allows me to contribute to projects that I would have ruled out and ironically become more marketable when the premium is highest. It allows me to dive deeper into more time-tested languages, and more.


I’ve been at my job for 14 months and I’m in the top 10 percentile for tenure. This includes C-suite. Lol


The retirement bit seems more like an American-centric thing. I've worked on various projects involving American and European companies, and to be honest the European workers seem much more content with their work-life.

I can only assume that it is because of stronger labor laws, more relaxed work/life balance, etc.

Some of my American (contractor) colleagues would work like dogs for 6 days a week, often from early in the morning to late in the night - depending on the status of the project. It was the first time I observed actual burnout in people, and how visibly it changes people and their personalities.

In any case - most of them, especially those over 40, would often discuss their big plans: Only work 5-10 more years, then retire, and live life.

If 50-60 hour weeks, all year round, is any good indicator of American SWE life - I can understand why devs. are daydreaming about retirement.


Yeah.. first shocking thing in my transnational company was that they only have 10 days of vacation vs our usual 30... and they envy us always for our 3week long vacations, while their is usually used up already with Christmas?

Then those sentences here in multiple posts about it being normal to put in extra weekend days, wtf?

Add to this they even completely had to return to office 5days a week..

..and this is for high skilled tech workers, how bad is it for the rest? While at the same time the world seems to even now discover 4day weeks... what's going on over there? It sounds like modern slavery and you may need more unions and less socialism-fear :D

> European workers seem much more content with their work-life

So content they actually are asked and want to be kept employed with halfed work hours or similar even after retirement age, because their experience brings value to juniors, not because of the money but they don't feel like retiring but want to be further useful... not for everyone sure.


I do think you might have gotten a rather skewed view of the situation in the US. In the ten years I've been working professionally I've never had to work weekends, for example, and I currently have 30 days of vacation (plus another eight or so sick days). I realize the amount of vacation I get is unusually high, but I think three or four weeks is normal.

That said, while I am reasonably well compensated I don't make enough to retire early. At my current trajectory I'm not sure I make enough to retire full stop ... so I might just be working until I die after all.


I guess it really depends on where you live.

I can retire around 50, where I now live in Scandinavia/Norway. But that comes down to me currently living in a low cost of living area - my house is basically worth 10% of those in major cities. But I also don't have to think about stuff like healthcare, which is a big plus when it's time to retire.


Can the average US tech worker take 3+ week long holidays every year (which are great for disconnecting), like clockwork? I highly doubt that, I've seen it in several American companies, where most of my US colleagues would basically only get what I'd call "bird droppings": 1-2-3-5 days here and there.

Even though on paper the average tech worker might have 20+ days off, if the culture is not there, peer pressure will kind of force you to compromise in other ways.


> The catch is that such companies don't have to hire that often

I'm in a similar position (not remote though) and yeah... my boss told me during my first year that the guy who was hired before me said he'd only stay 2-3 years, and that was 6 years ago. It's almost 10 years later and we're both here, along with the rest.

We're a small company though, so like you say, we've just hired a few programmers since I started.


Glad to hear there actually are people staying and more importantly: Places to stay at.


Similar experience - I went through 12 years of horrible employers before I found a good one. I was there for 8 years before moving on to something bigger and better, which I love even more.

Part of what I realized in that 12 years was that I by the time I was ready to bail I was so frustrated and hated life so much that anything _but_ this current position looked good, which opened the door to taking something that was equally as horrible. I've long advocated in starting at the bottom and working your way up, but there is a limit as to how much abuse a person can take. If the climate goes south you have to bail. The long term consequences of not are higher than the immediate annoying ones (relocating, etc.).


> That's why, when people have enough money to retire, they DO retire, and not continue working.

We also see devs just flat out going into new fields altogether.


That rarely is a solution, though. Most work in this world feels unpleasant, just by virtue of the environment and many factors ruining the experience. It's like that twist on the old adage: "Do what you love and you'll ruin your love of it." Soon as you start to monetize something you love, it becomes a hassle and a chore.


I disagree about having it the best healthwise. My back is killing me and I burned out multiple times from stress. I'm not comparing myself to a fireman or something like this, but I would change my job for something more outdoorsy anytime if it paid the same.


90% of outdoorsy jobs would ruin your back as well, just in a slightly different way and they'd pay a lot less which would mean your stress would come from money troubles instead of office politics and culture.


It seems to me that they wouldn't pay a lot less if they paid the same.


> A market for lemons

Somehow I just visualized the job market as analogous to the romantic dating pool for people past say 35. That complaint about all the good ones being taken, and those who get back into the scene have baggage by that point and several failures along the way. I've never conceived of the job market like that, puts a whole new spin on it when I conceptualize it as such.


Yes, this is a crucial insight that should be tattoo'd on every new grad's forehead! Less desirable jobs are overrepresented in the market because they have more turnover, by definition.

> The job market is essentially a market for lemons, unfortunately.


I really like the idea of looking at the job market as a market for lemons!


How did you find your job?


Practically by accident. I didn't know the job was so nice before I got into it. I might have helped my luck by moving to a niche area which is dominated by nerds (Scala, with a Haskel-like functional bend). So, if a company is allowing the use of such, frankly crazy, technology, then it means that it is treating its tech people seriously, or is ran itself by crazy tech nerds.


I feel exactly the same. Programming professionally for a decade sucked all the joy out of it.

My personal hypothesis is that we’re increasingly being treated like assembly line workers. We’re not paid to think but to implement the poorly thought out hare brained schemes from the higher ups who have no clue about programming. This externalizes all the cost of poor quality software onto the developers (unmaintainable code, constant outages…) while reaping the short term benefits for themselves (promotions, raises).


Yes, this was however not the case when I started in the mid-90's — the inmates ran the asylum and we liked it that way.

Throughout my career, as tech became big(ger) business, I watched as management, marketing, and design, took away our keys. Scrum, as an example, and all that followed seemed to be a way for upper management to rein in engineering, give management "numbers" that they could show their bosses, etc.


> Scrum, as an example, and all that followed seemed to be a way for upper management to rein in engineering, give management "numbers" that they could show their bosses, etc.

Scrum is my least favorite part of my job, by far. I feel like I'm being treated as a child who can't accurately estimate project time, difficulty, or dependencies.


Yes, I can’t believe adults allow themselves to be treated this way.


> Yes, this was however not the case when I started in the mid-90's — the inmates ran the asylum and we liked it that way.

Yes. It used to be that tech companies built tech products and were run by engineers, that's what tech meant. It was glorious and I loved every second.

Now "tech" companies aren't really, they are actually in the advertising business or other forms of data gathering, movies, shopping, etc. All of which uses tech but isn't tech. So very boring.

And as you say then PMs took over from engineering and engineering has been reduced to a fast-food order cook with little to no agency, just bolt the right ingredients (or AWS components) together and give status reports every day. That's not creative engineering anymore.


> "My personal hypothesis is that we’re increasingly being treated like assembly line workers."

Developers don't like hearing this but the vast majority of us _are_ effectively assembly line workers. We do little to no actual engineering, instead we plumb together pre-packaged framework, libraries, and software. We are treated as fungible because that sort of worker is intrinsically fungible; skill is involved in software development but not enough to elevate it from being a trade to being a profession. A symptom of this is the not infrequent HN posts complaining that "Nobody actually uses CS education in the real world"; assembly line workers don't need a degree to do their job either.


By this logic, who isn’t an “assembly line worker”? I’ve had a few careers, hobbies and view into various different fields due to extended family. I’ve been an architect, an artist (pencil drawings mostly), and pursued medicine for a while. Software development uses more brain power than all of them combined (in my experience). Is everything other than phds “assembly line work” in your estimation?


Somebody has to design the things the assembly line worker is assembling. Building the frameworks and libraries that I mentioned earlier, not to mention the database engine, cloud services platforms, language compilers/interpreters, the operating systems, and so forth all do require very deep engineering expertise, though not necessarily a Ph.D.


I completely agree. Growing up, my dad owned a construction company and forced me to work for him throughout my teens. He had me moving rocks, digging holes, schlepping wood around, etc. It was the gruntiest of grunt work.

I started programming for Intel in the early 90s and loved being free from the menial labor, doing creative work, and being treated like an important, respected, and integral part of the company.

Fast forward 30 years, and programming feels like the same grunty ditch-work I was doing as a teen for the reasons you mentioned. I hate it.


I guess. I'm okay being part of an assembly line though. I do my part. I go home/sign off when my work is done. I don't have to worry about building the entire car. I'm good at putting the right door on. Stress free. Pays well. ~40 a week or less and I get plenty of PTO for when I don't feel like putting doors on.

What is wrong with that?


I think you're making a higher-level point than the big company-little company argument above, and it's the same point that is constantly reiterated about hiring: you quit bad BOSSES, not jobs. It's the bosses that make the environment and the work bad. If your management treats programmers like assembly-line workers, then that's the kind of programmer they'll get. At least, that's the kind of PROGRAMMING that they'll get, while certain people coast and look for something else. It's just bad management. You'd think that the CIO's and the CTO's of companies could possibly justify their titles by making sure this kind of environment didn't pervade in their companies, but, alas, that's not actually the sort of thing corporate officers care about.


>We’re not paid to think but to implement the poorly thought out hare brained schemes from the higher ups who have no clue about programming.

Dunno, when I see loose ends in specification, I report them to analysts with proposals how it should work to be useful for business logic. Well, maybe I am paid to think. What's the profit from doing a shitty job and then suffer from damage you inflicted on yourself?


Switch into ecommerce or marketing. Product companies suck.

Product companies: selling your software as a product means you're always going to feel like you're on an assembly line. Except you're not the assembly line worker, you're the assembly line.

Ecommerce and marketing companies: you build software that enables the company to sell some product. You're not the assembly line, you're not even working on the assembly line. You're designing the assembly line and building the machines. You're the engineer.

Whatever you do, always avoid companies that treat engineering like an IT cost center. The work culture is always dogshit and you're the first to go in a downturn. Look for somewhere that is "engineering first" or "developer driven" (e.g. somewhere a dev is high up on the org chart.)


Interesting. By joining an e-commerce or marketing company, doesn’t it also mean that software is seen as a cost center since it’s not directly the product being sold?


This is why I added the caveat. It's a culture question mostly but figuring it out is obvious when you think a bit about the kind of work you're doing. If your work is customer facing, there is a good chance you're selling a product. If its for internal use, there is a good chance you're selling something else and instead you're raw business value add, i.e. clear business benefit, given a budget with expected and clear returns. Left alone to make the magic happen.

Or to put it another way, if you're adding core value to the business proposition or enabling their core business you're probably not going to be seen as a cost center. If you're R&D or innovation focused, probably not a cost center.

For example, working on a Wordpress site for a newspaper, probably cost center unless they're extremely tech focused. NYT comes to mind, but they straddle the line between saas product and not. They're selling the subscription service which puts you in product camp but they also have engineering functions that work on enabling their writers produce content. The content is the thing being sold, not your software so its probably some mixed feels over there.

I should probably extend the original "ecommerce or marketing" to any more traditionally non tech business model that has built itself as a tech company. For example:

Working on a website for an architecture firm = cost center.

Working on cad plugins for an architecture firm to use internally = probably not.

And again, caveats, even for ecommerce you could be considered a cost center if the business is more like a traditional brick and mortar but they've "started selling online".


There's a difference between Programming and Software Development and I think it's important to recognise that difference when looking at your career.

Programming is one small aspect of software development. It's an absolutely essential part, and it's the part you probably enjoy the most.

But despite being an essential core part, it's also a part which only occupies maybe 20% of your time.

Some software developers declare that to be a problem, and fight tooth and nail to change their company culture with the idea that if they were just left to program for most of their time they'd be better software developers.

That's actually the wrong conclusion, and a very self-limiting approach.

You aren't employed to just program. You're employed to develop software, and that other 80% is actually where you can make a huge difference to your company and add value over your fellow software developers.

If you start taking pride in the state updates, the endless meetings and approach that part of your work with the same pride you would approach coding then you may find some of the stress disappears as instead of always fighting the system you flourish within it.

For example you might look down upon a programmer who seemingly never takes pride in writing good code, just copy-pasting from stackoverflow with the minimum of understanding, just hacking away until something compiles.

If that's the energy you bring to these "endless meetings" then you risk that being how the rest of the business sees you from outside the software department.

Unpaid overtime and working weekends isn't really a thing in my culture, so I can't relate there. That legitimately sounds frustrating, but be sure to set your own boundaries and stick to them.

One approach to dealing with what you see as problematic behaviour from colleagues is instead of getting frustrated with them, consider what effect it has on you. If you're not actually badly affected by their overworking then try to relax and recognise they have a problem, but that it's their problem, not yours.


Hey, I have a counterpoint to one of your comments wrt attitude concerning meetings: if I sit in a Teams call with 50 other people, mic muted, camera off, listening to some person I haven't seen before talk about some business development I haven't heard of before, it's not going to matter what attitude I have. No-one will notice "what energy I bring" into that meeting. None of it matters. It's just one more day of boring corporate dystopia where nothing matters.


I hear you, company wide status meetings can seem pointless.

I've worked at places where there were large "company update meetings" for the whole company. They were only once a month but still frustrating to lose an afternoon to listen to every detail about who the sales team pitched to this month. Seemingly we had to have every detail of their job explained but the entire software development team had 5 minutes at most to say what they'd done.

It was a source of friction between the development team and the management team especially during crunch times when we really couldn't afford to be losing an afternoon for the whole team.

We managed to persuade our boss to let us remote in to the meetings from our desks instead, so we could listen along while getting on with work.

With covid normalising remote work, large meetings can be both easier to deal with due to not having to have physical presence but also more of a strain as it's harder to get meaningful output from them.

Can you skip that meeting?

If attendance is mandatory and recorded can you make objections to being made to attend?

If not, and if the meeting is genuinely a waste of your time, can you just mute the meeting / take off your headphones and get on with your work?

If you have retrospectives, then be sure to call out that 50 person meeting as a waste of developer time and don't be scared to keep hammering the point that it's taking away a large amount of resource. Be sure if (when) there is pushback from higher ups that you listen to why they think it's important that you attend.

If it's genuinely taking up a whole day on a regular basis then there may be a culture issue. In general culture problems are worth an attempt at fighting, but be aware that most of the time the culture won't change and you might find you're no longer considered a good culture fit and nudged out if you fight too hard.

All companies are different, and it's worth spending a while job hopping to better understand the company landscape and where you best fit. Don't listen to people who say that job hopping looks bad on a CV, especially early on in a career. That's a myth peddled by people who grew up in a different time and who are largely in charge and don't want people to job hop because it costs them money to recruit.


> company wide status meetings can seem pointless.

Not just seem, they are. But if you can turn off your mic and video, you can play videogames or bake a cake in the background. Everyone wins: Some feckless manager feels important and you do something you actually enjoy.


yah - our weekly 'all hands' seems to basically be: The Marketing Team marketing the marketing team to the rest of the company.

It's frustrating; and worse, we've had our CEO several times send group messages to scold people for having their camera off, or worse (my sin), camera on, but obviously doing work and not paying attention. It's pretty gross.


If the meetings are useful, that's fine, but I have a hard time taking pride in a long series of meetings to decide the contents of a 15-page document describing the design for feature that could be like 200LOC but now must be 2000LOC and involve integration between multiple teams' services because the promo criteria says "collaboration."


That sounds like a Big Company problem.

There are hundreds of thousands of software development jobs in companies where the whole software development department are fewer than 10 people.

If you absolutely abhor integrating software between teams then they can be a breath of fresh air.

That said, you will very likely find other frustrations, from their (lack of) tooling, greater impact of colleagues, more idiosyncratic approaches to development, lack of onboarding / documentation.

But if you're keen then they can be great places to work. You can make a real stamp on how they work and feel like more of your time is delivery.

But you will have to juggle different concerns. You might turn up and find they don't have a bug tracker or source control. Or worse, they do have source control but their entire knowledge of git is "git commit -m 'Checking in end of day'" (and "delete; git clone" for when Things Go Wrong).


Then tell people. Make it better. You can improve process in the same way that you can identify broken components of a codebase, take ownership of them, and improve them in measurable ways.


In my opinion, it takes a damn good meeting to beat no meeting at all, and most meetings don’t even approach darn good.

Most meetings I attend are held out of habit more than need.


> If you start taking pride in the state updates, the endless meetings and approach that part of your work with the same pride you would approach coding then you may find some of the stress disappears as instead of always fighting the system you flourish within it.

Taking pride in useless make-work turns you into another useless make-worker, making life suck more for anyone who is still actually trying to get anything done.

It’s good advice if you want to suck the soul out of everything you do and become a cog that works 20% of the time, producing less than 20% of what you’re capable of, but getting along really well with management drones holding endless meetings.

Responsibility for actually shipping something will shift to the next guy who hasn’t yet embraced the futility of trying to get anything done.

He’ll be the one blamed for not shipping and for not being a source of joy in the endless meetings.


I have to say, any tech organization that has its engineers only coding 20% of the time is doing it wrong. Yes there's much more to software development than pure coding, but 20% would suggest serious organizational structure and process issues.


No, he's right and you're probably wrong. Depending on what you count as coding.

Stuff you need to do:

1. Write docs.

2. Update docs.

3. Run test suites.

4. Check test suite reports.

5. Fix tests or code if they fail.

6. Design work for code.

7. Requirements gathering/refinement.

8. Estimating work.

9. Investigating production issues.

10. Fixing production issues.

11. Deploying to various environments.

12. Investigating deployment failures.

13. Teaching and mentoring less experienced team mates.

14. Reading up on both tech you use and tech that you plan to use.

15. Syncing with other teams about new features or products you're working on.

16. Design work for test suites.

...

Most of those things are not "coding".


In my 2+ decades at Apple, I think I enjoyed working on frameworks more than I enjoyed working on applications for many of the reasons you mention.

Your "customer" for a framework is a fellow dev. That can make all the difference in the world. Design and marketing generally take a back seat.


I've spent a good part of my career doing tooling for developers and customer service. The amount of "customers" is a lot smaller and they tend to be technically proficient and know what they want and need.


Eh. It can become a bad job too. When a tooling team has fulfilled its basic mission and things are good enough it can turn into a really bad job because it turns into a scrum death-march for features of questionable value and never ending bug fixes to fill time.


Your argument is quite usual in this sort of discussion and it mostly comes from dev managers or TLs who are almost gone to the 'other side'.

I (everyone?) agree that software development is not only programming/writing code. It also system design, documentation, finding solutions, troubleshooting, load testing and so on. And yes, it is also gathering and understanding requirements and collaborating with other teams. But if your average developer only has 20% of time for coding and everything else goes to meetings, you are doing something terribly wrong. Simply because the time of the developers is used inefficiently, unless you are doing something very simple (from technical point of view) and cut costs on other roles, so devs are doing everything. Usually it means that there is no proper Product/Project management and technical leadership. You can build a lot better and faster if your developers have time to focus on development itself without going to constant meetings to understand this sentence in requirements. Even during my 'worst' (from dev time perspective) years as a TL I spent ~40-50% of my time to management/communication work. It allowed team of 5 devs to be almost distraction free (less than 3 meetings per week per dev), because I worked as proxy for them.

In my experience adding good technical PM between devs and other managers can greatly increase devs efficiency and more importantly - their happiness


Yes there is a huge difference.

I'm not sure what OP had in mind when asking the question, but at least for me it can be rephrased as:

"I LOVE Software Development/Engineering but HATE the industry. Can anyone relate?"

I really like the challenge of everything regarding SWE...users, specifications, documentation, planning, working with teams, testing, et.c.

But in most projects I have worked in something else has crept in:

  - No access to customers/product owners to discuss solutions
  - Everything being treated as manufacturing line
  - Fixed long term plans even though conditions have changes
  - Developers taking blame for changed conditions/wrong features


I've been in the industry 20+ years and have had my share of ups and downs. Some advice for what it's worth. Focus on what you enjoy doing and avoid what stresses you out. The industry is wide enough that you can likely find a job doing what you like in an environment you like. For me that meant being a little less ambitious in terms of income but working in a laid back environment with people I really enjoy and doing back end development. I will never do UI again and I only work on languages I find enjoyable - mainly Java & Python.

I've been a coder, manager, director, CTO and one thing I have learned the hard way is "You are responsible for your own happiness".

Yes this industry is full of fakes and scoundrels and clueless biz people but don't let them steal the joy you have in creating software


20+ years as well and this is spot on. I've also been up and down the ladder including coding, management, director, etc. I eventually decided I liked the technical path much more, and that freedom was a very important value for me, so I took the jump to be independent 10+ years ago.

I originally started with multiple contracts doing various support and project work, these days i'm almost exclusively project work that i'm interested in. This puts me back in full control of my time, and I can (and do) take periods of time off.

You may have to slog it out at the beginning of your career, depending on your luck, but you'll develop "career capital" and can leverage it to do what you enjoy the most.


How do I get started doing being an independent ? Recently I have tried using Upwork, but am constantly being underbid in a race to the bottom.


You have to do the opposite and increase your prices. Everything you do needs to be about value, not price. The market is bimodal and the first mode is a race to the bottom, so you need to find the companies that care about results more than price.


Same level of experience here (lots of gigs up and down the ladder). This is excellent advice.


For me it’s the insane hazing ritual of the tech interview process that makes me want to leave the industry.

I’m going through it again now, and honestly am pretty miserable. It has a large negative impact on the rest of my life and my mental health. When I was younger it was manageable, but the fact you have to do this even mid or late career every few years is insane to me.

Wish I had gone into literally any other career now, despite it being my passion early on in life.


> the insane hazing ritual of the tech interview process

That's it, exactly. I was a hiring manager for 25 years, and never gave a single coding test, during that time. I never made any technical errors. The only bad hires were folks that couldn't adapt to the work environment. Some of them were quite technically proficient.

Some of my most gratifying hires, were ones that came in, with little tech proficiency or experience. I kept people for a long time, and helped them to develop their careers. It was not always a a bad thing, when they left. If my company wasn't willing to do what it took, to keep them, then I sincerely wished them luck.

In my rather truncated modern interview cycle (I gave up, after a few months), I came to understand that the interview process is, quite literally, a hazing ritual. Companies don't want "outside the box" thinking. They want people that won't rock the boat, and will do as they are told. I also personally believe that leetcode tests are "young pass filters." Us "olds" are quite unpopular, and it has nothing at all to do with how much we cost. In my entire career, I never made as much as many kids get, at their first job (yet, I still have more to show for it, than many).

When I would ask interviewers why they refused to look at my portfolio, and, instead relied exclusively on leetcode tests, they would hem and haw, but eventually, it would boil down to "Well, I got hazed, so you are, too."

After running into this a few times, I realized the fox ain't worth the chase.


I did nope out of this process last time I was looking, when I moved out of the US and my kids were young - because I just didn't have the time for it. I took a huge pay cut, but I accepted family > career. Since then I managed to almost triple my income through accomplishments and networking, but I still make less than a FAANG senior engineer.

Then I had a close friend, who I encouraged to get into software, land an L5 role at a FAANG with barely 1 year of actual engineering experience. The guy is a complete slacker, and never accomplished much at all until I actively pushed him to try rebooting his career.

He's smart though, and single with no family, so he just grinded leetcode and system design and now he makes 350k/year.

Anyways, that spurred me back into the meat grinder, so here I am. Multiple, large accomplishments under my belt, significant engineering experience. But none of it matters. Not that I expect anyone to have sympathy for me - it's just the way our industry is.


Anecdotally, you have far more experience than me therefore probably already know this, but the skills you're describing sound suited to a digital transformation (buzzword in many old hat businesses transitioning to being 'tech companies')/technical management role as opposed to an out and out engineer at this point. Depends what you want as your day to day.


I have sympathy (for what that's worth).

I wish you well.

I am very grateful to have had the means to "nope out."

I used to say "My dream is to, one day, work for free."

I'm living the dream ... :/


I couldn't agree more. I recently discontinued the process with a company over the leetcode garbage.

Those things test one thing: how many of those puzzles have you memorized the solution to.

I'm also an "old" and suspect you're right about the young-pass-filter.


Yep it's bullshit. Just don't imagine that the grass is any greener elsewhere. Most professions suck. Work/life balance for doctors is something they read about, lawyers have the highest suicide rates in the country, accountants grind soul crushing busy work, bankers call uppers "tie straighteners" to get them through the day, civil/mechanical engineering chews up the "weak" and cripples the "strong". Academia is a cess pit. Trades get romanticised (as "honest work"), but is its own version of hell (hours, physical toll, social hierarchy, etc etc).

A very few people get lucky and don't deal with this. But from what I've seen, the rule is that work is mostly hell, everywhere.


Good point. I'm sometimes upset that I have to dig through a legacy database to figure out how to make my new web app work with it. I sometimes have to commit programming crimes to work around a legacy stored procedures that the company is unwilling to touch at that point. However, my job is relatively relaxed. My boss doesn't require any core hours from me and I go to the office every few weeks to touch base and attend meetings.

I then talk to friends who are doctors and pharmacists.....and I wouldn't be able to do their jobs. The pharmacist works 12 hours days. Mostly standing. She cannot leave for lunch. She rarely has a moment to text or do anything else at work. She under intense pressure to show up everyday. If she misses like 3 days due to any emergency she is going to get fired.

All I can say fuck that. Software development has its demons but most devs can make six figures changing the color of a button or creating relatively simple CRUD apps once they understand modern frameworks and databases.


I'm there too, but trying to take a different mindset.

For one, the requirements are utterly clear so you CAN systematically prepare and do well even if you lack the exact years of experience they're asking for.

Two, the payoff is massive if you're in the US. I mean.. if you land at a FANGetc, you can literally put your feet up, buy a house anywhere, send all your kids to Harvard, and retire before your parents ever dreamed.

Three, prepare slowly over time. I would do one or two leet code questions a month. Pickup a trick here and there. When I hating my job now, I do a few per week. Now I've accrued most of the knowledge about these questions and interviews are a lot easier


The fact the interview process is largely unsupported by any empirical evidence speaks volumes really, and this has been known since the 1970s or so. Instead of listening, hiring, HR, recruiters generally clamped down, and newcomers believe this is in fact the best solution because "rationally, it makes sense!". The few who come to their senses struggle to change the common narrative.


The way I see it, it's just an IQ test in disguise, which do have empirical evidence they predict your future performance at intellectual work.


The tech part maybe, and the tech part is only a small part of the entire interview. On top of that, since IQ tests exist, you don't need a bad proxy to test IQ.

Leetcode-style tech interview segments aside, that still leaves the myriad of other things happening during the hiring process which either do nothing, or function as poor proxies for other things. Personality testing through mundane questions, for example. If we're following this train of thought, since certain personality tests do have support, interviewers shouldn't be using their gut instinct to begin with.


> On top of that, since IQ tests exist, you don't need a bad proxy to test IQ.

Yes you do. Because administering an IQ test is forbidden

https://en.wikipedia.org/wiki/Griggs_v._Duke_Power_Co.


There is empirical evidence for that? Where? Where are the 170+ IQ employees churning out magnificent solution after magnificent solution, rather than being stuck in the same rut as everyone else?


170+ IQs are extremely rare. That's 4.67 standard deviations above the mean. That should be about 0.0002% of people, or 14,000 people in the entire world, and that has to be shared with every other occupation that exists.


You focused entirely on an operational detail of my question and not at all on what I was actually asking: Why is it assumed higher IQ is connected to higher performance.

The reason I am asking this is because it is not at all my experience - if anything, higher IQ correlates strongly with dysfunction.


It's not though, it's a test of how hard you've studied for algo problems. Relevant for some programming jobs, but not for most.


IQ's whole point is it was supposed to predict how fast kids are gonna learn at school. I would argue testing for people's ability to learn irrelevant stuff in their limited free time is going to rate people's ability to learn which is the very definition of an IQ test (at least what it was meant to be).


Testing people's ability to learn irrelevant stuff in their free time mostly tests how much free time they have and whether or not they're willing to sacrifice it to learn irrelevant stuff.


Yes. I don’t even apply for jobs. Just freelance using personal contacts.


I once saw a documentary about commercial Scuba diving. This is for the guys who work on oil rigs and such. At one point the instructor asks the students, "How much will you get paid for diving in the first year?" They throw out a bunch of numbers and then he draws "0" on the blackboard and follows up with "You will get paid nothing for diving. You will get paid for what you do while diving." That means welding or whatever.

Programming is a tool. Computers are tools. You're not getting paid to program. You're getting paid to solve some problem for your employer by programming.

So I can related. I think we all can. But all that other stuff that you hate doing is really what you're getting paid for. Some jobs will have a lot of it. Ohters will have less. But you'll never get away from it except for possibly the most junior jobs where you're literally given tasks to complete by other engineers.

For me, I enjoy understanding and improving systems. YMMV.

Perhaps you'd enjoy something lower-level more? Fixing Linux kernel bugs is by its nature going to be more technical than, say, developing an ad revenue and reporting system. But even more technical projects will get large enough that you have to deal with other people.


That's an excellent point - but I'd emphasize that it's the problem that's solved with the help of programming that the customer cares about, not the software package that's built by the programmer. Likewise, the end goal of the customer of the SCUBA welder is not the welding; it's the utility they gain from the pipeline or the structure or whatever the SCUBA welder has assembled. The customer doesn't really care about the welds themselves.

As an automation integrator, I frequently have to push to the forefront of my mind that my customer's focus is not on the machine that I'm designing for them. Yes, I'm going to spend 600 hours on the intricacies of hazard mitigation and operating modes and IO and quality control and timing, with a deadline looming large to ship the machine - it is easy when you're that deep to think of the machine as the end goal. But for my customers, the focus is on the chairs or door handles or valves or whatever they're making that come out of the machine. Graceful fault handling, alternate paths through the sequencer, purge and single-cycle modes, calibration wizards, or whatever other features I can build in might be elegant and might be powerful - but the customer doesn't care about the machine itself. They especially don't care about the machine when logic I've written gets in the way of making products come out the other end!


The diving in your story is more like working on a computer than like programming itself. Otherwise the claim would be that we’re paid 0 to program which is easily disproven.

I think many people are overthinking this and coming up with a problem solver myth when in reality programming is an independent professional skill which has been and continues to be paid for its intrinsic value.

The stuff around programming - talking to customers, writing documentation, discussing business requirements, meeting of all sorts would be basically worthless without the actual code.


When I was in university, I had a coworker at the book store who casually mentioned that he used Linux on his home computer. I asked if he was in computer science or engineering.

Neither. He loved computers, loved programming, but when he took the classes and imagined the jobs, he found it revolting. So he switched majors, and software became his hobby instead.

He seemed very happy with the decision.


> He seemed very happy with the decision.

I've monetized every hobby I have ever had any passion for, and despite having buyers remorse it took me until my mid 30s to realize to keep hobbies a thing to do when you are not earning a living. It's hard to envision my life not having taken those decisions and challenges, but I'm pretty sullen at the idea of just how heart-wrenching it is to have seen the inner machinations of something that brought me so much joy because this time 'I won't work a day in my Life.'

I think it's only with maturity that one realizes that you'd rather build a career on something you're curious about, but not passionate about because the latter tends to be suffocated to death when you see how 'the sausage is made' and you realize that most Lifers have simply lost any passion in that field in order to stay in it: money is/can be a motivator, but it cannot be the only driver of why you wake up because existential dread soon kicks in every time you get a respite from having to do it.

I left Startup-World/Fintech when I completed my objectives in order go back to culinary for my last tour with a path towards AI and ML when I felt 'I had enough,' so after COVID it accelerated things a bit faster but I realized that I'm just curious enough about ML to keep me engaged that if I keep learning at my own pace I think it will be a sound transition-- I'm doing my CS undegrad in AI/ML and I'll be attending a conference with Dr. Ng next month as he has been very vocal about how his views on the Industry which resonates with me and likely most of you ITT.


The real good ones never even enter the industry. So much foresight, inspirational..


Do you remember what major he switched to?


Absolutely yes.

I've been developing professionally for almost 30 years. I still love making software and I'm good at it.

When I started in this industry, being able to do it at all was the barrier to entry. The processes were light; "here's what we need it to do, go figure it out." Responsibility (and impact) were both high.

Somewhere along the line that changed. Teams blew up to be dozens of people. Process fads weighed things down with tons of meetings, silly ceremonies and other things that actively slow down productive developers.

Add to the mix the hell that is tech interviewing now. If you're interviewing for anyone that will pay well, you're going to be subjected to "leetcode" style puzzles under pressure and stress scrutiny. If that's not how you best think and solve problems, tough!

So yeah...I can absolutely relate. I still love building software and I hate the industry.

The only escape is entrepreneurship or possibly consulting, both of which I am actively looking to do.


Yeah, I entered the industry a decade after you but I share the same views. Back then teams were so much smaller and management actually took care of the bureaucracy.

I remember at one time I ended up as the sole developer at a university, serving about 30k students and >500 faculty. We needed to migrate to another software due to end of support in the previous, which would go down in a matter of weeks. I had to code an interim replacement by myself in the meantime. It ended up being simple looking, but it did only what was needed, and I was able to finish. Teachers added grades, students could see them and enroll on courses. No social features, notifications, no gamification, no material design, looked as simple as it could. Worked fine for 2 years until the permanent system was installed (and students had to suffer because the multi-million system that costed thousands of billable hours to setup was riddled with bugs).

Contrast with today: at my previous company we had 500 devs to make an e commerce website whose homepage “couldn’t” be changed for two years. With scrum we supposedly have “self managed teams” but there was so much micromanagement. Sometimes I felt as if I had 20 different bosses, controlling my time and my tasks: POs, PMs, designers, management, upper management, support. There was no time to dogfood the app, to do maintenance, to study, to have ideas.

Unlike most people I don’t really blame Scrum or Agile. The people making it suck are the ones not following it: designers have a “dual track” where they plan months ahead of work (aka waterfall). POs and PMs absolutely hate iterative work, so we gotta refine during PR reviews. Management is too worried about catering to them to listen to us. At least we make money to make terrible software.

Like a lot of people recommended above I also joined a smaller company where things are saner than anything else.


All the best man. I hope you get the freedom you deserve one day.


I spent much of the first 15 years of my career at companies that would rather ship crappy software tomorrow than good software next week. The stress level was high because we were always in a rush, and management always was always pushing to get more out of every developer, like wringing the last drop of juice from an orange before they threw it out.

We often worked overtime so we could write the code we were assigned to write. We couldn't do that during office hours because office hours were for meetings, answering email, and fixing bugs in the crappy code we pushed out last week. Because last week's code was counted as "done," fixing it didn't count as "progress." We weren't getting anywhere unless we produced something new, and that only happened after hours.

A few years ago, I started working at a university in the US, where things move much more slowly. I started having the time to properly architect software, to rewrite chunks of code when necessary, and to write much more thorough tests so I'd have fewer surprises when we got to production. The saner pace and the ability to be thorough made the work enjoyable again.

The academic world in general tends to move more slowly and cautiously than the start-up world, and that academic mindset creeps into even the non-academic parts of the university. The go-slow-and-be-right attitude is good for designing and building complex systems.

That said, universities are a mixed bag. Get into the wrong department, and you might find yourself maintaining crappy software that no for-profit enterprise would ever run. You might find yourself in even more meetings, with more politics, about things that matter even less.

But if you manage to find a decent project with a decent manager, the university can give you back your work-life balance, along with some of your sanity. You'll even find a little extra energy to put into your side projects, because the job hasn't wrung you dry.


I also love programming, but I hate the industry in another way. The work culture is bad, but it’s not the most pain. My own issue with it is overwhelming complexity to do simplest things, so that everyone lives in a bubble of buzzwords, technologies and is so far from business that it hurts. When I have a talk with a coworker, it’s usually about how X is different from Y and how yet another TLA is better than yet another. Nobody speaks business, nobody cares about actual user or business experience. No developer I know would go to the next office and ask in detail how their solution could be changed to be more useful, helping a non-tech person to understand limits and possibilities of what could be done. It’s always just a trash talk about arcane patterns and how they are good at creating entry-level worthless bullshit in it, instead of directing their mind power on actual problems. We now have entire professions(!) which were earlier called install.exe and drag-n-drop. People still discuss how a button, an input field or an input completion should work, and reimplement that every week. People invent new ways of doing the same thing, proudly call them Hammer 14.0, and it still sucks so they plan to release Hammer 15.0 next spring.

Sometimes I want to say fuck it all and program enterprise systems in gambas or love2d, cause that seems to be much more adequate choice of a platform.


> I can't bare the devs that go out of their way to work weekends without being asked, I can't bare the endless meetings, constant micromanagement, bringing the stress home to my family.

Have you considered just changing jobs? Not all places work weekend/have tons of meetings/micromanage. Maybe take time to assess what you like and dislike about your job and try to find a less stressful environment that fits your expectations.

This is especially easy if you have some experience in the industry. As for:

> bringing the stress home to my family.

You can work on yourself to help with this. As my girlfriend puts it "at the end of the day it's just a bunch of computers, no-one is dying". You can still have a sense of ownership while understanding that everything is not actually urgent or important.


> As my girlfriend puts it "at the end of the day it's just a bunch of computers, no-one is dying".

+1


This is what I tell myself every time I get a page in the middle of the night.

Unfortunately I still have to get out of bed :(


But, sadly, many jobs and especially bosses in America portray things as if failure means that someone does in fact "die"...and that metaphorical death often is your job.


Very, very good points here. You're right, the stress part is 100% a personal and perspective issue. I do try to convince myself that "no-one is dying" but the sad reality is that if I don't constantly meet deadliness, prove myself, and go above and beyond for the company (over-time and over-work); as "over the top" as it may sound, it's my kids that "die" when I lose my job and cannot provide.


If you have to work on weekends to meet deadlines, have you considered that the problem is not about yourself but about the deadline?


It's not necessarily "working weekends" that's the issue. You can have a job that requires you to work 2 hours per day and still work 6-7 days a week.

It's more the constant backlog of stuff that needed to be done yesterday, more than a deadline for a specific feature(s).

I have zero control over that, which inevitably leads to the stress of work spilling into my personal life, weekends etc.

I'll feel the need to do some work at 10pm on a Sunday night every other week, just to keep things afloat.


"I'll feel the need to do some work at 10pm on a Sunday night every other week, just to keep things afloat." sounds like a workplace from hell. GTFO ! I've never, in over 25 yrs now as a software developer, had to do that. BTW, public sector may be the way to go. Interesting work, less performance management / competitive cr*p, easier to make real friends at work, mission can be more valuable than some rich person trying to get even richer..etc. Public sector tends to pay less headline salary, right now, but can give career longevity due to less stress and more time to learn stuff properly.


You have control, it's managements problem to descope or hire more staff if they have more tasks than people.


Sometimes people die, depending on what you work on.


I had(have) the same problem but I'm successfully resolving it.

In the last 10 days I made more progress than 10 years combined before.

Why? Because I realized that the problem is inside of my mind. What is causing me to not finish/doubt my own projects?

There are many reasons, each unique to each persons's mind.

One must brutaly focus in on the specific reasons and resolve them.

The solution that is working for me: sit in front of PC, close my eyes, focus on the problem.

I am NOT talking about regular meditation. You have people who mediate hours for their entire life and get nowhere.

What DOES work is to bring and hold the problem in your mind and just let it "hover" there. Eventualy you will start getting random thoughts/ideas which will show you details about this thing and your reactions to it that you have never seen before.

Note that this can take anywhere from 5 to 30 minutes. But very often I get many insights in a single 30 minutes session, many more than just one. But it's a bit random.

Basicaly it has to be active meditation.

I hold the problem in my mind and after 5, 15, 30...minuts solutions start popping in.

Listening to Jiddu Krishnamurti is what "pushed me over the edge" to realize that sitting down alone in a quite room and examine your mind is the only way forward.

Your problems will be specific to you.

In short, you need to figure out what is preventing you from monetizing and finishing your side projects.

This thing that is preventing you is in your mind.

You are uncertain. Uncertanty creates a "choice" in your mind.

You will then pick A over B, but because the uncertanty will still be there you will forever cycle between A and B, never commiting to each.

Address the source of the uncertanty. When you do that, the choice will dissapear and never bother you again.

The problem with this advice is that I cannot give you specific advice since you will have to figure out what is causing resistance in your mind against monetizing/commiting to your side projects.


Great comment. Thank you.

I'm currently reading "Manifest. 7 steps to living your best life". It's pretty much exactly what you've described. It sounds like you're going through an amazing transformation. Embrace it and change your life. They don't come round often.

Give that book a read when you get the chance :)


Will do, thank you.

It took me many years to finaly come to the deep realization that sitting down by yourself and brutaly examining my own problems that the mind generates is the only way forward.

The amount of resistance I felt to this was enourmous.

I escaped by trying to browse internet, read books etc... for way too many years.

Listening to 20hours+ of Krishnamurti's talk was what finally made me realize that there really is no other way that to examine what is inside of yourself.

And you will not find solutions to your "mind problems" on the internet or in books, only in your own mind, which is done by sitting alone, quitly and observing the mind precisely.


Have a pointer to any of these talks? I always found him to be impossible to grok, saying really ambiguous things to the point of being devoid of practical meaning.

But what you cite that you got out of him is a mindset that I got out of years of therapy and reading self-help books - that is, those methods utterly failed and so now if it doesn't come from my own mind (with a few exceptions), I can't take the advice.


Yes he is "annoying" most of the time aka wasting your time. Basicaly it's 95% fluff since he talks about world peace etc... a lot.

But you find 5% of practical stuff in his talks. I probably listened to 20+hours of his talks. I put it on my phone and go for a walk in the city and fast forward it.

So as far as pointers to his talk...not really...but at some point you realize that:

1) It actuall works

2) That repeated exposure to ideas is required until the human comes to the realization that only self-examination can work.

Once you understand that you can somewhat easily "suffer" through Kirshnamurti, fast forward it and ignore 90% but then listen and re-listen to certain parts.

No magic sauce I'm afraid...

You might also wish to read Kapil Gupta's Siddha Performance website.


One word of warning though, this was a mistake that derailed me over and over again: don't get lost in self-help books.

The solution is in your mind, not in the books.

Very few books/people tell you that.

They sell you habits, methods of planning etc... but did you notice that somehow that never ends up working?

Sitting alone and examining the mind was the only thing that worked for me.

The gains were exponential. Well, compared to all other self-book, where the gains were zero, I guess I can say that the gains are infinite compared to any self-help book.


This is very speciffic advice, something I was struggling to put together clearly but felt it deep inside for years. Thanks for leaving this comment here!


In true Krishnamurti fashion, you should seek your own methods. Ironically, that may be relying on other people’s methods, but willingly surrendering is different from will-less surrendering.


True. The question becomes: is there the most optimal way of achieving this?

If other's people methods are optimal, then you should take their techniques.

At the same time you ask yourself "Were they doing something where/inneficient? Am I spinning in circles?"


Yes, welcome to mid-career. You realize that you aren't paid to program, you're paid to solve business problems. Those are best solved ASAP, where code is tool (which you see as a scalpel, they see as a blunt object), you are a laborer (not an artisan), and ultimately answer to bean counters.

I survive by trying to get the highest pay possible, giving just over the minimum so as not to appear lazy, and playing musical (job) chairs until I find a company with good/bad tradeoffs that don't irk me.

If it didn't pay "retire-early" money, I would be doing something else.


One of the things that it's easy to forget as more senior developer is that we're always setting examples for our more junior colleagues, whether we intend to or not.

Now that I'm a more senior developer I try to go out of my way to make these good examples. Not just in how I code and how I review their code, but in how handle my work life balance.

I always make sure I take my holiday throughout the year, so they realize that taking two weeks off is fine.

While I start work early in the morning, I always finish early as well. Showing them that they don't need to work crazy hours, and also giving some of those with less confidence implied permission to leave for the day.

While I'm not their line manager, and so can't stop others from trying to micromanage them, I have certainly interrupted people trying to do so and picked apart their attempts (micromanagers very rarely understand the full repercussions of what they're telling someone to do).


I feel this, I eventually quit and became a bicycle mechanic. Now I don't hate my life anymore, but there's a decent chance I'm going to lose my house and can't afford rent anywhere in my city anymore, so tradeoffs, I guess. I'd love a job in the industry that didn't make me feel physically ill often, but I've never found it. Something that actually treats its employees well (not "free snacks" well, but "with respect", well). I've become fairly convinced that the only way to do this is through meaningful employee ownership (not a giant public company only accountable to large share holders, but a co-op or similar) or unionization.


I've had great success finding places that treat employees well that are neither employee owned or unionized. In my experience you just have to find relatively small places to work (less than 20 people) with the right leadership (which is often just one or two people). My experience with smaller places too is they are less likely to leetcode you and care much more about having a conversation with you about your work and making sure you're a good culture fit.

The downside is that these smaller places are going to pay a LOT less than more mainstream employers. But you'll still be making six figures as a dev.


Well I can sympathize for sure. I love programming but really discouraged by things I continue to encounter in the industry. And for the first time during the height of covid I basically "gave up" -- as in, I had a remote job where I only did the bare minimum to not get fired. This lasted for about half a year before I got tired of it and went to another job where I was more engaged again. I will say that working like this -- appearing at morning stand up, hemming and hawing over slowly implemented tickets, and then going back to playing video games and doing occasional PR reviews, getting more engaged only when shit looked close to hitting the fan -- took it's own toll and was maybe only marginally less stressful to me than trying hard.

I have no answer. Maybe my situation isn't even the same as OPs, since I tend to overwork myself, get disillusioned by feeling that others are not pulling their weight, and then I get burnt out and it sounds like OP is in a situation where they are surrounded by jerks like me. But I can relate to the struggle of work stress, and trying to prevent it from spilling over into personal life.


You can program outside of "the industry".

I work at a science institution that sits between NASA and the .edu sphere of influence. While we also have our own frustrations, it's generally wonderful and I'm a cog in a machine that is enriching the human experience. Are we a little behind on all the spiffy trends? Yep, but we're also not under constant pressure to adopt/adapt to spiffy trends. Do we make a little less than market? Yep, but it's still plenty and the benefits, including retirement and vacation, are amazing.

Of course startups are going to grind you down - you're tasked with rapidly deploying and optimizing someone's business baby and they're on the hook for copious, tenuous funding. Check out USAJobs or similar and find something with a human pace and good benefits.


> While we also have our own frustrations, it's generally wonderful and I'm a cog in a machine that is enriching the human experience. Are we a little behind on all the spiffy trends? Yep, but we're also not under constant pressure to adopt/adapt to spiffy trends. Do we make a little less than market? Yep, but it's still plenty and the benefits, including retirement and vacation, are amazing.

At this point in my life (48), this is almost exactly the kind of job that i want! Good for you on your job!


Every job I've seen like that wants a domain expert who can program, not a programmer who may know a bit about the domain.


Startup/hustle culture ruined the programming industry. I think it doesn't even need elaboration. Everything that made programming fun and magical is gone and personal side projects are the only way you can experience that again.


+1 for suggesting personal side projects.

If you want creative freedom and fulfillment from some work, don't link it to a "salary".


What I hate about the industry is politics, short-term thinking, selfishness, dogmatism and other forms of irrationality.

If you care about your craft, spend time learning and cultivating your skills and want to do the right thing, once you try to put things into practice you'll find a bunch of people along the way that hate programming and don't care about quality.

You will also find people that will try hard to game the system to inflate their productivity metrics at the expense of ruining long term collective productivity by incurring massive tech debt. They make the coding experience draining.

You'll know who they are when you try to talk with them about technology and they'll start avoiding you and cluster around people that talk about sports, cars, travel, wine or some other thing that has nothing to do with tech.

If all those people suddenly decided to go do something else the industry would be so much better.


Yea I hate watching all the political shit. Like people taking screen shots of themselves in virtual meetings smiling and laughing to like message to higher ups "how good they work together" when really they are huge assholes lol.


I don't think this is "the industry" i.e. Software, it is "industry". The exact same stuff exists in all kinds of companies.


"""Programming as a profession is only moderately interesting. It can be a good job, but you could make about the same money and be happier running a fast food joint. You’re much better off using code as your secret weapon in another profession.

People who can code in the world of technology companies are a dime a dozen and get no respect. People who can code in biology, medicine, government, sociology, physics, history, and mathematics are respected and can do amazing things to advance those disciplines."""

Zed Shaw. Advice from an Old Programmer. Final chapter of "Learn Python the Hard Way"


In my job, we are supposed to completely finish our sprint tasks, no exceptions. This has led to the team being ultra conservative in picking up tasks, to the point that our productivity is down the drain. But if you see our numbers, they’re fantastic, as we finish everything we pick up in a sprint!

Artificial numbers. Grand sounding words like spike, velocity, scrum, bandwidth etc which don’t mean anything to anyone, other than middle management. Using 10 different fancy tools/products when a 100 line script would do the same thing. Endless meetings (I can’t get a 4 hour block to concentrate on a task). These are the things that suck the joy out of actually creating something, to help users do their jobs better.

Above all else, dudes (mostly dudes) that work 14 hour days without being asked, without being requested. I remember doing that myself as a young man. Now that I am old and a bit less stupid, I can see how this is the most negative thing in a team.

I don’t know what the solution is. Maybe freelancing? I dunno, it has its own problems. Maybe ask in interviews how much time is spent on meetings, before accepting an offer? That might not work either, interviewers aren’t obligated to be honest.


Yeah. I work at a (really competent, adult managed) startup but I can’t stop #%^*ing on Silicon Valley startup culture.

I also feel like I’m daring them to fire me given I literally cannot be reached outside 9-5. They don’t even have my correct phone number on file. And I have to bite my tongue when thinking about some coworkers who basically work for less money given they put in 60+ hours.

It’s weird. I believe, almost romantically, in my current company. They’re the real deal. But I’m still so sour and jaded because of my last company.


I guess it's a really foolish way to think but whenever I think about those who suck up to their bosses and work weekends for no reward, I just think about the story of the CEO that pulls up in the expensive car. He tells his employee, "if you keep working hard, I'll be able to buy another one."


No, not really.

Like any other industry, there are good employers and bad employers; there are comfortable working environments and stressful ones; there are good teams and bad teams. If anything, compared with every other industry that I've experience in or friends working in, software generally seems to be way better in almost every aspect.

YMMV, but I suspect your question might be more "would anyone prefer to work on their own ideas rather than someone else's" which… yeah, I think most people would.


The good news is you can use programming in lots of other jobs, although it's not often called that. Even a lot of data science and business intelligence type work isn't in "the industry" (in the sense of being tech companies - as I assume we're referring to on HN). But you've got industrial automation, the use of IoT devices in conservation, the military, point of sale systems, etc. Programming is all over the place and there are surely even opportunities for you to take programming to 'non-industry' places if you're feeling entrepreneurial too. Indeed, having domain knowledge and then adding the benefits of programming to it is probably a better route to success than being a programmer first and foremost..


I can definitely relate to all of this. In recent history I've tried very hard during interview processes to find shops that have "programmer-first" cultures. In interviews I am clear and direct about my distaste of micromanagement and bureaucracy. I've noticed that about 10%-20% of folks I talk with instantly relate and tell me about how their company has few meetings and high levels of autonomy. I pass on the rest.

I've found companies that tend to focus on lower level products (compilers, graphics, systems programming, etc) tend to have a much better chance of letting engineers do what they do best and staying out of the way. In some sense the work I do kind of chose me, because that's where I've gravitated.


I have been coding professionally for over 25 years, and I hate the industry with a passion. I hate the culture of it, the obsession with couching naked capitalist greed in semi-spiritual terms, the inflation of the trivial into the profound ("we're not just building customer relations PaaS, we're changing the way humans fundamentally interact with the universe around them"), I hate the entitlement ("ugh, why are all these poors and their sleeping bags in my way when I try to e-scooter around the city I moved to six months ago?").

I used to be lead dev and CTO of startups, and now I do part-time IT work for a law firm and spend the rest of my time working on my own projects, which are code and music and writing and some inventing and puttering. It's nerve-wracking because I make jack shit and my wife and I live in poverty in England, where my Yankee paycheck doesn't go very far.

But when I apply for better gigs and get hit with the code quizzes and the "culture fit" nonsense and the bullshit, I just can't, man. I'm 44 years old, I don't care about having a free IPA fridge in the office and SCRUM and sprints and learning an entirely new framework du jour every six weeks and all that shit. I work for money, period. The stuff I really care about (like climate issues), nobody is gonna hire me to do. And I've spent enough time trying to turn my own projects into actual businesses that I know I'd rather gnaw my own arm off than have to put up with another meeting with some VC asshole where they want to gut everything that's interesting about my ideas and shoehorn in NFTs or some other stupid goddamn thing.

You gotta decide whether you value freedom or financial stability. Some people find both, but I think it's rare. Most people just decide what they can live with. Me, I'm still trying to figure it out as the first gray shows up in my beard.

Vaya con Dios, man. I don't have any answers for you, but at least know you're not alone.


"The stuff I really care about (like climate issues), nobody is gonna hire me to do. " - writing from the UK where its been 37C today and is expected 40C tomorrow, I'd argue, yes people will pay you, and please do this! ;). Seems to me now, anything to do with using less fuel / energy, making heat pumps more efficient, carbon capture etc, is something people will increasingly pay for. The price of heating gas with the war in Ukraine is making alternative energy look much more worthwhile so other tech can be profitable. As for freedom or financial stability, I've achieved a reasonable compromise with a little frugality. Ys I have to work for someone else, however its public sector with a decent mission and nice colleagues. Sure I could get more money elsewhere but not worth it. I'd argue in our industry most people can achieve this eventually (so long as not living in very high house price area of course)


I relate 100%. Everyone at my current job is sick of the soul-crushing work as a software developer that people just accept as part of the job. The side projects are so fun, we just want to do that for our real job.

We call it "Write the Right Code", and I'll shamelessly drop the post since I'm curious if this is the same pain you feel. https://cosmonic.com/blog/write_the_right_code/.

Maybe software engineering can be better if more people speak up to the culture that many engineers just get used to.


It's not universal. I've had experiences that resonated with what you're talking about; and then I've had completely different ones, without any meetings or micromanagement.

Find a better company to work for.


Been in the software development industry for almost 19 years now. The last five years have been pretty much what you describe. Yes, I can certainly relate. I've been largely driven by passion, but passion is no longer here. And I'm bad at discipline, which should be my new driver now, I guess. :-)


I'm in the same boat. Part of the problem for me is that it seems we're solving the same problems year after year, but with a slightly different software stack each time. Or we've built a Rube Goldberg machine of SaaS tools that would of been a single script 10 years ago.

It has me thinking of a career change to a related field like UX or going back to school to become an architect or urban planner.


> I love building and working - always have, always will. ... but the industry is literally destroying my soul and it has recently become crippling.

Then alea iacta est, you have thrown your dice, and must destroy it before it destroys you. You must "take back tech", by building and working against all that you see around you. Welcome to the exhilarating challenge of being a real hacker and entrepreneur.


Keep at it. We'll get through it and have freedom one day.

One day.


Great dev environments in companies are rare. If you currently can't afford switching to work on your own thing, focus on finding those outliers. It can take some time and luck, but it's not impossible.


> it's not impossible

I agree. I work at a place where:

> devs [going] out of their way to work weekends without being asked, [...] the endless meetings, constant micromanagement, bringing the stress home to my family.

Is the complete opposite of what I'm experiencing. I left a place where meetings and micromanagement (through agile / scrum-like work management) were becoming an issue, but it was still okay.

You can find places where employee well-being is an actual concern.

Good luck.


As a survivor of more than 10 mergers/acquisitions at various stages of my career, I definitely think the industry is self-destructing. The embracing of the trend of the week, e.g., microservices, the Cloud, off shoring, outsourcing, insourcing, onshoring, PMP org structures, Agile org structures, open floor plans, remote work, etc., often with little planning or analysis has sapped a lot of the energy and appeal from the industry. When I started back in the 80s, the barriers to entry were higher and the teams smaller and more focused. As I neared retirement, a couple of years ago, "anyone" could be a developer, team sizes were substantially larger and less productive, with greater specificity in roles. Costs were higher, throughput lower. When I stopped working, I was very happy that I wasn't a young guy trying to make a successful career out of the industry today, given its current state.


Agree, well summarized. I believe this is all due to the phenomenon of "bullshit jobs" (https://en.wikipedia.org/wiki/Bullshit_Jobs) which has taken a lot of traction since the off-shoring of most of the real jobs to China from the early 90's.


> Yet I can't bare it. I can't bare the devs that go out of their way to work weekends without being asked

Wait... You love programming but you can't stand those that code during the week-ends?


There’s a difference between programming for fun on personal projects etc in your own time vs. doing work without compensation. Working overtime for free is not only allowing your employer to steal from you, but sets unreasonable expectations on all of your colleagues, too.


I work at a place where if you don't work overtime you are considered garbage. Everyone will beat up on you any chance they can because they are bitter. Meanwhile, not everyone has that luxury. Single parents, caregivers, etc. Just because you write code doesn't mean you live a kushy life...


Plus I've observed that people who consistently do a lot of overtime for prolonged periods of time rarely seem stop and think, and are fairly consistently some of the worst programmers I've had to work with. They're not necessarily stupid or lacking in skill – often the opposite actually, they just never stop long enough for their brain to actually process things, so questions like "hey, is this actually a good idea?" or "how can this be done better?" just don't seem to percolate; your brain just needs some "downtime" for that.


LOL. Correct. This guy who works weekends without even being asked to, is genuinely a genius in that area but he just churns out complete sh*t. Mindlessly building.


I haven't faced this, although I could expect it at the worst places.

If I do really high quality work, am positive and proactive towards the companies goals, contribute and encourage others, I have never been looked down on for working reasonable hours and not working weekends.

I think some employees think they can be fulfilled as a spectator in their companies journey rather than someone who believes in it and helps it. At my current employer, it isn't necessarily the subject I would choose as my most favourite thing but I believe in what they are doing to help people with online data collection and I am an active part in that journey so I can feel fulfilled.


Sounds stupid if it is expected.

For me, I need motivation and flow. Meetings often disturb my flow and if I’m not in the mood I‘ll work less hours between Monday to Friday and add a few hours on the weekend.

If there are production issues there also might be benefits of solving or working around a bug as soon as possible vs fixing and cleaning up later.

But doing consistently more than 40 hours per week will lead to burnout. Don’t do this. Work smarter, not harder.


Then unionize and/or quit. The company is not going change otherwise.


overheard at an airport bar

manager1> my team is so strong they go without sleep to make the deadlines

manager2> hmm

manager1> my team is so dedicated they even go without meals, working straight through lunch and dinner!

manager2> hmm

manager1> can you top that?

manager2> my team are such professionals that when they're tired they sleep and when they're hungry they eat.

manager1> satori


there isn't much difference if your company allows you to open source some of the results of your work under your own name afterward.


I belive his point is that he finds it bizzare how they give their lives to a company instead of their own interests.


Throughout my 20s, I did a lot of extra hours on work projects. I'd have been doing programming anyway (it's what I love and did a lot of) and here were some ready-made problems that I could work on, that expanded my skills, and that mattered to someone.

It literally was my interest, not much different than when my kids would come to me asking me to make up a long division problem for them to work out when they were first learning multiplication and division.


It's more about setting the bar / expectation.

Coding is far from the only field I've seen this. Some guys figure they'll go above and beyond to impress the boss, or just because they want to make more money.

A good boss will obviously let their employees know what is expected - but some bosses will start to ask other "Hey, John goes the extra mile all the time. Why can't you too?"

And it sort of becomes a race to the bottom.


I think the problem here is working for your employer over weekend.

Not hobby programming or sideprojects.


So much of the standard software in the industry is beyond frustrating and needlessly complex. At this point I look for companies that don't have some sort of elastic stack monstrosity.


I've been fighting a lot of these feelings myself. Several good friends have pointed out that it sounds like textbook burn out and I should take a sabbatical somehow to recharge.

Corporate America doesn't believe in multi-month sabbaticals. But we're several years into a minor apocalypse and almost everyone is burnt out. Something will likely have to give. It will probably be us the laborers that break first because Corporate America says they care about labor but aren't incentivized/regulated to actually care., Smart companies should be thinking about sabbatical culture if they want to survive that because if they don't plan for it they are just as likely that a lot of their laborers break at the same time. I don't know if there are any smart companies left in America.


I find this extremely relatable actually. So much so I wrote two articles on it. You're not alone OP - micromanagement, pointless requirements that have been (sometimes deliberately) misinterpreted from user requests, treating developers as worthless replacable tools, constant time pressure, big Agile ™, is honestly killing the industry.

https://www.lloydatkinson.net/posts/2022/my-thoughts-on-what...

https://www.lloydatkinson.net/posts/2022/one-teams-eight-poi...


Yes I can absolutely relate, way too much. I've already written numerous comments about this and don't care to compose another, but yes. I love programming with a passion still after doing it for over 30 years. But doing it for a living started to kill me after about 5 years in the industry. Since then I've had good years and bad, but I'm mostly retired now and even though I'm continually tempted by offers I would have given anything for in the past, I just can't even. Reasons in descending order of awfulness: little agency, little respect, process, organization dysfunction, boring work, team dysfunction, people in general.


I think many people in this industry can relate. Development is stressful and rife with collaboration and management issues in many organizations. Sometimes, it's possible to knock down the small things one-by-one until you have a more pleasant working environment and home life. But in other cases, the best course of action may be to become a farmer like in this Reddit post: https://www.reddit.com/r/ProgrammerHumor/comments/ub1rmi/cor...


You bear a burden, you bare your soul.

I would love the good old days back too. I think now it's only vestiges left in some niche shops. Definitely not faang of course, small shops and that doesn't mean startups. Problem is those kinds of solid productive non-parasite business model, staff treated like humans shops nowadays just get sold by the retiring owner to one of the suck holes.

Maybe it will come back around after a while, after enough people suffer long enough for some of them to become the new bosses here & there and try to run their shops with at least a little dignity.


Look for a consulting gig. The work may or may not be great, but for the most part you aren’t sucked into the drama, your sort of like a tech plumber.

And if you are sucked into the drama, you’re billing $250/hr for it!


I can absolutely understand that. Even though I like my job as a software engineer, I can always think of better things. I would rather have more time for family and friends, for hobbies (even if they overlap with my job) or for sports and health care.

But what I find worst is that the job will probably never get along with my own ideals or principles. I often have to solve problems at work in a way that I myself don't agree with. But it's not about what I want or think, but what the team and the employer wants. That's what annoys me the most.


One thing about what you wrote jumped out at me. You say "I love building and working - always have, always will." and "I'm forever building my own side projects as I love it." But then later you say "I can't bare the devs that go out of their way to work weekends without being asked." When I work weekends without being asked it's usually because I WANT to. It's because I'm having fun. So that strikes me as an odd thing to say as a part of why you can't bear it.

Now I am keenly aware that there are plenty of workplaces where this isn't the case. Where employees get their life force sucked out by perpetually unreasonable deadlines, expectations of long hours, etc. I've been in those situations. They're miserable. You say you're in a great job. But then you go on to describe something pretty unpleasant. My recommendation would be to engage in a job search for a better environment while you're securely employed at this place. Take your time. Don't be in a rush. You might want to consider branching out to a completely different segment of the industry. Some domains in the software world (things like games and finance are the big ones that come to mind) have a well known reputation for demanding long hours and sucking the life out of you. You should probably make a conscious effort to avoid those. When you're interviewing, ask questions specifically with the goal of figuring out what kind of a culture they have. Use indirect questions that don't make it obvious what kind of answers you're looking for. It's a sellers' market right now. Good engineers are hard to find. It's a good time to be looking.

You might also want to filter the places you interview according to the type of atmosphere you're looking for. I've been in fun healthy workplaces that were pretty high pressure. This could be because it's a small startup company with limited runway that has to deliver or die. This could also be because you're doing things that are inherently high consequence such as, say, a space shuttle launch or ER doctor (to use a non-software example). I've also been in fun healthy workplaces that were pretty low pressure. Research-y work is ofter like this in my experience and it can be at both large and small companies.

There are people who love their jobs and have healthy work environments in both high pressure and low pressure workplaces. So I'd recommend thinking carefully about what kind of an environment you're looking for before you start interviewing and use those characteristics to choose where you're going to look.


The outcome of working weekends on my own project is the chance that I may actually build something that can feed my children, give them a good life, give us freedom etc.

The outcome of me working weekends for a company I work for is potentially having a pat on the back from my project manager and to have my name on a powerpoint at the end of the a sprint if I'm lucky.

The CEO doesn't even know your name. Know-your-worth.


yeah how dare he not approve of you working weekends for free, the nerve


I thought I was the only one.

My issue with the industry is dealing with sensitive people who get upset at everything. I don't know what it is about tech that attracts such people even though programming was supposed to be fun.

Unfortunately, the best thing to do is to not work at tech companies and use your skills to serve the non-tech industry. For example, I enjoyed working as a contractor in the medical industry because building things to help nurses and doctors work more efficiently is way more fun than building useless apps to steal people's money.


Happened to me. I'm very pragmatic but I'm more idealistic than pragmatic. I was well payed while on the industry but wasn't happy with what I did. I basically did thing for which I hated the industry and developed products with abuses which I used to fight against.

I left my job and now I work as a teacher. I doesn't pay well, it is much more work, I had to leave the city I was living in but I now feel I'm not doing anything I think is unethical and I have much more autonomy to decide what I do.


If it was pleasant, they wouldn't have to pay you.

The whole definition of a job is "Series of unpleasant tasks that regardless needs doing, and therefore come with a monetary compensation".


I can relate.

Been programming since 1983.

I spent most of my career at one company (just shy of 27 years). When I interviewed for that company (in 1990), the industry was still a fairly "fun" place. We were sought-after, as coders, and the boundaries of everything were still fairly "fuzzy."

You could still have a good grasp of almost every type of coding, back then, as the field was still fairly small.

The Web had not yet become a "thing," and the money was still in the products software supported, as opposed to the software, itself (My job was writing device drivers and APIs for expensive image capture devices).

When I left that company, in 2017, the industry had changed -drastically.

For one thing, I was treated quite shabbily, simply because of my age. That was unexpected. I was used to being around engineers and scientists, much older than I was, and learning from them (and fighting with them). Age wasn't ever an issue. Most of the older folks I worked with were an immensely positive influence.

For another, vast amounts of money had poured in, and the place was a shark tank. I won't go into particulars, but it is ... darwinian ... these days. We have an environment, where no one plans to be around, to actually support the software they write, so there is little incentive to do good, long-lasting, maintainable, work.

TL;DR, coding was fun. It no longer is, if you are trying to make a living from it.

I was basically forced into retirement. I didn't want to, but it was made quite clear; quite quickly, that I am no longer welcome in the industry.

So I took my toys, and went home. I set up a small corporation to buy my toys, and found people that needed software, wanted to do good, and couldn't afford to pay for it.

I've been "working" harder than ever, and absolutely loving it. After I got over my butthurt, I realized that it was actually for the best.

I really do pity people that are starting out, now. The industry is a fairly dark, savage, place, these days. When I started, it was still very much a playland.


Sure, I can relate. I work as a freelance developer and the closer I'm embedded with agile managed teams the more I wonder how anyone would do this for years and years.

Now my customers are mostly smallish till medium sized companies who need help to update their tech stack gradually. Which usually means inventing a lot of clue system and integration with working processes. It's tinkering. I work between two and five hours a day from home and have one meeting a week.


10 Years in, I'm depleted. I no longer trust either business people nor other developers. I no longer trust corporations and governments. I'm actually quite disgusted with what the internet has become, how people interact with it, how children interact with and so on. We need a clean slate and keep it clean - else we might soon become the most regulated industry, which is really something we want to avoid.


open a socket, bind to port 79 instead of 80, and go for it :)


> endless meetings, constant micromanagement

there are companies where this part is not true. We have one daily meeting. Engineers have < 3 other meetings the rest of the week. It's usually zero outside of the daily.

The daily standup is more a way to stay "real people" to each other instead of a picture in slack. We could easily do the standup async, but talking to each other each day is good for keeping solid relationships.


Daily standup are one of the stupidest things the industry has come up with in the last 20 years. It's all part of the scrum BS which is nothing but structured/obsessive micromanagement.

We have 2 weekly meetings back to back. Biz/Dev then Dev/Dev, both combined usually total an hour. When we need to call someone, we call someone.


Eh I don't know, I think daily standup is pretty great actually. It seems like by far the most time effective way I've ever seen to resolve blocking and resourcing issues. Trying to do that asynchronously wastes way more time IMO. It's especially good that it's at a known time so you can plan around it.I think teams just get this really wrong and waste a ton of time. A good standup should take like 5 minutes. I'll happily admit that it works a lot worse in a remote setting because of the overhead of a call, but I still think it's much better than trying to solve those problems async.

Also Scrum isn't about obsessive micromanagement at all. It's just an interface for engineering that the rest of the org can work with. Everyone else sees engineering as black box. Without a highly structured estimation and planning system eng is incredibly difficult to work with. Introducing some inefficiency within engineering to introduce clarity at the boundary is absolutely worth it for an org. Again, I think teams fuck scrum up pretty often, and like any process it can be, and often is, weaponized (eg: trying to use story points to measure velocity)


Yes, can relate.

Working in a field where people can get frustrated very easily is though. Specially if you are in the receiving end.

I worked with a lot of nice colleagues that makes the job more enjoyable, try to focus on that and ignore all the negativity that come from the loud ones.

Try to grow with the pain to the point it goes away, for example, for me it was soul crushing discussing something infrastructure related and having someone who doesn't know much about it suggesting serverless, using low effort arguments, instead of paying attention to the subject of the discussion. After some time I realized that people can be jerk for the sake of it and in the corporate world you are gonna find many of these. So for me what worked is to think that people are passionate about different things and it's your job to keep yours alive and ignore people who likes to create havoc.

Then do your job and when is time to go, simply go. I know it sucks to have a pile of code to review because people without social life are working during the weekend, but you will have to establish some boundaries to protect your time.


I tend to really like working startups.

Massive corporations are usually very risk-averse, and you end up just mostly being a ticket-monkey. The problems you're tending to solve are mostly pretty boring - unless you're a rock-star and they've hired you to do cutting edge R&D (and in this case, can be the coolest and most rewarding gig out there).

But at startups, there's always a shit ton of interesting problems to solve (usually too many by too few people - depending on the stage). This frees me up to be creative, and also to pick and choose my priorities.

As far as your specific complaints: - 'I can't bare (sic) the devs that go out of their way to work weekends without being asked'; IMO this depends on personal disposition, and also team culture, and sadly, it's hard to find a place to work where they don't try to force people to burn out one way or another. This does kind of suck when you've got team members that do this and kind of fuck things up for everyone else.

- 'I can't bare (sic) the endless meetings, constant micromanagement'; Again, this is mostly team culture, and how teams are organized, and there are ways to fix this, but in my 25+ years of experience, once an organization heads down this path, it's very difficult to fix. It's the route to becoming ineffective as a group, and it is soul-crushing to be a part of this. I'd encourage anyone in this situation to get out of it ASAP. Complaining will never ever fix it. Micromanagement, of course, is 100% just incompetent managers. Which is also difficult to fix.

- 'bringing the stress home to my family'; I think this is more of a personality issue with the individual. 10 years of therapy, and I wasn't able to make headway on this. Some jobs were absolutely worse than others. Personally, when I've had management who goes out of their way to compliment my work verbally, this goes a long way to relieving my anxiety and stress. It's very helpful and costs the company next to nothing. But at the end of the day, even those companies, I've had to deal with either company failure or layoffs (which is a form of company failure), and that just validates why I'm stressed. So it comes down to how you deal with that stress, and the only way I can see it is to be independently wealthy so you don't need to work in the first place. That's just my internal rationalization though.


Our team complained about frequent meetings, and managers reduced meetings to one daily meeting (our managers are competent though).


> ...our managers are competent though...

So....um, it sounds like you work at almost-a-unicorn! ;-)

Seriously, good for you!


Yep, I wonder how it ended up like that. Is it an economically sound plan to run a company with incompetent people?


Economically sound? No, certainly not. But, does it happen all the time? Sadly, yes.


Kinda understand in the old days developers were engineers, we solved it, by code and by machines / computers. You had a good idea of the problem, had experience, knew the best ways to to visualize a gui around it. Then companies got addicted to scrum, micro management, only minimal changes allowed, nothing radical to change, and old code got over engineered, to complex for what a user realy wants, driven by marketing selling points that never got sold anyway. I've seen this so many times, while all side projects where you were in that old full control went great. Then you get blamed "you dont fit the company..." Companies rarely take a look in the mirror, has the main project become a nightmare sinking ship instead of you (only a few believe in it).

The problem is I think scrum to many people involved, to many people want to say, (not knowing the engine), good software usually has good dictators leading it positively without needs for scrum (or minimal).

Good coder (i noticed) usually are intelligent people to have nice conversations with, will write elegant code, and love to share their ideas, as if it were readable books you would like to talk about.

The poor coders are extreme focused on "their" code knowing it all and there is no argue about it, they feel talking about code is a waste of time, see sorry about their faults and laugh about others people misstakes. Above all they protect their position in the company, (it might be better if they changed jobs) but on every company we have those people, not open to ideas, new aprouches new solutions.. you just dont fit in they say...

If the WHOLE scrum process takes a coder more than hour a day, its gone wrong IMO (and yes most often this goes wrong because their so "experienced", while you've seen way more companies failing just like them)


I thought I loved animation but I learnt that I mostly love drawing, and hate the animation industry. I left twenty years ago and forged a career as a freelance illustrator, mostly drawing porn. It makes less money than working long hours for a corporation, but I’m making a lot of individual people happy with my work.

Very few passions survive contact with the industrialized version of their craft.


The problem with software is a state of warfare between management which sees developers as disposable tools and a plurality of developers that just want things to bitch about (thereby becoming the disposable tools). Much of that problem is due to a lack of regulation and missing industry wide definitions. Employers deliberately don’t want to solve this problem because it will reduce the size of the available candidate pool and probably make developers more expensive. Most developers don’t want this problem solved because they don’t want to be exposed as not qualified.

I got lucky and found a dream employer recently. What makes an employer great is their culture and willingness to cultivate and retain people. Culture is defined by the quality of people you work with.

> Yet I can't bare it. I can't bare the devs that go out of their way to work weekends without being asked

If something is truly a passion you will do it more than asked. For some people they have time to fill and instead of throwing that time away they fill the time with something they enjoy.


> a plurality of developers that just want things to bitch about (thereby becoming the disposable tools)

I think there should be a sane amount of bitching, but it's all in how you do it and the purpose, if its to get people motivated to improve things, go for it, if its just to always be salty, nah no thanks. I usually tell my team "idk why this is this way, but we can definitely make it better, so why not?" till something catches enough of my managers attention.


I absolutely agree that what makes a great employer is a culture of actual valuing the humans in their org and their growth and retention. I agree that this is quite rare.

That said, we need to be honest about something: from a strictly business perspective developers ARE disposable tools. Virtually all employees of all orgs are. Great employers are willing to treat their employees with dignity and respect because that's how we should treat everyone. Not because it's smart from a business perspective to do so, but because it's the right thing to do.

So yeah I think the most important thing you can look for in an org is ethical leaders, and that that tends to cascade down into ethical employees who treat each other with respect and dignity.


I think the feeling is analogous to people who love music but hate writing jingles for commercials, or people who love painting but hate decorative painting peoples homes.

I guess the obvious one analogy is people may love writing, but hate writing dry reports for bureaucracy of a company.

The size of the team, the bureaucracy, and the pointlessness of many projects sucks the soul out of many artists.


What you are feeling is valid. Do something about it!! I know a guy who built his own open source server and now makes a living out of providing support.

Admittedly that case is a longshot. But there are other things you can do. Let's brainstorm for a bit and think about it. It can be solved.

I also hate this industry. There is a path for us, we just have to find it.


I really hope we both make it out, man. I really do.

We'll be free one day.

Keep building.


I think you mix a lot of different problems into one.

>I can't bare the endless meetings, constant micromanagement

This _can_ be fixed. Even if by switching team or even jobs. With some experience you start to understand in what teams and under what management you work best. A lot of us hate micromanagement. And I can tell you there are a lot of teams without this problem. I would say that micromanagement is the least common problem from what you mentioned here. Simply because it usually leads to overall inefficiency. Also this one you can actually fix by talking with your manager. Maybe they just don't trust you or overprotect you. Nobody wants to do your job ;).

Endless meetings are harder to fix. If your level is high enough you can try to fight it. But usually it is easier to just switch the team and even your work area. Do something lower level, further from API. Even in the worst business-centered jobs there are places where they need to you solve technical problems. Simply because meetings won't solve those technical problems ;).

> I can't bare the devs that go out of their way to work weekends without being asked

this one is on you. It shouldn't affect you personally, unless they ping you on the weekend for 'quick lgtm'. I understand it can be annoying, especially when they advertise such work as something heroic. You either need to stop caring about that or try to explain to your manager that promoting such behaviour in the team demotivates others. Actually I once was one of those 'work during weekend' guys. I had my reasons. After complains from my friends in the team, I simply stopped announcing any such work, so unless anyone specifically wanted to check commit time, they were completely unaware if I actually did something on the weekend. It worked relatively well. So while I sometimes like to overtime, I'm sure it is unhealthy for the whole team to advertise/promote someone for doing so.


When you turn a hobby you love and are passionate about into a job is ceases to be a hobby you love and are passionate about and starts being a job. This might seem like a tautological statement but it's something people don't really think about until it's pointed out to them.

My advice is to reframe your thinking and start treating your job as a job - a source of income not a source of personal fulfillment.

Beyond that, there isn't a sole "tech industry" or "software industry" a lot of different types of companies employ software developers. I've been a software developer for more than three times as long as you and I've never experienced "devs that go out of their way to work weekends," "endless meetings," nor "constant micromanagement." Perhaps a job outside of a company that calls itself a "tech company" suits you best?


My plan was to work for really large companies with a high salary for ten years and then move on to smaller ones. I made this because where I'm from, software engineers don't make close to what they do at large firms and people were moving to my state in droves that had been in or around these larger businesses and thus had a lot more buying power than I did.

I'll share that working at a FAANG or larger tech business is soul crushing if you come from hobbyist programming and computing. Over the course of that time, I've learned to somewhat adapt. I still work on high tier roles, but I don't work on things adjacent to my interests anymore and I don't invest nearly the amount of time I used to. Think, good boundaries for work kind of thing. I'll still probably move to a smaller business, but this attitude bought me a little extra time.


The primary thing to start doing is separate your private and work life. You should not be bringing anything home from work, least of all stress. The rest is all a matter of attitude: You will find all of the things you've listed in every industry, but in this one at least some of the work is fun :)


Can't really relate, as i don't have similar experience. But I do know a lot of my programmer friends, are not programmer by trade. A lot of things like chefs, forklift drivers etc... They enjoy their personal projects, but also did not enjoy professionally doing it.

Myself i started programming recently in a somewhat professional context, but I chose it carefully not to run into the soul-destroying machine, hopefully. I program at a research institute, so the projects aren't products, and hence there's less pressure on the programmer. Perhaps a similar context would also be a more happy place for you. programming on things which are not sellable products. (some automation jobs, some research jobs and other things might require extensive programming, yet have no direct sales of the programs themselves.)


This is why I switched to DevOps / Internal tooling. Yes, it has its own headaches, but usually you aren't on the critical path for the company and can get away with working normal hours (most of the time). The scope of the work tends to be smaller too, so projects feel more like side projects.

Downsides are: - More manual/operations tasks (though this is a chance for automation). - It can be a dumping ground for random jobs other teams don't want. - Your customers know exactly how to get in touch with you. - You probably won't be working at "web scale" or with the latest machine learning tech.

When I started down this path I thought it might be hard to find jobs, but that hasn't been my experience... yet.


Yes I do love it, but have since moved on, now the arts hold more interest and, interestingly, promise, for me than computers per se. Though technology seems worthy of keeping tabs on, I now try to go days without if I can; it's much healthier for the mind, and body surely, to be analog, but technical things did and do develop my mental faculties. Luckily I have found many and more analog sources of challenging.thought processes and some I'd say even more complex than computers (unless it's compilers or some linear algebra, logic or hard science monster, which anyway weren't my field). It's unfortunate that I can't find time now to code a good old hobby project up.


> as you all know, side hustles don't make money over night

If by "side hustles" you mean side projects - these are something between a hobby and a learning opportunity.

If you mean contract work - many people work as freelancers. I used to, so to avoid issues with corpowork (micromanagement, meetings, internal politics) and to be able to choose projects I genuinely like. For me, it was far from "stress-free", but I know many people who precisely prioritize this part. I prioritized creativity, ambition, and learning.

Of course you don't get benefit of corporations, but it is crucial - what do you want? What do you optimize for?

Ad weekends - I bet you are from the US, aren't you? Try Europe.


I came to like the people that comprise systems, their needs, the composition of their systems, and the overall efficient function of composed systems. Programming still interests me but it sure doesn't motivate me like it used to.


You're whining.

I agree that organizations that have endless meetings are organizations with too many unintelligent people: don't work for them.

But wtf? You "love building and working" and you're "forever building my own side projects as I love it" so who are you to criticize "devs that go out of their way to work weekends without being asked"? Have you considered that they might love their job also?

Stop whining. Apply to higher quality teams. (And watch out for your written communication giving a bad impression -- I think you're a native English speaker but you're confusing "bear" and "bare".)


You think too much ! Let the poor guys work weekends if they want, dont go to meetings you're not useful at, say yes yes to micro managers and never ever bring stress home, or quit immediately if somehow that's not possible.

I tend to really relativise the importance of what I work on. None of us are defending the nation or pioneering a moon landing, all can wait, all is a game to some extent.

When an agitated user comes to me with a demand to fix a problem that has been here for 20 years, I do as if it was important to be nice, but hell if Im going to stress about all this at night ! I'll do my best or fail trying, the big deal.


> I can't bare the endless meetings

It's an unfortunate fact that in order to get more done you'll always be more effective if you manage to steer a team the right direction than to do it yourself.

Doesn't matter if you believe in 10x engineers or not. There's just no way you can compete against a team of 100 with proper leadership (technical and/or managerial).

And unfortunately one meeting can have these impossible to measure small movements of the rudder that is more effective than you sitting and coding for a month.

That doesn't necessarily make it "fun", but it can be fulfilling.

> constant micromanagement

Ugh, that sucks. The whole industry is NOT like that.


I feel this and wrote only today about treating software as a creative process. I feel that that programming is most enjoyable when it feels like art and it's inflexible processes around software development that break this. Paul Graham writes extensively about software and it's similarities to the process of painting https://garethbrown.net/2022/07/18/hackers-painters-and-prac...


There is no such thing as “the industry”. There are millions of individual companies out there. Each with a unique culture shaped by the founders and people working there. So keep looking until you find a company with a culture that works for you. It took me working for 5+ companies in 5 different countries until I finally found a company with a culture that I am happy with. The range of different company cultures out there is extreme. From absolutely hell on earth toxic to perfect for you. It’s like a marriage: it can be hell or heaven depending on who you marry.


The good news is, there's lots of possibilities. The bad news is, you have to look hard to find the ones that will make you happy. For example: startups are legendary for giving high self-value feelings, but crushing work hours. But I got lucky, and managed to join a (tech!) startup that has regular business hours... yet is still working on Cool Stuff. (it's very well funded, by very experienced board members,etc) (I joined in their 4th year though.)

there also exist satisfying opportunities at small to midsized companies. It all comes down to management.

So... keep looking!


I'm curious about the following line you said.

> I can't bare the devs that go out of their way to work weekends without being asked

What is wrong with the devs who work on weekends? (if they aren't bothering you, of course)


Someone who's consistently working extra spoils the situation for the rest of the team. They'll eventually end up having the most knowledge and experience since they're working with the code more and they'll almost certainly be the most productive person on the team. When it's time for reviews, raises, and promotions who do you think a naive manager will flag as the all star top performer on the team? One can argue that that's fine and they deserve the raises and promotions because they're working extra, but it ends up putting the team in a very unhealthy place where the other team members can't really compete with the workaholic unless they too start working extra.


I'm facing this exact problem. The guy that works on the weekend, is unfortunately the most senior engineer on our team (it's quite sad really. He has nothing to prove, a wife and kid, yet he works weekends with no reward).

He's setting the benchmark higher and higher with everything he's doing. It adds zero value, yet he still does it. It leaves us other devs having to keep up for the sake of it.

Burn out here we come.


Not OP, but, not only is this style of working unhealthy, it promotes this unhealthy style in the rest of the company. It promotes burn-out, work inefficiency, unrealistic standards, among other problems.

Whenever I have the say-so, I will flat-out forbid anyone from doing this.


Makes sense, but isn't it a choice?

I'm just starting out in my career as a student and I don't have much to do except for my work, side projects and studies. I sometimes work on weekends but I don't promote it at all. This is not a standard I'm setting and I don't expect anyone to do the same.

Obviously, when I'm with my family or friends, the whole scene is different; I want to get off work early. But I think you can work on weekends if you feel so because some people have nothing better to do and that's their escape.


> Makes sense, but isn't it a choice?

I think you gotta be so careful when you talk about what's a personal choice. We tend to see this in a black and white: either you are forced to do something, or you choose to do it. But in reality it's a total spectrum. "Soft" forces like peer and manager pressure can be hugely impactful. For some folks deadlines are just a target, but for others, whether due to their value set or their anxiety or whatever it might be, they are inviolable laws.

We are social creatures, and we are not good at making decisions when those decisions come at a social cost.

One of my closest friend will work nights and weekends to complete every project she is assigned. If she doesn't finish them her anxiety will tear her apart. Quitting because of overwork is, in a value set that her parents indoctrinated her in, a personal failure and an admission of defeat. She chooses to work nights and weekends, but it's a choice made under the coercion of her own demons.

Sorry getting a little dramatic there, but this is something I feel really strongly about! Anyway I think there are definitely people who work weekends simply because they feel like it, but I suspect many more do so because they fear to break norms and "let down" their peers and managers.


I think I understand. Someone who doesn't have anything better to do might as well contribute their idle time to working, as long as it's voluntary and without expectation.

I might agree were the worker a shareholder or founder or otherwise long hours were the explicitly stated, well-compensated expectation when hired.

For the average full time employee, absolutely not, particularly not even for junior/entry-level. Spending unpaid evenings and weekends at work prevents someone like yourself from acquiring and maintaining a social life, emotional resilience, physical health, community support, romance, poetry, moments that make life worth living. I'll be damned before I participate in the crushing of souls like that, my own included.

That said, there are roles for people who cannot live another life. If that's you, do not waste your ambition as a full time employee. Be a founder, or work in finance. Or at least a freelancer with unlimited hours. Be compensated for your time.

Otherwise, pick up a hobby. Hit on that cute barista. Learn to play ukulele. Join a tabletop RPG club.


Perfectly understandable. Thanks for the advice!


Yup. The tech industry is one of the worst reflections of late stage capitalism. In other industries you see people who are disillusioned by growing wealth inequality, and those people are rationally checked out. They know the planet is on fire, that both poltical parties have been captured by the billionaire class, and that america's status as a global hegemon is failing.

In the tech industry (and a few other high-wage jobs), you work with people who think they're above all that. Their Tesla will drive itself through the "bad part" of town so they don't have to take the subway. They think they're temporarily embarassed millionaires, just one startup idea away from being Elon Musk. They still work their whole lives to enrich someone else, but they do it with a smile, on nights and weekends, because at least they can afford to pay some faceless worker to drive across town to deliver them food every day.


Check out research labs. Pay isnt as competitive as FAANGs but you get to work with a lot of smart people and to work on cool stuff. Also since they tend to be gov related the stress is lower


Not all tech jobs are like that. Also, different tech jobs will appeal to different people, which is fine. Maybe this one job is not the best fit for you, and there may be another one out there that is.

If I were you, I’d try a job as different as you can in a company as different as you can, for the sake of making sure the situation will be different. You might still land in a situation that’s not for you, of course, but that should mitigate the risk that you’d land on the exact same problems.


Programming isn’t an industry. The industry you are referring to, which many of you work in, is the manipulation industry, mostly via ads but not only ads. Companies who say “I can influence somebody to do x”, for a price, usually via tracking and dark patterns, ads, and feed filtering.

It’s like a mechanic complaining about the “mechanic” industry, when it’s really the automobile industry or the engine industry or the bicycle industry they are talking about

Try to work for a different kind of software company


I can definitely relate. The disparity between the enjoyment of the craft and the experience of applying it is particularly vast in this industry.

My recent experience is probably a fluke and would therefore be unhelpful, but I finally optimized job selection exclusively by pay rate, accepting a role in a tech stack I have no experience with and honestly, very little interest in, and yet the engineering culture and overall experience are turning out to be the best in my recent memory.


> Yet I can't bare it. I can't bare the devs that go out of their way to work weekends without being asked, I can't bare the endless meetings, constant micromanagement, bringing the stress home to my family.

This is something I screen for very carefully when interviewing. It took me almost a year to find a job after I was laid off in February 2020; but it was worth it. I really love my current job.

That being said: All jobs have ups and downs; including the best ones.


Not everybody has to compromise on salary but I took a significant pay-cut to be where I am now, and took the decision based on work-life balance, meaningful (non-commercial) work and interesting tech with great training and flexible tech path choices (which ironically give me very sellable skills should I choose to leave).

Best career decision I ever made.

Don't let the cliched-career ladder advice generally offered in life (I don't mean here) blinker or constrain you.


Yea I’m pretty much the same way. I love building, but the advent of product management and the commoditization of software work through “agile processes” has pushed me out. I’m not a drone, but that’s all a company views my skill set as. My solution has been to push further and further up the management chain to avoid the things I hate. I’m now about to start a company because of this lack of autonomy and love for building/creating.


Good on you. I wish you all the best with your project. Please nail it! Do it for us struggling programmers.

Good luck man.


I've learned to ignore the industry, or, at least, I'm in the privileged position where I can safely ignore it for the most part, the problem in my case it's that I've started to see more and more the bad (and evil) things our profession and, in the end, our craft is bringing to society and to the world itself. I haven't gotten around to "solve" that just yet.

I do love though to program on my small/little projects.


Most people here can. It’s fun to work on sideprojects. Not so much fun inside. FAANG. Mostly because of the managers I feel and lack of control uou have as a dev.


1. Try to clearly identify what you love and what hou hate in tech industry and working on day to day. 2. Be able to prove your value when talking with someone. 3. Use this value to be picky, by curating opportunities to keep the one.

For the last 6 months, I had job opportunities every day and say no to everything until I find the right one. Your family and friends will laugh at you, but in the end you'll be happier than them.


I can certainly relate. I've been programming for over 40 years, but I could only take about 10 doing it for a living.

I moved into information security. Where I have endless meetings and spreadsheets, although no micro management. But I write software in a way I enjoy outside of work.

I have to say that micro management is a bad sign in any role. I would certainly try to find a different role, even if you choose to stay in software.


> I can't bare the devs that go out of their way to work weekends without being asked, I can't bare the endless meetings, constant micromanagement, bringing the stress home to my family.

There are programming jobs without any of this. Government is an easy example, but shop around and you'll find places with better work-life-balance, particularly if you're willing to sacrifice some pay.


Yep I can relate. I love computers and working with them. I do it all the time in my free time and have so many projects spinning, slowly but surely.

Professional Software Development is idiotic and a waste of consciousness. Or rather, it's a conversion of consciousness and focus into money (some for you - mostly for up-orgchart). Right now, it is pretty free money. Especially given remote.

Can't wait to fuck off.


I can relate. My strategy for work/life balance has been 1. get hired; 2. work hard while learning new stuff; 3. slack off; 4. get fired (layed off); 5. goto 1

Not that I recommend it, just fwiw. Contract work with time between gigs might help, if you can afford the medical premiums (in the U.S.).

Also fwiw: s/bare/bear/ s/literally// s/over night/overnight/


Yes I can relate to a T - every line and every point. The pay is fine but I can't bare it anymore. I have been contemplating to switching my career and doing something else for a while but being in a developing country, with a family depending upon you - it is hard. I was plotting an escape plan as well but sometimes it feels as if I am late for other plans.


It's not just IT, it's society as a whole. The corrupt, planet destroying, lying, abusive society that works in industry.


Honestly, just be happy to be making good money and try to leave the rest at work. Other industries aren't better. You'll constantly be chasing a unicorn.

I can definitely relate but am in a different industry. So starting a start-up. But still have the other job. Until the start-up makes money or at least is enough to get some funding.


"can't bare the devs that go out of their way to work weekends without being asked"

But that is a problem for those devs, not you. As long as you are producing high quality results on time, shame on them. Why "you" can't bare it?

"I can't bare the endless meetings"

The meeting might feels endless because it is not where you want to be. That sounds more like you expected that the life of professional development should be only what you like to do, I assume coding, and it didn't turn out that way. Maybe you should adjust your expectations to reality and get the most out of those meetings?

"constant micromanagement"

I have deal with this in the past: a) Over report. Micromanaging is consequence (in very general terms) of insecurities in managers. Over report, be constantly in their faces telling every detail of what you are doing, until they are tired of you and they know you can take care of things b) Find another company... there is a shortage of developers anyway Bottom line: You cannot change them, but you can change how you approach them.

"bringing the stress home to my family"

Your family is not at fault of what is going on at work. My experience is that there has to be some level of compartmentalization. You need to learn to flush out your frustrations before arriving home.

I understand that you don't like the industry, but the question is what are you going to do about it? How are you going to process your feelings? How can you take advantage of where you are? In other words, can you develop your soft-skills?


There are parts of the tech industry culture I dislike, but its definitely not endless meetings, micromanagement, and coworkers who work extra hours. Especially with regards to meetings and micromanagement, which I see the tech industry as having a very low amount of either compared to other industries.


When you can't easily enumerate the possibilities, you have to assume success is by chance. I've worked in great companies, with great people. The people who weren't great still taught me something about being a team. I consider myself very lucky.

At times, I end up frustrated. It seems I leave companies after 6-7 years, because I stop moving forward. When I find myself in a rut, I try to put myself into new situations, so I can find new opportunities to be lucky. That may be internally in the company, project or team. Or it may be moving to a new country. Or, it can be turning inwards and focusing on improving my interpretation of the situation. The situation is rarely bad, even if I may feel down about it. The only constant is change, as they say.

Yes, I can relate to personal stagnation, to the Hedonic treadmill and that opportunities that sound good in shallow waters often sink when you go out deeper. But I'm not going to say I hate the industry. I haven't uncovered even 0.1% of it. Plus, I'm still hoping I can help make it better by being a part of it.


my longest held job was the one that wasn't in tech - at a relatively small manufacturer that had 3 coders inside of a 6 person IT dept building custom/internal tools and apps. It was so so different from working in tech (I left because I moved and the longer commute got old)


Yes that's me. I look at the pay cheque and it makes it ok.

I do a lot of stuff that I don't hate at home though.


In every kind of job there is good and bad. I spent some time as a salesman and that can be excruciatingly awful too. People who are entirely happy in their work are rare.

Do the job you feel most comfortable in. When looking for a job remember to consider if you will feel happy there.


This is why we need to build software companies as co-ops and for everything else unionize.


I really love the greenfield situations where you're building stuff up from scratch and have minimal APIs to deal with so you can just keep everything in your head and plow through writing tons of code. No one pays you to do that though.


What about working contracts or consulting? You get the programming but less of the corporate BS... although being self employed brings it's own headaches of course.


simply the industry is full of shit from both personnel to the orgs themselves.

most orgs unless you work for the local city municipality think they're doing something revolutionary. when they're not.

the personnel is smart but blind. which ends needless work to prove either promotion/ cleverness . I probably think we're the only industry where we need to prove we need to look busy. Plenty of professions have idle time and only crank it up when needed - a firefighter is not fighting fires 24/7. nurses well before shortages were not looking after patients every minute.

yet us software engineers need to be cranking code / being in meetings all day. only non productive MBA's share that trait i.e need to prove busyness.

most companies lack adequate leadership i.e level headed people who can say "NO"- this is not necessary

us software engineers are interested in reinventing the wheel for no particular reason as if we work in research labs. hell people doing pure research into performance e.g Formula 1 - have a time cap into that sort of stuff. they're not running wind tunnel tests 24/7

for us personnel add the shitty tools like NPM. These days if you try go against the grain you're looked at as if you're an idiot. if your web app is not an SPA then you're a relic of the past. if you don't run K8's then you must be doing hobby projects etc. if you're not on the cloud you're legacy, as if shit matters if it delivered from boxes rented from Bezos or your own boxes.

companies thinking a 3% raise is enough when inflation is 7%+ and wonder why people leave.

companies having long interview processes which don't make sense at all

lack of education and training at most companies that's not 20% time or attending conferences. - before proper companies like IBM / HP etc used to pay for people to go to school and have in house tutors. yet companies these days expect you to know everything

last and not least => we can't make software that works whether it's Apple / Google / Microsoft / Small Co. it's all shit, it's full of bugs


Have you worked at other industries?

When compared to what other friends and family endure, programming for money is heaven.

One thing you have to do however is having some firm boundaries - this is something I still struggle with.


Honestly, no. Programming is all I know... Which is kinda sad.

You either churn out work and hope you can climb to the top with the seniors and managers, or go down the entrepreneur route and try out your luck.


Find a different company with a different working culture.

My devs are not required to work more than 40 hours in a week and I go out of my way to ensure they don't have to endure any kind of crunch time.


Programming is a (cool) tool used in many contexts. I’m sure the OP had a particular context in mind, but I’m afraid I don’t know which and can’t agree that there is just “one industry”.


What I hate most about the industry is how everyone drinks the AWS+Docker+Kubernetes kool aid. That plus the worship of React and Node with its tortuous async programming model.


One option is to suck it up. 100 years ago I’d prolly have black lung by now even though I’m still a young boy.

We get paid a ton of money to sit and read and type. Things could be much worse.


I love programming, more specifically, tinkering with code, APIs, building PoCs and such. So I became an engineering manager so that I can do these in my free time.


Yes, the problem with industry is, there's no industrial standard ! Joke, there're many industrial standards for you to follow, and it causes the issues.


That reminds me of a joke, "The great thing about standards is there are so many to choose from." The joke being the point of a standard is everyone does things a certain way; if there are multiple standards, that completely defeats the purpose of having a standard.


There is no "programming industry". Industry would be, automotive, finance, agriculture.. etc. Its likely the industry you work in, not programming.


Well sort of. For some reason, many dev departments do things the same way. Usually learned via some scrum consultant.


i think there is a major disconnect between our work and our needs.

if you have to work 12 hours to eat then your work is damn meaningful.

if you sit in front of a computer for 6 hours in a comfy job doing asinine tasks and dealing with asinine bs, it has no meaning.

since your basic needs are met, yet the income you get is not enough to do something, like have kids or buy a home or pursue your own ideas.

at least not without feeling constant anxiety and stress as a rentier debtor.


Same boat here. Sadly, I feel like most ppl on tech are very cynical/depressed. It's often unhealthy imo. I try to avoid comments on tech sites


Maybe a tech cooperative were you and your partners are all treated equally and there are no bosses would be a good choice for you?


Leave the industry: change to a company where software is not THE product but just a tool for building the product or for running the company.


yes, I'm writing my experience of working in business transformation.

It's about my strongly held belief that companies, certainly smaller companies, don't need the Taylorist command and control structure to thrive.

Happy to keep you up to date. I started as a hardware engineer then a programmer and and architect now work as a scrum master. So that might devalue my advice.


* High pay

* Job security

* Fun

Pick two


Any tips for finding the job security + fun combo?


I'm so tired of juggling a hundred "MVPs" and never going back to finish them.


> I can't bare the devs that go out of their way to work weekends without being asked

Why do you care what other people do in their spare time, especially to an extent that it makes you not bare your job and bring stress to your home and family!?

If what colleagues do over the weekends causes you this trouble, it sounds the problems are in your mind, not the industry.


Take a job at a poultry processing factory for a month. That will heal your soul somewhat.


Move to Europe. Or work for a well funded or very profitable small company.


I checked out of this industry about 10 years ago. Its either toxic af, snowflake participation trophies or some narcissistic hellscape inbetweeen.

Just punching paychecks and doing my hobbies on the side.

> side hustles

I gave up on these too. I don't want a second job, my current one pays just fine.


This is textbook alienation of work. Unfortunately Marx only describes it and does not really provide a solution that could work for us (unless you believe his view that history will naturally progress to something better).


I don't think anyone likes it.


Honestly, I became a product owner because as a developer, I hated scrum. And it’s everywhere. Industrialised standard of micromanaging. And yea, I know, that’s not what scrum is meant to be. But communism wasn’t meant to be a dictatorship and almost always is. So, if something almost always fails or isn’t able to be implemented, then it’s not useful.

If I found a company not doing scrum, I’d go back, but otherwise, I’m done as a paid developer.


I left paid development for any role other than developer.

Industrialised standardised scrum/ micro management sucks. Multiple jobs, same experience.

If something can’t be implemented properly, then as much as you might say it’s not scrim, well, communism isn’t dictatorships, but it always happens that way. So, there’s a blurry line that isn’t established or doesn’t work in most places so it’s not useful.


Sometimes the pasture is greener on the other side, and the other side may be another part of the world.


Capital corrupts everything.


why not work part-time for a small company?


I love you all. Wow. What a group, what a collection of perspectives.

I'm not top-tier, not in your league at all. Not dumb, but a bit late in getting organized.

I worked for a state government. For too long, trying to make it work. Then on July 7, 2005 I quit my job after deciding that I'd rather die than keep working there. Haven't worked since, as it turned out. Squeaked by somehow, since I always lived within my means and was good at saving money.

In 2011 I took early Social Security, and that thousand a month coming in was a huge relief. Way better than zero. My defined-benefit state pension kicked in during 2014, doubling my income, and now I live in Cuenca, Ecuador and am starting over at age 73, though not really worried about an income. Mostly it's about the learning, and developing skills I never got to before.

And I have learned more about life in the last 10 years than all the time before that, mostly via thinking things over. Of course, now that I'm smart, I'd do everything differently. Radically. If I had the chance.

A couple of days back I looked up a guy I used to work with. He was a young intranet webmaster at [state agency]. Since then he got into the Agile/Scrum world and made a really good living from it. Been all over state government as a contractor, and other places, like Microsoft, and even got to Australia, etc. Good for him. He decided to focus on a thing, own it, and run with it. I've always dithered. My loss.

A thought: If you haven't checked it out yet, take a look at "The Pragmatic Programmer: From Journeyman to Master". See https://en.wikipedia.org/wiki/The_Pragmatic_Programmer and https://pragprog.com/titles/tpp20/the-pragmatic-programmer-2... for info

From my experience...

* The real issue probably isn't finding the right job or company but finding the right people, including the right person within yourself. It always comes down to the people.

* If the Pointy Headed Boss doesn't understand it, then it can't be that important.

* Especially for a small/non-technical company, you are hired help, like a plumber or electrician -- maybe useful from time to time to do some obscure dirty thing but still just another manual laborer.

* From a non-technical boss to me, about a technical issue: I've dealt with people like you before -- you always see it as black and white, but we need more shades of gray.

* There is likely no general solution. What's right for you may not be right for anyone else.

* A well-run company is a well-run run company. That's the fundamental fundamental.

* No-code software is a tool to solve problems. To be of any use it has to be driven by someone who knows how to think, which is what a programmer is.

* The contractor who built one client-server system I worked on needed three more months to finish it. Nope -- had to meet the deadline. So three of us spent two years slapping patches on it. And all three of us left before it was working as promised.

* Words of wisdom from some of my (former) co-workers, none of whom were part of any solution, ever: (1) If it ain't broke, don't fix it. (2) We've never done it that way. (3) Wait.

Some choice thoughts from the comments here:

* "Very few passions survive contact with the industrialized version of their craft."

* "Programming is a tool. Computers are tools. You're not getting paid to program. You're getting paid to solve some problem for your employer by programming."

* "I realized that the problem is inside of my mind...It took me many years to finaly come to the deep realization that sitting down by yourself and brutaly examining my own problems that the mind generates is the only way forward."

* "What I hate about the industry is politics, short-term thinking, selfishness, dogmatism and other forms of irrationality."

* "There is next to nothing being produced today that I care about at all. I don't play games, I hardly ever use my smart phone..."

* "I try to bring a sense of craftsmanship to my work."

* "I thought I was the only one."


Yep.


I don't have any advice, unfortunately, but I can offer words of empathy and say that I definitely relate to you.

And I've been at it for 25 years. Part of the problem is that for 15 of those 25 years I was full-time self-employed. It was immensely rewarding owning my own company and being self-sufficient. And I still own the business, it just wasn't making me enough to money and I started to lose my passion for what I was making.

I'm a maker. I like producing things whether it's wood-working, producing a magic act with my wife (which, when you're making everything from props to costumes involves a ton of DIY in all sorts of skills), producing music etc.

So for me, I care a lot about what I'm producing and how I'm producing it. I don't care too much about what programming language or "tech stack" I'm using, although I can't stand trend-driven software development. I'm all about choosing the right tool for the job and thinking about the self-life of the software I'm making. But it also matters to me what I'm making and the craftsmanship that goes into it.

The things that are burning me out in the industry are:

1) There is next to nothing being produced today that I care about at all. I don't play games, I hardly ever use my smart phone and I really hate SaaS and Cloud for the most part as a consumer. I'm a hacker, a tinkerer. I'm something of a contradiction because I like "high level" programming (Java vs C, frameworks vs ground-up) but I also like being close to my machine. As a programmer I'm supposed to be the master of the machine. I don't want to program for some Amazon service running on some VM in a foreign data centre. I want to code for a machine that I can touch. As an end user I want to own and control my software and hardware. I don't want to be constantly hitting some remote server and keeping all my data there. I want to control and own my computer. I want to touch it. I want to be able to customize all the software on it. I want to be able to use it completely offline / air-gapped if I want to.

2) I try to bring a sense of craftsmanship to my work that is under-appreciated by businesses. All they want is cheap labour who can get a rapid prototype out the door in time for "deadline" and then that rapid prototype becomes permanent, tech debt is ignored and the long-term consequences aren't realized by those who have cashed out, moved on and left those behind holding the bill.

3) Trend-based design decisions drive me crazy. Part of the problem is that we have a younger generation of engineers who only know what they know, and they need us old timers to teach them. But they have this attitude that "new = better, always." So we see Cloud-based everything complete with the vendor lock-in and complexity that using a million different proprietary weirdly named services employs, GraphQL as a solution for every problem, microservices where monoliths make more sense, monorepos where micro-repos make more sense etc. (But Google is doing it so it must be the best solution for every problem!)

I used to be a very high-tech person, relative to my peers. I was the kid who knew computers and spent every waking hour installing various *nix OS's to play with them, teaching himself to code, writing games (I don't play games anymore and the horror stories from the industry are enough to make me not want to go anywhere near it), starting tech businesses etc. These days when I clock-out of work I don't go near anything high-tech. I'm starting to appreciate the outdoors, producing things with old-fashioned skills. I can't stomach the idea of writing a single line of code when I'm not on the clock. It's really sad.


I have almost 30 years of working under my belt, and as I commonly tell people, I love my Job, but hate the Industry, and here's why:

When I started out (mid 1990s), Corporate IT was still very much mainframe based; Desktop PCs were just starting to appear on office desks. I had the good fortune to work on both early on. It was very much a fast moving environment where keeping things running was the only thing that mattered. We were the 'gurus' who knew how this stuff worked. Stuff that to most people was incompressible. The internet as we know it now, didn't exist. If you were lucky enough to be able to connect to it, most of the places worth visiting were FTP sites. There were a few websites, but nothing of substance. USENet existed, so did IRC and Gopher. You had to put the effort in to get driver updates, and new software to solve a problem.

Without easy access to information for people to solve their own IT problems, it fell to others who were prepared to put in the hours to learn the systems, and read the books. We were the gatekeepers of this wonderful new world.

However, all industries grow up, and IT grew up so fast it was alarming. Overnight it felt that everyone was getting an IT related job, and new associated professions were appearing all the time. Whereas it was just us SysAdmins and a few managers happily spinning the plates and keeping things running, there was suddenly Tiers of Middle Managers, Project Managers, IT Security, Operations, and Developers who only knew their IDEs (or text editors) and didn't even know how to use the system they coded on. Each platform had it's own ship of people doing discrete roles. What was once a nice lean new-frontier of discovery became a bloated enterprise of form-filling and endless meetings, with pointless authority figures whose only reason for existence was to slow things down.

This massive influx of people also brought in people who had no right working in the industry, and a lot of things went wrong, which resulted in the biggest issue I have with it.... a lack of trust. It doesn't matter that I have decades of experience on system X or Y, some bean-counter or form-filler will force me to get my work checked and approved, each and every time because that's the process now. No other industry with experienced veterans would treat them like this, but in IT it's considered normal. I am sick and tired of explaining to people who have no technical acumen at all, that my suggestion, design, or solution is based on my extensive experience only to be basically told 'yeah well, we will check with other people anyway as we don't believe/trust you.'

I think IT is a horrible industry now - and because it pays well it continues to attract people who have no business being in it. All I do now is count the days before I can exit it, and do something better with my life.

I still love computers. I tinker with them every day, I write code my own enjoyment and love fixing hardware, but the industry I use to love, now sucks.


I know that feel, bro. especially as a webdev.

the field is dominated by corporate marketing, cargo-cultism, resume padding, reinventing the wheel and fixing what isn't broken.

since I've chosen this as my career 8 years ago or so, I've managed to get by without ever dealing with someone else's bullshit. I have some income from personal projects and some income from greenfield one-off jobs, I get by for now, but I dread the day when I might need to get an actual job to get a mortgage or after I emigrate




Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: