The Downsides of Being a Coder

Hermetic Seal

Kingfisher
Gold Member
I've worked as a coder for five years and this really resonates with me. Honestly, I hate this line of work and wish I could get out of it, but the money is too good, I don't know what else I could possibly do that pays this well for supporting a family on (almost) one income. I'm fortunately in various aspects of my job - I never work overtime, there's never much pressure, and the work environment is stable, pleasant and free of all but the most cursory SJW nonsense.

My problem is that although I'm detail-oriented and enjoy building stuff (heck, I was making levels for PC games when I was still in elementary school in the late 90s!), I struggle to get much of anything done on my own. Working with other, competent developers masks my flaws, so my manager thinks I'm doing just fine, but I find myself constantly dissatisfied and insecure about my work and abilities. Five years in, I feel like I'm a worse developer than when I started, even though I'm doing the same stuff.

A big part of it is that at first, I thought I might get really into coding and direct a focus and drive toward it that I have with my obsessive hobbies or whatever, but this never happened, and I got disillusioned with technology in general as I realized how it's just making our world worse and worse. When I was a kid I loved computers, the Internet (which was very much still a niche nerd thing in the late 90s) and technology, but I'm disgusted with what it's become. I've tried learning other types of development like web stuff, AWS, and so on, but I hate all of it even more than what I usually do. It's hard to stay motivated when you don't believe in what you're doing and think it's all bullshit.

I'm extremely talented with writing, speaking, and communication, but these abilities are, on their own, near worthless in our day and age, and I don't have the sort of personality or drive for entrepreneurship. It's a frustrating situation because I can keep coasting along, maybe for years and years, but I'm deeply unsatisfied with it all and wish there was something better I could be doing with my life.
 
The only reason I can get away with working so few hours is because I work extremely fast compared to most people, and what takes some other engineer 10 hours would only take me 1-2 hours. It's all about results.

Awesome post. And this right here is what I think the true value is, in combination with being remote.

Once you make a name for yourself as someone who delivers, you can easily just work in concentration for 1-2 hours a day and do enough to earn your keep. This frees up a ton of time to workout, sleep, work on your business, date, read, etc.

Question for you Cheese: how did you find a job that pays 200k and is remote? Is it at a FAANG or another industry?

I work for a bank and I think as a guy with 5.5 years experience, mid-level approaching senior, I can try and get my salary to 160k.
 
Its a bit sideways to the topic, but the answer to alot of these gripes is Industrial Controls. You often won't be a coder per say but you have the opportunity to do software development. It opens a host of career options from maintenance, to continuous improvement, or a process engineer. Those three positions cover the 50k-110k pay range in my area. You will usually be in a blue collar group or collaborate heavily with them. College is optional athough an apprenticeship is usually required. A burned out software engineer could easily sell transferable skills to transition into these roles (more so process/improvment related than facilities/maintenance) and get to do some hands on work.

You might lose some of the liberty in your workday but may find you enjoy some of the camaradie and the slightly different tanglible accomplishments these careers provide (somewhat like Roosh is finding with his current gig).
 
Coding is not hard just time consuming. Computers operate in binary which is how you communicate with it. Keep track of the flow of data and mathematics operations. Debug and spend time on it and learn multiple languages that you feel most comfortable with. For example rust lang is a very popular language at the moment with good memory management and garbage collection. Much less error prone than c++. I took a coding course on sololearn and finished in the top 1% that month. Code is easy for me as math is my strongest subject along with science and social
 
Personally, I would suggest finding a job where programming know-how would be useful, but in an non-programming role. Makes you very productive, and as you start to create systems, and as you work with users in your area to understand and then solve problems, it makes you very difficult to replace. Many parts of companies are hungry for IT solutions when the IT department itself is not delivering. Be the one to deliver.

Being in a room with generic programmers--the higher ups just see that as a cost center to sub out the quickest opportunity. My opinion of subbing out programming off-shore is that it is a waste of time. Their work uniformly is inferior, and it will be far more expensive in the long run. At the prior company, the corporate IT group's off-shore programmers took over a month to just drop some data, via a fairly simple query, into a text file and FTP it over within the company. And the CIO bragged about the money he was saving. It is stupid, but it does not matter because CIO's show savings on paper.
 
There is no one in China who can compete with me by undercutting me on price because all my true peers - Chinese, Indian, or other - are commanding the same salary I am because that's what quality costs.

I'm not on the coder side of the industry anymore, but from what I recall 20 years ago when I segwayed into something else, and observed at companies in major metro areas, the emphasis by management in the "agile" methodology was cheap, fast, and disposable. They issue specs, the specs are BARELY met, then QA comes in and finds a TON of bugs, and then they fix the bugs (sort of) and repeat.

I find it a rather sloppy way to do business sort of like the roombas that go around a room almost in a seemingly random pattern.

My experiences, and those vary of course, was that management in corporate America would rather layoff recalcitrant people (or even ones they just didn't like) and suffer the fallout than keep them around. When I was laid off, it took most firms a good year or so to deal with the fallout. In management's opinion, NOBODY is indispensable unless they're the chief architect and that guy usually already is well liked and his mood swings viewed as "eccentric."

Another aspect of "agile" which wasn't in the manifesto but became associated with it was 'open office'. In a field of introverts who are expected to work hard to solve problems, it's considered "collaborative" to force all of them into a single room together, no partitions, with continual noise in the background OR absolute silence from everyone wearing headphones. With 3rd world outsourcing and cheap labor, these sweatshops smell awful. Young people won't mind and even have fun at first, but there's emotional buildup living under continual surveillance from cameras, security guards, and hundreds of prying eyes. This has been somewhat mitigated, temporarily, by COVID and remote telework.

Another aspect of corporate America in general which was applied to IT tech (perhaps not high level coding) was Stacked Ranking. People get laid off just for being "bottom performers", not because they are doing a bad job. So now you're in a room with dozens, even hundreds of people who are looking for any way to badmouth you so they don't get whacked first.

This leads to bullying. In IT in general, it's the worst. If you're not in a clique or identity group, you have a big target on your back. Particularly due to the industry being based upon results rather than credentials (such as semi-licensed engineering professions like architecture), many of the workers are low class or emotionally immature.

I know several people who decided to exit the field and retire about 10 years ago. President Trump has stanched the bleeding a little. I hope FullThrottleTX's experiences are better.
 
Personally, I would suggest finding a job where programming know-how would be useful, but in an non-programming role. Makes you very productive, and as you start to create systems, and as you work with users in your area to understand and then solve problems, it makes you very difficult to replace. Many parts of companies are hungry for IT solutions when the IT department itself is not delivering. Be the one to deliver.

Being in a room with generic programmers--the higher ups just see that as a cost center to sub out the quickest opportunity. My opinion of subbing out programming off-shore is that it is a waste of time. Their work uniformly is inferior, and it will be far more expensive in the long run. At the prior company, the corporate IT group's off-shore programmers took over a month to just drop some data, via a fairly simple query, into a text file and FTP it over within the company. And the CIO bragged about the money he was saving. It is stupid, but it does not matter because CIO's show savings on paper.

Something else to consider is that perception of results is different than actual results. Consider big legacy applications in use for decades: photoshop, adobe premier, Microsoft Office. Not much development is really needed. They're mature and do things. But to justify billing the customer over and over again for them, they need to load it up with some BS features. In addition, as operating systems are updated, the software needs to be re-released.

Owners of those applications basically have a license to print money.

So provided the support/programming departments EVENTUALLY get the job done, they don't mind. Heck, if there are problems that helps the management look like the hero to the rescue putting out the fire. (Duckduckgo how firemen often get caught starting fires to give them something to do.) They may even take kickbacks from consulting firms either directly or indirectly Hunter Biden style (their niece or daughter gets a 6 figure job as a director at the outsourcing firms.)

Consider that software updates are now so unreliable that people resist them and Windows 10 FORCES users to accept them (and often crashes anyway).
 
Why software developers might be obsolete by 2030

It's a clickbait title, but the main point is that the role of developer at a certain point will morph into a more powerful position, as coding becomes so crucial to everything.

image-5-3-796x417.png

 

Apoc

Pigeon
I haven't met many engineers that transition (or want to transition) into other areas successfully. Usually it's the other way around, where people are trying to knock down the door to get into engineering. We make more than marketing, (most) sales people, accountants... Until you get into director levels of course. I just don't understand the advantage or benefit of going from tech into something else in the corporate space. You invested a lot for specialized skill set that's much harder than anything anyone else studied, that you may be able to use 10% of somewhere else.

Not only do engineers make more money but they also tend to enjoy their job more, so it's unsurprising that transitioning to a different job is so rare. Considering this as a downside of being a coder is not very helpful though. How can it be a downside to be superior to so many other careers? The actual problem is that you just happen to dislike it, and it's important to identify why and how could you fix some of these issues. While I agree with many of the downsides you mentioned, I do think most of them can be fixed without having to switch careers.

Parroting some other posters, I think that you downplay the transferability of coding skills into other professions. First of all, IT skills are a basic requirement in almost any job these days, and coding is the ultimate IT skill. Second, in high level, coding is about problem solving and logical thinking. These skills are extremely important in any field and just life in general. I can only think of social skills as being more important. Sometimes I laugh in my head when people complain how complicated stuff like filling your tax return is. For an average programmer it's not complicated at all (just very tedious maybe). I seriously think being a programmer is living life in easy mode and I feel very lucky to have ended up as one.
 

FullThrottleTX

Woodpecker
Parroting some other posters, I think that you downplay the transferability of coding skills into other professions. First of all, IT skills are a basic requirement in almost any job these days, and coding is the ultimate IT skill. Second, in high level, coding is about problem solving and logical thinking. These skills are extremely important in any field and just life in general.

Yeah, but why would you do that to yourself (exit software engineering to do another office job).
I talk about the downsides about being a coder here, but the downsides of being an accountant or product manager or digital marketer or whatever are MUCH worse. The pay isn't as good either. I've been in that space, I know.

You make solid points about IT skills being useful in other areas, but imagine going from knowing how to deploy a Kubernetes cluster or building GraphQL APIs to having to tinker with Wordpress plugins or whatever you'll be doing in your office marketing job. That's like a huge step down.

As far as fixing the problems with being a coder, sure.
But for me personally, this wasn't what I was born to do. This was a practical career move at best.
I'd rather make less doing something more fulfilling.
 

Mike_Key

Robin
It was an intermediate goal for me to be making 6 figs while working remote as a software engineer, and now I have it because of the pandemic.

A definite daily downside is the intense concentrative energy used for 6-8 hours a day. And the lack of good socializing definitely degrades social ability.

I work on distributed backend Java systems, with a touch of front end React and devops stuff. I wasn't lucky enough to make the distributed design myself, but work within the confines and have still learned a lot in so many ways.

I see my manager (who's prob making like 300k) in meetings all day, and I seriously don't think I'd want that. Yes being a code monkey is kind of lame, but if you're like 30 years old, making 150k to log in and code some stuff for realistically 2-4 hours max a day... that's not bad.

If you do that until you're 35-40 you'll have a lot saved up and can be more risky with the stuff you're doing.

What other jobs make 150k+? Huge facetime jobs, like high finance, or being a lawyer maybe? Being a doctor takes years of grinding education and you have to be in person, you're locked into that industry. And then of course, starting you're own business - which you have so so much free time to do in parallel as a remote software engineer.

Overall I think it's a great situation. Maybe i'll feel different about it when i'm stuck doing the same thing at 40.
I like your outlook. I'm judging slowly the personalities of my kids and if it works for them, I'd like them to go the math/computing route. My son is a wordsmith or so he thinks ... but nonetheless, the idea of knowing math and computers to hand hold "old folks" will always make money. There are even young professions that use their oratory skills mostly and know nothing about computing; there's money to be made.

I agree on the time completion aspect too - the work that I do, although not intense coding is finished sometimes within 2 hours. There are times when the person on the phone says two words and I already have the solution plus 10% in my brain. It's always nice when you have answers, data, scripts and output ready to go after 10 minutes of work, it's liberating. The down time can get boring but I see it as free time to learn new skills; that is, unless your company has a formal training budget for new classes at professional schools.

I think it's important to not be 'dime a dozen' meaning having to many with your skill set(s) in a particular office. I left a job because after 5 years it was flooded with coders and quantitative workers. The new office that I found actually has an employee status that includes a 10% salary retention bonus.

There are some downsides like short deadlines but in those instances you need a backbone to push back when necessary. I've told people

"oh, you found a mistake?"
"Is that so? oh, I see."
"of course there's a mistake - you only gave me a few hours to complete two days worth of work."

Scoff and hold frame ...

- - - - -
Side note:

On Trade skills/Craft/Labor:

It pains me to see and hear many people, average Joes and White Collar say that colleges are bad. Yes, they are but they help you learn to think and you live a different life (on average you may live healthier and with sharper opinions, insights in Technical fields). Recently, at my job, they tried to give a High School educated person (that actually had been in the Witness Protection Program) some Computing responsibilities. Lol

The work was riddled with mistakes. You cannot turn a GED or HS graduate into a reliable coder, much less an analyst. Also, you can't send a Nerd to fix a truck engine or equally as challenging, a flat tire.

I hear folk saying College will turn your kid into a Blue haired freak, that is in the realm of possibility.

But when you go the route of Labor and Craft ... you live a different life. Five (5) strong men just left my house after literally a few minutes of installing Gutters on my roof. Some of those strong men looked to be in their 60's. They looked very fit and all. I hope they have sizable 401k's.

The big problem or complaint that I hear from people is Client acquisition. If you go route of trade / craft / business - you need to 'Gin up' clients, you need to pound the pavement with a Clip Board in hand and many pens to get Clients and many of them. You need to take their orders and get it right, make them happy.

You need to build it, paint it and sell it.

Everyone will choose their route or their song to sing, I always tell people - "Do what you will, but don't complain, be contented."

Nice topic ... I'd been meaning to write here.
 
Sometimes I laugh in my head when people complain how complicated stuff like filling your tax return is. For an average programmer it's not complicated at all (just very tedious maybe). I seriously think being a programmer is living life in easy mode and I feel very lucky to have ended up as one.

Lol, great point. I feel bad but my mom and dad approach those things like it's this huge herculean task.

Programmers know that everything can be broken down into a set of procedural steps or a decision tree. Do this, make decision, then do that, etc. Nothing is too complicated when you can abstract it down.

----

Also one point I want to add is that I think one thing that makes the job actually enjoyable is to *take ownership* of your tasks and deliverables. Add your little creative touch to the solution, accomplish it, and be proud of it.

Once I changed my view from "they want this done" to "I'm going to add this feature to the system to improve this and fix that, resulting in better uptime or performance when they use the app" it just makes those first 3 hours of the day when I slam a coffee and get most of my workdone, actually enjoyable and creates a sense of accomplishment.
 

questor70

Ostrich
I haven't read through every post but I've been in coding for over 20 years now and my feeling about it is like the saying about democracy being the worst possible form of government--except for all the others.

The fact of the matter is we live in an information economy. Few if any other professions offer as much bang for buck as coding does. Even if you struggle to remain passionate about it, that is the way the labor market is setup. As more and more professions are obsoleted by automation, it's really coders who will be the last men standing. So you really have to respect that from a purely practical standpoint.

Anything you decide to do with your time involves tradeoffs. For some people, the goal of life simply isn't to make as much money as possible. So it will be worth the tradeoff to transition into a lower paid career. But don't be in denial of it being tradeoff. What you gain in enjoying your career you will lose in stressing over your bills in ways you didn't when you were making six figures. Pick your poison.
 

nathan

Sparrow
I have been programming for about a decade now. I don't really work with any soyboys- at worst I have worked with libertarians. The worst thing that coding has done for me is sort of decimate my social skills, at least on days that I program a lot. Also, sometimes in life, a higher-level approach is needed and coding trains your brain to get into the weeds on every issue, since every single line must be 100% correct and it all must logically check out with no mistakes.
 
I'm not on the coder side of the industry anymore, but from what I recall 20 years ago when I segwayed into something else, and observed at companies in major metro areas, the emphasis by management in the "agile" methodology was cheap, fast, and disposable. They issue specs, the specs are BARELY met, then QA comes in and finds a TON of bugs, and then they fix the bugs (sort of) and repeat.

I find it a rather sloppy way to do business sort of like the roombas that go around a room almost in a seemingly random pattern.

My experiences, and those vary of course, was that management in corporate America would rather layoff recalcitrant people (or even ones they just didn't like) and suffer the fallout than keep them around. When I was laid off, it took most firms a good year or so to deal with the fallout. In management's opinion, NOBODY is indispensable unless they're the chief architect and that guy usually already is well liked and his mood swings viewed as "eccentric."

Another aspect of "agile" which wasn't in the manifesto but became associated with it was 'open office'. In a field of introverts who are expected to work hard to solve problems, it's considered "collaborative" to force all of them into a single room together, no partitions, with continual noise in the background OR absolute silence from everyone wearing headphones. With 3rd world outsourcing and cheap labor, these sweatshops smell awful. Young people won't mind and even have fun at first, but there's emotional buildup living under continual surveillance from cameras, security guards, and hundreds of prying eyes. This has been somewhat mitigated, temporarily, by COVID and remote telework.

Another aspect of corporate America in general which was applied to IT tech (perhaps not high level coding) was Stacked Ranking. People get laid off just for being "bottom performers", not because they are doing a bad job. So now you're in a room with dozens, even hundreds of people who are looking for any way to badmouth you so they don't get whacked first.

This leads to bullying. In IT in general, it's the worst. If you're not in a clique or identity group, you have a big target on your back. Particularly due to the industry being based upon results rather than credentials (such as semi-licensed engineering professions like architecture), many of the workers are low class or emotionally immature.

I know several people who decided to exit the field and retire about 10 years ago. President Trump has stanched the bleeding a little. I hope FullThrottleTX's experiences are better.
I enjoyed your observations about agile. Agile basically says "We have no methodology or engineering discipline so we will call this state of affairs "agile." In other words we shall pay homage to our sloppiness and call it a methodology.
 
I enjoyed your observations about agile. Agile basically says "We have no methodology or engineering discipline so we will call this state of affairs "agile." In other words we shall pay homage to our sloppiness and call it a methodology.
The ONLY thing I liked about the Agile manifesto was the concept of sustainability and not cramming at the last minute to push out releases. If you're going to push out crap, at least push it out regularly. :)
 

Justin C

Newbie
1) I don't like the culture of most of tech. It's definitely the belly of the beast in terms of SJWs and weaker men. This is getting worse over time. Most of the men you'll meet in tech you probably won't want to hang out with. White girls in tech roles are often the worst you'll ever meet.
This was the biggest demotivator for me. I looked at the landscape and saw how pozzed all these companies were and it ruined all my interest. I see myself as decently intelligent and I am cut out for this kind of work, but if I'm not around masculine men with some virility I just feel unmotivated and dead inside.

I think it really depends on the language though. The harder the language the less retards there will be (duh). So if you really want to be a programmer you should be doing C++ and those guys you will be working with probably wont care about virtue signalling about BLM. They will most likely be old, have a family, and a life that doesn't revolve around consumerism.

If you're doing web development (easy), writing javascript (easy), then yeah your workplace will be flooded with these types.
All your other points are great too, but that one was the biggest deal breaker for me.
 

Posadskiy

Newbie
The ONLY thing I liked about the Agile manifesto was the concept of sustainability and not cramming at the last minute to push out releases. If you're going to push out crap, at least push it out regularly. :)
Well, that is the core of agile—what lets us iterate super fast? Optimize that. Then improve the process around that backbone of a short feedback loop. Everything is supposed to be geared to that. Unfortunately what results is basically a diagnostic tool for uncovering what's dysfunctional about each organization. But the diagnosis happens faster and more efficiently than big design up front did!
 
Top