As a kid, I aspired to be a programmer. As an adult, I succeeded, and I stuck around for a good long while. There are a lot of reasons to like working tech, obviously: the salary, the flexible working environment, the prestige, the opportunity to build products that real people use, the chance to play with new technology, and of course working with occasionally brilliant colleagues.
I tried to convince myself that these advantages made it worthwhile to sit alone in a dark room for >10 hours a day, but in the end I couldn't. I was spending more time wrestling with package managers, version conflicts, obtuse configuration files, pointless deadlines, egotistical colleagues, and almost zero time solving interesting problems on products that I care about. You might argue that I should have just found a better job, and I did, several times, but I found that no matter how much enthusiasm I had for a job at the beginning, eventually it got bogged down in software engineering detritus. I didn't much care for my colleagues: no offense to those present, but I just don't really like tech people, despite the fact that I obviously am one of them.
Through a series of coincidences, I found myself with an opportunity to teach programming at the university level. It was a lot of fun: I can talk about problems that interest with me with people who want to hear it. I operate with very little supervision. I still get to learn new technology, but fortunately I can ignore the rough edges and focus on the benefits. Meetings are minimal. The salary is adequate for my lifestyle. Best of all, I get to interact with real, live human beings. (Although at the moment, of course, we're doing everything via Zoom.) Fundamentally, the problems I'm solving are not technology problems, but human problems. At this stage in my life, this is more interesting.
I never imagined I'd end up a teacher, partly because I was a terrible student. Over the years, I had gone back and forth between industry and academia but now I think I'm in academia to stay: there's nothing I miss about slinging bits for a living.
Ironically, I'm helping my students enter a career that I left, but I let them make their own life decisions.
> I was spending more time wrestling with package managers, version conflicts, obtuse configuration files, pointless deadlines, egotistical colleagues, and almost zero time solving interesting problems on products that I care about.
That squares with my experience of software development. It's like being a furniture maker but spending 80% of your time fixing your goddamn hammer because it keeps breaking and no better hammers exist, or consulting glue-drying tables because they keep changing your glue on you every hour or two and for no good reason every single glue performs differently while accomplishing the same thing.
... and then most of the remaining 20% is meetings and communication, which would be fine if you had more time to do the thing you're actually trying to do.
And when you're doing woodworking and has to do some repetitive task you make a jig or a template for your router.
This is something that you're supposed to know on the first day after you finish apprenticeship.
In the modern tech industry you need authorization from your product owner/manager and engineering manager just to build a new tool or abstraction to automate or speed up your own job, because god forbid you do anything that's not in JIRA.
My attraction to tech is the certainty of digital. In a messy analogue world, it provides a semblance of predictability.
But my PC has recently started crashing for no obvious reason. The analogue has crept into the digital. Every error message is different. Parts work when tested in isolation. The whole is less than the sum of the parts.
It's really quite annoying, and I'm enjoying walks in the park more these days than typing on a keyboard. I put up some shelves the other day. They are still up. An update won't break them. Reliable.
Experiences like this are one of the major reasons I decided to keep my focus on iOS development rather than pivoting to full-stack as I was considering doing.
The iOS dev experience is far from perfect, and while YMMV, I definitely found I spent _much_ less time fixing my hammer when I'm building for a single platform using a single language in a (largely) excellent IDE.
Sometimes I think there must be engineers out there who enjoy the hammer fixing and glue-drying that comes with the rapidly changing full-stack development landscape.
It's the same for all kinds of work outside of academia.
I studied aerospace engineering and day-to-day it's exceedingly rare to need any math beyond basic trigonometry. 80% of the time it's useless meetings, emails, paperwork; only sometimes it's actually useful or fun. Some people study business for years and end up splitting their days between sitting in meetings and updating Gantt charts.
> I just don't really like tech people, despite the fact that I obviously am one of them.
Wow, this resonates with me. I have never liked my colleagues at any job, and I hate talking about tech with people outside of things related to work. I find tech people difficult to get along with and the conversations don't interest me. I say this knowing I could very well fit the same description but here's the thing:
I find that often tech people replace an entire personality with video games / following the latest tech releases / anything related to their job. Almost all "water cooler chat" at tech companies is what game they played on the weekend, what the latest steam sale is, what the latest tv show is, what new programming language they're learning. Like, please. Can we talk about something else?
I can handle the shop-talk, but what bothers me about tech-guys (I've never had problems with female co-workers) is that they have their self-worth tangled up with their being the most-correct. They just can't handle being disagreed with.
> entire personality with video games / following the latest tech releases / anything related to their job.
Sounds like me if you throw in anime :) But, what's wrong with that? Other people do the same thing but with sports or music or raising kids or "hanging out with friends" or whatever else they fancy, but one is no more a "real personality" than the other, though, people with other interests always seem to have no real personality and be all about that lame thing they like, don't they? :)
> I find that often tech people replace an entire personality with video games / following the latest tech releases / anything related to their job. Almost all "water cooler chat" at tech companies is what game they played on the weekend, what the latest steam sale is, what the latest tv show is, what new programming language they're learning. Like, please. Can we talk about something else?
Interesting. I've worked at plenty of companies and I rarely met people like that. Maybe it's an American quirk (I've mostly worked in Europe) or perhaps it's specific to tech companies? I've mostly worked in non-tech (government, banking, telcos, with some simple web startups) and people there are fairly well-rounded. It may be that big tech is selecting for the biggest brainiacs in their hiring process, and being a brainiac correlates with having a one-dimensional personality? I've certainly meet a couple of people like that when interviewing at some of tech's household names.
Thanks for sharing this. What you described in your past is EXACTLY how I feel now, and how I have felt over the last couple of years. Especially the line "I should have just found a better job, and I did, several times" is EXACTLY how I feel too. You've even nailed exactly how I feel with "I was spending more time wrestling with package managers, version conflicts, obtuse configuration files, pointless deadlines".
I really enjoyed teaching guitar and talking to people when I was younger so I've slowly been creating educational content on LinkedIn and YouTube for software engineers. The main thing preventing me from taking a jump is my immigration status (I'm not American and I'm working on my green card right now). I'm glad this is working out for you!
Honestly, I don't know if there is such a thing as the perfect job.
I suspect the daily grind becomes apparent regardless the career
choice.
I can imagine how doing the same thing for 20+ becomes dull and uninteresting, especially if you have arbitrary
deadlines, superiors to report and so on.
The way that I personally cope with this is, accepting the fact that my job is a job and at the end of the day, the only thing that really fulfils my life are good health, exercising and spending time with loved ones.
Whilst I try to enjoy my job as much as I can, it's just a means to an end.
I think a trap that some of us fall into is letting our careers define who we are and once that happens, it becomes very easy to lose the sense of self.
That's where I'm headed. I was lucky enough to land a part-time teaching gig (US equivalent: adjunct?) at a local University through my own academic studies there, almost completely by accident (they were short-staffed and kept asking until I said yes). I love it. I am planning to make the jump from my rather depressing current tech role as soon as I'm done with my doctorate. I can apply for (and hopefully receive) research funding, or join in on others projects. Or I can teach as much as I like, or both. I can help people. The pay cut is substantial - around 40%, personally - but it's the best job in the world.
> wrestling with package managers, version conflicts, obtuse configuration files
The top answer also mentions this. Yours is currently second-top.
I hope developers get the message.
I'm SO tired of trying to navigate around the mountains of pure garbage every time I want to work on a new project.
I long for the days when adding new functionality to your project was as easy as including a single external file, and when code repositories didn't automatically come with ten different utterly useless metadata files.
I see the problem that our tooling is diverse and assembled from parts. You can pick a compiler from column A, a version control from column B, and GUI framework from column C, a message queue from column D, etc. And somehow, it's is possible to make them all work together. We love having that flexibility and choice.
But we pay a price in the added complexity of making all the pieces play together. A sibling comment mentions Turbo Pascal, as a contrast to today's programming environment. Yeah, Turbo Pascal was great, but it was also an all-in-one kit: you couldn't even use your own linker, you had to use the built-in TP linker. In a sense, it was a walled-garden Apple-style development environment. But it worked, it was easy, and it was fast.
The closest we have to that today is Visual Studio. I'd argue that the (mostly) all-in-one nature of Visual Studio and C# relieves a lot of the headaches of the more traditional open source toolset, at the expensive of less flexibility.
This is not an argument in favor or against the Microsoft world, just an observation.
In a way I think it's the current trend of rejecting GUIs. It certainly helps with automation, but I'm afraid we've thrown the baby out with the bathwater.
Does anyone remember Borland's VCL, Rox desktop or Acme from Plan 9? All vastly different, but all enabling great workflows. I would like to dive in GUI programming more, but I'm too picky regarding technologies. Closest to my ideal is Tcl/Tk and Lazarus it seems.
I say it as a guy spending most of his time in terminals for 15 years, mostly by choice.
Wrapping my head around modules, packages, and libraries while learning Python a while back was the biggest roadblock and most discouraging part. Trying to figure out why certain things wouldn't be installed was a slog. At the same time, this struggle definitely taught me much more than I would've learned otherwise. One topic it pushed me into unwillingly was containers which was definitely a benefit in the long run.
If you have a masters and are willing to be a relatively low-paid adjunct, my impression is "yes," particularly in CS, where relatively few people want to be adjuncts.
I don't think it's easy to find jobs that pay at middle-class levels in many larger cities.
In my experience, in the job market right now in the US, universities are positively salivating at the chance to hire experienced tech people into teaching roles. This is because lots of students want to study CS, and not a lot of people want to teach it (being that qualified people usually either go into industry, or go into research).
The salary may not be great, if you have experience and good student evaluations, you are in a strong negotiating position.
Some caveats: getting a university teaching job is a lot easier than getting a university research/teaching job. Previous teaching experience is a big plus, as is previous industry experience. PhD is nice, but not required (I don't have one).
There's a scene early in "Halt and Catch Fire" (IMO the best tech-focused fiction show, basically a Mad Men take on the early breakthroughs in computing from personal computers through to the internet) where Joe the salesman tells Gordon the engineer, "Computers aren't the thing. They're the thing that gets us to the thing."
I looked into teaching programing once. What I found has horribly designed classes teaching in poor ways and I could tell the likelihood of me being able to re-write some of the curriculum was close to zero and I'd have to deal with tons of school politics.
That doesn't correspond to my experience at all. Where did you find that situation?
I imagine it might be different in secondary school education, but at the university level, I find that no one really cares what I do, as long as the students don't complain. I always redesign the curriculum to suit my tastes and interests, and I've never gotten any pushback from admin.
Basically, the department assigns me classes to teach, and after that I'm on my own. Once a semester a senior faculty member observes my lecture, mostly to make sure that I haven't shown up drunk. The only politics I'm exposed to is on the hiring committee.
To me, it sounds like their problem is they aren't introverted enough for the job (which is totally fine, but just an observation).
All jobs will have x% of nonsense and y% of what you actually really enjoy doing, and I think as long as y >= 10% then you'll do okay.
Honestly, I like sitting by myself and grappling with tech problems. It's nice that I'm allowed to sit inside my own head and think all day. Maybe it's because I'm young enough that the problems I'm facing still seem somewhat novel. But perhaps it's true that OP is more extroverted and doesn't enjoy that nearly as much.
Good on them for finding a better career fit. If I had to interact with people all day, I would die.
> I didn't much care for my colleagues: no offense to those present, but I just don't really like tech people, despite the fact that I obviously am one of them.
A couple years ago I nearly got the opportunity to teach at a Bootcamp (one of the non-scammy ones). I got turned down very late in the process mainly on lack of experience, but I really felt strongly that I would enjoy it, and be good at it. One of my strongest skills is articulating concepts, and there's something enticing about forever remaining adjacent to that part of the journey where code is really exciting, before it becomes a drudgery.
Anyway. I hadn't really thought about it in a while, but maybe I'll try for that again in the future. I don't hate bit-slinging quite yet ;)
I second the package managers hell It just makes my life miserable when working with NodeJS or any JavaScript library, or the number of Framework libraries out there that makes every choice an endless debate.
They don't ask. If they did ask, I'd say that tech employers are designed intentionally to subsume as much of your life as they can. If you want to have your own life, you need to stake a claim.
More controversially, I'd say that any labor relationship is necessarily exploitative, and doing any work beyond the minimum means that you are giving more than you're getting and thus being abused. But that's not advice for having a prosperous career. :)
Can you elaborate more on how you got into the teaching position? This is a path that intrigues me as well but I also had mediocre grades and I never even tried to go to grad school. However I have been quite successful in my career (worked for the NYT and currently for a FAANG) but like you I am getting burnt out by the daily realities of the industry.
It was by chance. First, I started teaching English as a foreign language in Europe: that provided a useful background in pedagogy, although has nothing to do with computers. Second, I was offered an adjunct position at a university where I was a student, which gave me a taste of teaching CS.
You'll probably need at least a Master's degree if you want to teach, but a strong industry background might be enough. You might try approaching a local university (don't discriminate, even community colleges need teachers) about teaching one class a semester. If you like it, you can try a better school or go for a full-time position.
I haven't left myself yet, but at almost-55 I know a fair number who have. Here's what I know of what their answers would be.
The first simply had another passion - travel. Work was just a way to pay for that. Eventually went to work for an agency, been there a long time and AFAICT couldn't be happier (despite being less well off materially). I've known a couple of others who fit this pattern. One left the industry to raise goats and make cheese instead.
Multiple have left to become full time parents. I hope they don't regret it, since this group includes my wife. ;)
Several others have left the industry but have not necessarily left tech. Some do light consulting. One's writing a book. Most are working on long-deferred personal tech projects.
I just about joined this third group before my savings took a 15% hit, so I might as well say why. I'm tired. I'm tired of the artificial deadlines, and processes that slow people down more than they improve quality, and the omnipresence of coworkers who exhibit every kind of bad engineering or interpersonal behavior (even though others are awesome). I want to enjoy making things again, and the moments when I can do that within the industry seem all too fleeting. Even the best of my dozen jobs stopped being fun, or just stopped. The thought of going through a modern tech interview process yet again so that I can do all the rest again just fills me with dread.
> I'm tired. I'm tired of the artificial deadlines
I think the ephemeral nature of software really plays poorly with the artificial deadlines, and the artificial importance of some projects in general.
Eventually you recognize the pattern, and there's no logical way to justify it, so it's harder to motivate yourself. You know the deadline isn't real, and you know the software will be rewritten next year with some new technology. You may even be rewriting last years right now.
Tooling churn hurts here as well, because eventually after enough iterations, new tools are just in the way of getting real work done. You know it's not gaining you anything by putting in the effort to learn Toolchain X, because arbitrarily different Toolchain Y is about to become the new industry fad, and will make all that prior arbitrary knowledge pointless.
Some of my favourite years in software were when I worked at an eCommerce agency that served only one framework. Learning I invested directly impacted my work for the coming years. I began to master the tools, which feels amazing. I could also see the real world effect the software had. Sure, it was simple, selling products to people. But commerce is an interesting problem space, and a fundamental part of society, so it was neat to be a part of it and see real companies I worked with grow because of my software.
This is why open source software at least is good -- it tends to have much longer lifetimes, so chances are decent that your code will still be running decades down the line (so long as you picked the right project).
For example, one of the open source projects that I contributed to most heavily, PyWikiBot, has been around for almost two decades now, and most of my contributions were made ~13-15 years ago, plus some minor maintenance since then, and most of those features I wrote are still in continuous use to this very day by me and many others. And that's just some random tooling library for Wikipedia stuff; imagine how much long-term impact your work would have if you were editing MediaWiki itself, or the Linux kernel, or gcc, or any number of other incredibly widely-used things.
> the ephemeral nature of software [...] it's harder to motivate yourself
It's been a few years since I left the industry, and I'd be surprised if any of the code I wrote professionally hasn't been superseded by now. Even worse, plenty of it was scrapped before it was even released.
Of course, I knew this would be the case when I was writing it - that does indeed affect one's motivation.
I am in the same shoes and would add the reason of no pride or sometimes shame. Not only in the many marginal products I am forced to squeeze out rapidly and in parade but of belonging to this group of profession. Basically both stems in the pretentious design of incomplete products making people more miserable than successful or satisfied. Phones, 'smart' appliances, revolutionary technology, software and OSes promise the world and beyond (twice!) bringing tons of 'dream' (sometimes nightmare) functionality but f*k up even the most elementary function (repeatedly!) while being unreliable to the extent that it needs to be updated in the frequency of watering your plants, to no avail.
Despite the mounting problems the industry takes itself very seriously with infant obscure practices considered rock solid fundamentals and with robotic approach to human resources and processes. Talking to recruiters feels like they expect not thinking humans but custom programmed organic mechanisms able to type and can be judged by ticking checklists in a couple of minutes.
In seeking satisfaction in self and results I left several places for something assumedly better, sometimes leaping into unknown, but my bitterness just mounts with each position. Financial limits forces me to seek engagement in something I am experienced in but I am afraid my lethargy shines though of my smiley and optimistic face I wear for interviews. I have little trust in those sitting in front of me.
I hope I can figure out something better, meanwhile trying to make money for living.
> The thought of going through a modern tech interview process yet again so that I can do all the rest again just fills me with dread.
A couple years older than you. I was working a nice gig at a startup until November. Nice because the owners were nice, the coworkers were nice and it was an interesting embedded application involving renewable energy - so not the run-of-the-mill web app. They ran out of funding in November but there was the possibility (prior to covid-19) that they would get more funding so I didn't look around much hoping I could just go back to work for them when they get more funding and avoid having to interview again.
Of course, that's not likely to happen at this point given where the economy is at. And I still can't bear the thought of interviewing again. So I'm effectively out of tech at this point. If someone comes along and offers me a gig without the arduous interview process I'd take it, but otherwise, I think I'm done.
You know, people worry about age discrimination a lot because there aren't a ton of older programmers around. But when the discussion comes up, people don't talk much about the reasons you describe.
Sure, bad programmers age out because they were never great at programming in the first place. But I would assume the HN crowd falls in the top half of competence because there are so many people here who seem smarter about programming than me. If you're good, you don't have to worry.
Maybe good programers age out because the technical side gets too repetitive, their jobs become more about politics, and they have enough money to change tracks later in life.
The changing nature of the job is definitely part of it. When you're on the steepest part of the learning curve, that makes up for a lot. I still learn plenty, but less than I used to. Instead, I spend a good deal of my time correcting mistakes made by those who hadn't learned yet. Mistakes happen, that's OK, but it's still less fun than learning new things myself. At my age/experience there's also an expectation that I'll do more "force multiplier" work - for me it's often fixing broken infrastructure - so that others can stay more productive with straight coding. Again, nothing wrong with it, but still less fun.
When it gets downright tiresome is when being the project janitor puts me in conflict with young "tech leads" who denigrate those contributions because they've only ever worked on that one project where other people took care of those things for them. It's like the difference between living in a college dorm where everything's taken care of for you, vs. having a house and kids and bills of your own. Being a strict individual contributor with no cares beyond the one piece of code in front of me is just a fond memory.
Unfortunately, few companies will hire someone with 30+ years' experience just to write code, even for a salary appropriate to that role. Companies want to pay those lower salaries not only for direct work product but also for growth potential. The worst part is, I know they're not wrong. The only way to do the kind of work I really enjoy, and only that work, is as a hobby.
You don't have to worry about keeping your current job, but getting a different one becomes a lot harder. Your 27 year-old interviewer might be thinking "You're my dads age, and my dad is crusty. No way you can wrap your head around lib-of-the-week.js"
I had a coworker at BigCo who would disappear for a month every summer. I wasn't paying attention to other PTO days through the year so I assumed that extra PTO for work anniversaries added up faster than I thought.
Turns out they were just taking a leave of absence, every year, to travel, and just eating the pay cut.
I thought engineering enabled travel. I met countless "digital nomads" traveling the world, doing 20 hours of work a week at cafes. Making bank and getting to travel all they want.
In this particular case, it was adventure travel - savannahs in Africa, mountains in South America, icebergs in Antarctica. It was also 25 years ago. The "digital nomad" thing wasn't an option for this person.
What is a full time parent? I remember as a kid that I was always encouraging my mom to take up hobbies so that she's leave me alone so I could get on with my own stuff. I can't imagine putting all your identity into being a parent. Kids grow up extremely fast.
All the more reason to be a full-time parent. You get a return on your investment extremely fast. When you're old, you have adult kids that care about you, and hopefully grandchildren which are basically just children but free because you're not the primary caretaker anymore. All the fun with much less fuss.
I presume GP doesn't mean someone with no other identity, just someone who is doing it instead of a FT paid role. I could be a full-time plumber and still have an identity outside of plumbing
I left it before I really got started, and looking back at it now, I don't regret it. In my mid-twenties I decided I'd rather be an electrician. I don't sit on my ass all day. I get to meet new people, and see new places all the time. Some places that few ever get to see. Power plants, clock towers, police stations, homeless shelters, church attics. All sorts of stuff. Not all of it equally exciting, but a lot of it interesting. I get to build physical things that people will use for many many years into the future.
I get to play with lots of tech still, except it's more of the layer 1 stuff. Doing fiberoptical backhaul work, or installing DSL in peoples homes.
I'm still interested in both hardware and software. I run Gentoo Linux on my machines at home, and I have a DO VPS for "cloud things", but I'm glad it's not my job, because software issues can piss me off like no other thing is capable of.
Find your way into Industrial Electrical work if you can. You get a strong mix of tech and electrical, moreso than Residential, can't really say the comparison to Commercial work though...
My company (Automation & controls) is partnered with electricians for all the jobs we bid on. Having electricians that know wiring for specialized bus networks, how to do basic troubleshooting on control circuits and all that is amazing to have.
Alternatively, for those reading this in the tech side, the job is super engaging. I get to work on programming machines the size of my bedroom. I get to travel and see equally interesting locations (Dam spillways, Agricultural facilities inland and at port, underground mines, etc.). The fact that I get to get out of my office a few days a month is a big reason I've stuck with my job for as long as I have (7+ years now)
EDIT TO INCLUDE SOME PICTURES (Both the Cool and the Ugly):
I'm very interested in pivoting toward electrical engineering from computer engineering (for all the reasons mentioned above). Do you have any advice on how to do this? I don't even know where to begin, but I imagine there's a lot of certification and/or educational requirements.
I recently became kinda intrigued by PLCs and even consider buying one just to play with it (idk maybe it's the novelty of it) and the various programming languages for them and how they can be so different. What kind of education do you need to work on this kind of stuff?
> Find your way into Industrial Electrical work if you can. You get a strong mix of tech and electrical, moreso than Residential, can't really say the comparison to Commercial work though...
Avoid residential electrical work if you are technology oriented! Yes, yes, home automation and all that, but that pales in comparison with industrial work. Commercial in theory has the same potential, but (at least here in Italy) the jobs are ..hm.. dodgy (very poor project management, tasks scattered across sub-sub-sub-contractors so nobody has really a clue of the global picture ..stuff like that)
"because software issues can piss me off like no other thing is capable of."
This in reverse is part of why I am a programmer; it can take two or three days before I'm really pissed at a software problem, but physical stuff really annoys me in mere minutes.
Why? Don't really know. I know a bit of it is that I know how to get myself into trouble in software and then usually get back out much better than I do in the real world, but even so, I had the patience in software to develop that and I really don't for real things.
Yes, it's much easier to hit Undo than it is to remove that bolt that you just snapped the head off, but you can't see because it's elbow deep in the engine bay.
On the other hand, a screw-up can have bigger consequences when your buggy code is used by thousands of users a day.
In a parellell universe, this would've been me. Electrician seem to be the perfect "manual" labor - not a lot of heavy lifts, work with your head a lot, good mix of in- and outdoors.
This is anecdotal, but when I was younger and still figuring out what I wanted to do, I joined a 1 year course that was supposed to prepare people with HS diplomas and other people with practical jobs like electricians and such to study engineering in college. Surprisingly, the vast majority of the men in my class were electricians that had regretted their choice because it was such a dull job with a lot of menial labor, like crawling through very tight areas and otherwise being on your knees a lot and in awkward positions.
You might be surprised by how strenuous electric work can be: pulling a cable bundle through a long conduit run, nailing staples at arm's length overhead, and finishing outlets at knee height.
I got into software mostly for the money so I can fund some extended travel, and when I get back from that extended travel I don't plan to go back into software.
My BF's dad owns an electrical company, and I know BF will most likely end up working there - I've considered in the past joining him. This post is encouraging because it seems like I could get all the movement and outdoor time that I'm missing with coding, and also be building stuff that's useful to people.
Do you see many female electricians? I suspect there are few - any ideas as to why? Is there a lot of heavy/difficult physical labor that I would be unable to do?
I was working as a SWE for a large defense contractor on some pretty neat projects, and I felt like I was good at what I did. It was 40 hour weeks, good benefits, good pay, but I was bored and miserable. I lived in a town with no friends, and was so desperate for a change and some adventure, that I left the industry to join the military.
I took what I call a 12 year sabbatical from tech. I became an officer, went to pilot training, learned lots of new and useful skills, met lots of very good and interesting people, some of whom are my best friends.
Taking off from a short airfield in a blizzard, at night, wearing NVGs is an experience I don't care to re-live, but I'm glad I have something to talk about at parties.
A quote that affected me greatly during the time I was thinking about leaving: "if somebody wrote a book about your life, would anybody want to read it?"
After getting married (to somebody I met during one of my training courses), settling down, and having kids, a quieter, 40-hour-a-week lifestyle started to sound pretty good again. I had always been a hacker at heart, and realized that I was getting to the age where it was probably now-or-never if I wanted to re-enter the industry. So I went back into tech! It's better the 2nd time around.
I think the warning here is that most people will drop out of the pilot program and/or aren't qualified for it in the first place (eyesight, blood pressure, age, fitness to a lesser degree since it's "fixable" within 6 months). There's always army rotary, I guess.
True - but a lot of people self-disqualify because of rumors and urban legends. Make them tell you "no" if it's something you want. There are waivers for many medical issues, but if you don't ask you'll never get one.
I suspect someone joining the military after being in college and private industry has a higher chance of completing the pilot program than someone 18-20 years old which make up the bulk of the military recruits. (Assuming they both meet all physical requirements.)
I love computers since I can remember, and started learning to code when I was still in basic school. This lead me to think that the tech industry was the obvious career for me. During my time in the industry, I felt miserable. I would say that the main reasons for that were:
* Meaninglessness. Most of the projects are simply not necessary, they do not help society in anyway, they just exist to make someone else wealthy.
* Tedium. The intellectual challenges aren't there after a while. There are countless intellectual challenges in the field of computing / computer science, but they are usually precisely the ones that industry has no interest on.
* Micromanagement. "Agile" and similar management practices (yes, I know, you're not doing it right, blah blah blah) are downright humiliating and infantilizing. Almost no other highly skilled professional has to tolerate such level of intrusion on their day-to-day activities. I love deep thinking and creative expression. The modern corporate setting prevents this by design.
* Open-spaces. See above.
* Idealism. I was so excited about the possibilities that the Internet opened for humanity. Now we have ad-tech and horrible exploitation of "gig-economy", warehouse workers and the like. This is definitely not what I have in mind when I started.
* Conformism. The tech industry is extremely conformist. Monetary consideration always wins. Deference to power always wins. "Hacker" used to mean something completely different. Almost opposite to the current definition.
I realized that what I always loved about computing was the endless creative and intellectual possibilities allowed by the medium. This is more or less the opposite of what the industry values, despite what they might advertise endlessly. There is nothing cool about it. It is stale and anti-intellectual.
I don't need a lot of money to be happy. You probably don't either. Time on this earth is the most valuable thing we have, and I would rather spend it waiting tables than enduring one more stand-up meeting.
I think creative nerds are the life-blood of the industry, but they tend to be shy and not assertive, so they have their life controlled by the "business types". I honestly believe that if the nerds told them to fuck off and started spending their time working on things they think are relevant, the world would become much better quickly. This won't happen, I know.
> I honestly believe that if the nerds told them to fuck off and started spending their time working on things they think are relevant, the world would become much better quickly. This won't happen, I know.
Most of the "creative nerds" I have encountered in this industry are arrogant, have grandiose beliefs about their own intelligence and have zero empathy for anybody who is not exactly like them. I don't think things would be much better if they ran the show.
+1 for this. The "business" folk might be filling your day to day with features that only improve conversion rates which is soul draining, of course, but nothing feels worse than working on something interesting surrounded by these wannabe wozniak "nerds" that instill this unspoken aura of "youre too dumb to be in the room with me." THOSE are the people that i hate the most in this industry.
He’s not suggesting that they “run the show”. He’s suggesting that they work on the things that they think are important. The alternative is to ask them to do what they don’t think is important. Doesn’t sound like that’s worked out too well for you.
> I think creative nerds are the life-blood of the industry, but they tend to be shy and not assertive, so they have their life controlled by the "business types". I honestly believe that if the nerds told them to fuck off and started spending their time working on things they think are relevant, the world would become much better quickly. This won't happen, I know.
I recently saw a video about Boeing that concluded that the whole debacle was due to it straying aware from its commitment to good engineering and to trying to please the wall street. It traced back to the source of decline as the purchase of McDonnell Douglas which was mainly done due to Boeing management feeling that they needed better "business types", which was all that McDonnell Douglas.
Slowly, but I am seeing an acceptance and respect towards the nerds/engineering instead of hype men & impressive stock figures. Wall street types are seen as the hyenas/fox in a sheep's skin that need not be celebrated and looked upto.
I'd love to see that video. I would call this "Chipotle Syndrome". It is a long-held hypothesis I have that MBAs are subjectively-motivated rent-seekers looking to pad their resumes and they do so by transient boosts in, say, profits - most infamously by sacrificing product quality (e.g. outsourcing) - leaving the future of the company poorer as they chase the golden parachute. Chipotle is a famous example of a founding team going public, bringing in MBAs, and then having to constantly appease Wall St. rent-seekers until, voila, their food quality suffers; likely because of labor cutting costs introducing unskilled labor to a relatively speaking complicated food preparation scheme.
Meanwhile Wall St. simply downgrades, the MBAs shrug their shoulders and speak about drive-thru ordering as an innovation, the Founders get ousted, and people become sick.
> I think creative nerds are the life-blood of the industry, but they tend to be shy and not assertive, so they have their life controlled by the "business types". I honestly believe that if the nerds told them to fuck off and started spending their time working on things they think are relevant, the world would become much better quickly. This won't happen, I know.
This is how I felt about myself, I spent my early twenty working a job living frugally saving and then quitting to work on my own projects. Failed entrepreneurship was a great lesson in how hard it is build things people want and how easy it is to build things you think people want. The difference is often very subtle small details, but asking the right questions to unearth those details in incredibly challenging.
The amount of things that someone will give their time or attention to our suprisingly small
> I honestly believe that if the nerds told them to fuck off and started spending their time working on things they think are relevant, the world would become much better quickly
there's no way it would happen. The powers in place will descend on you kicking, screaming, and lying to keep the status quo. It happens to any country tries to get rid of central banking or switch to a gold standard.
wars aren't started over human-rights, they are fought when you f%%k with someone's money.
I stated my career early - while I was still in high school. I went from bagging groceries and doing checkouts at a grocery store to programming for a local company my senior year of high school. I continued doing this for my first couple years of college.
But then dot-bomb happened and it looked like the party was over. I looked down at the job opportunities after graduation. I didn't really want to spend the rest of my life wearing a tie, writing bank software and sitting in a cubicle every day, so I decided to try something different.
I became a seasonal park ranger. And it was awesome.
Like most jobs, I got it through knowing someone. My grandparents had volunteered for the NPS and were able to connect me with the right people. I became a seasonal park ranger at Yellowstone.
It's not for everyone. The pay is not great, but you do get lots of good benefits because it's a government job. And you're often living in remote areas (the nearest grocery store was an hour and a half drive from where I was stationed). It's also not conducive to family life if that's your thing (again, the closest school was 1.5 hours away and everyone around me was my coworkers). And the days are long, helping tourists, checking permits, etc. Permanent jobs are also incredibly hard to get - you usually have to do years of seasonal work to accrue enough seniority to get considered for a permanent position.
But the benefits? Being able to crack open a drink after a long day and look up at more stars than I ever thought existed - I spent many nights on the front porch of my cabin looking up at the Milky Way. Hiking, camping, boating on the weekends are easy because I was right there in the park. Clean air, clean water. A good group of coworkers (for me) who legit really care about protecting these astounding natural resources. And a feeling that you're really making a difference and reaching people.
I did this for a few years and they were among my happiest years prior to my marriage. Ultimately, I ended up going back into tech after things recovered. But there are days that I really miss the outdoors and wearing the uniform.
> A good group of coworkers (for me) who legit really care about protecting these astounding natural resources. And a feeling that you're really making a difference and reaching people.
This feeling of 'feel' for a thing, its what I miss in tech personally. Companies offer a service, want a happy customer and make money that way. But a 'feel' for the actual goal and way its done usually lacks. Too many egos...
Agreed. People so rarely bring passion to the job. In fact, they often react with hostility when encountering someone who is genuinely passionate about software (to my mind, because they feel it reflects back on them poorly).
I think the industry is totally wrong about the type of activity that programming is. It's a creative endeavor, not a mechanical one. The best people are the ones who derive joy from it, not just a paycheck.
The rpi started me on electronics, rabbitholed into manufacturing of all kinds... material science, applied chemistry.
I end up looking at nature with both my old eyes and the cold scientific ones. A piece of wood, pale shades, smooth, is also a matrix of nanoscopic sugar fibers. It's odd to confront the two point of views. Same goes for butterfly wings, or flower petals..
Like most people here, I developed myopia fairly soon after starting a cubicle job, and I can’t even see the stars anymore. It’s just a memory now. Even with glasses it’s not the same. Whether staring at a acreen was the cause, or just the thing I wasted it on, it’s gone.
I developed myopia in grade school. Then, in my late 40s, I developed cataracts. When I got replacement lenses, I had one of the eyes set to focus at infinity. And now I can see the stars again.
I was stationed out of south entrance (Snake River district). Closest town was Jackson, Wyoming. There was a small convenience store at Flagg Ranch about 4 miles away, but anything you couldn’t get there required driving to Jackson.
About once a month I’d go to Sams in Idaho Falls, which was usually an all-day trip.
I’ve been up through Bozeman before. Beautiful area!
I left after over 25 years. I love programming and love working with Linux, but the jobs always came down to "help us steal peoples personal information so we can slam them with spam for products the neither want or need." It was unfulfilling. I went back to school and got an MA in history. I teach humanities though I still teach a couple of programming classes. I miss it a little. I would go back in a heartbeat for the right position, but I am through getting mauled in tech interviews which turned into combat trivial pursuit. I love technology and I still create applications mostly for myself or to help automate my school. I get new ideas from HN.
> I am through getting mauled in tech interviews which turned into combat trivial pursuit. I love technology and I still create applications mostly for myself or to help automate my school.
This. Something has definitely changed in the last ~10 to 20 years since the end of the dotcom era of interviewing in the tech industry. Before it was as simple as reading the AUTHORS file in an open-source project like Linux to vouch for a programmer applying to somewhere like Red Hat or Mozilla. But now we are expecting them to write a proof of quicksort's worst-case runtime complexity or to explain the Diffie-Helman public key exchange mathematically on a whiteboard to "see how you think" and "prove programmer ability" which is unnecessarily academic and they either don't use it directly or search on Google for it anyway.
That's just the onsite interviews, pre-interviews are riddled with Leetcode, Hackerrank and Codility tests which can be cheated or the solution can be found on Google. What a shame that these flawed tests still exist.
Interviewing is going to drive me from the industry. I'm skilled - I've consistently provided high value at my jobs - but I'm not formally trained (don't have a CS degree) and I don't have the time anymore to sit around grinding leetcode just so I can land my next gig.
A mix of the fact that most companies I've worked for don't value their workers (they say they do, but their idea of valuing workers is buying fizzy drinks in the office and giving you "unlimited vacation" which just means they pressure you to come back after a few days and don't have to pay out accrued vacation time when you leave), and because they don't care about what they're building or how much it hurts the customer as long as they can increase their bottom line a few percentage points.
That being said, I haven't left but have been wanting to for ages. I'd be more interested in staying if I could find a unionized work place (when Delta cut salaries by 20%, the pilots union was able to negotiate for profit sharing after the hard times were over, when my company did that, they refuse to even discuss whether we'll ever be bumped back up to normal… even if we get paid well already it doesn't mean we shouldn't work together for better working conditions and more of a stake at the table) or a worker owned co-op to work for, but so far that hasn't materialized.
I tried to convince myself that these advantages made it worthwhile to sit alone in a dark room for >10 hours a day, but in the end I couldn't. I was spending more time wrestling with package managers, version conflicts, obtuse configuration files, pointless deadlines, egotistical colleagues, and almost zero time solving interesting problems on products that I care about. You might argue that I should have just found a better job, and I did, several times, but I found that no matter how much enthusiasm I had for a job at the beginning, eventually it got bogged down in software engineering detritus. I didn't much care for my colleagues: no offense to those present, but I just don't really like tech people, despite the fact that I obviously am one of them.
Through a series of coincidences, I found myself with an opportunity to teach programming at the university level. It was a lot of fun: I can talk about problems that interest with me with people who want to hear it. I operate with very little supervision. I still get to learn new technology, but fortunately I can ignore the rough edges and focus on the benefits. Meetings are minimal. The salary is adequate for my lifestyle. Best of all, I get to interact with real, live human beings. (Although at the moment, of course, we're doing everything via Zoom.) Fundamentally, the problems I'm solving are not technology problems, but human problems. At this stage in my life, this is more interesting.
I never imagined I'd end up a teacher, partly because I was a terrible student. Over the years, I had gone back and forth between industry and academia but now I think I'm in academia to stay: there's nothing I miss about slinging bits for a living.
Ironically, I'm helping my students enter a career that I left, but I let them make their own life decisions.
That squares with my experience of software development. It's like being a furniture maker but spending 80% of your time fixing your goddamn hammer because it keeps breaking and no better hammers exist, or consulting glue-drying tables because they keep changing your glue on you every hour or two and for no good reason every single glue performs differently while accomplishing the same thing.
... and then most of the remaining 20% is meetings and communication, which would be fine if you had more time to do the thing you're actually trying to do.
This is something that you're supposed to know on the first day after you finish apprenticeship.
In the modern tech industry you need authorization from your product owner/manager and engineering manager just to build a new tool or abstraction to automate or speed up your own job, because god forbid you do anything that's not in JIRA.
But my PC has recently started crashing for no obvious reason. The analogue has crept into the digital. Every error message is different. Parts work when tested in isolation. The whole is less than the sum of the parts.
It's really quite annoying, and I'm enjoying walks in the park more these days than typing on a keyboard. I put up some shelves the other day. They are still up. An update won't break them. Reliable.
The iOS dev experience is far from perfect, and while YMMV, I definitely found I spent _much_ less time fixing my hammer when I'm building for a single platform using a single language in a (largely) excellent IDE.
Sometimes I think there must be engineers out there who enjoy the hammer fixing and glue-drying that comes with the rapidly changing full-stack development landscape.
I studied aerospace engineering and day-to-day it's exceedingly rare to need any math beyond basic trigonometry. 80% of the time it's useless meetings, emails, paperwork; only sometimes it's actually useful or fun. Some people study business for years and end up splitting their days between sitting in meetings and updating Gantt charts.
That's just how work is.
Wow, this resonates with me. I have never liked my colleagues at any job, and I hate talking about tech with people outside of things related to work. I find tech people difficult to get along with and the conversations don't interest me. I say this knowing I could very well fit the same description but here's the thing:
I find that often tech people replace an entire personality with video games / following the latest tech releases / anything related to their job. Almost all "water cooler chat" at tech companies is what game they played on the weekend, what the latest steam sale is, what the latest tv show is, what new programming language they're learning. Like, please. Can we talk about something else?
Sounds like me if you throw in anime :) But, what's wrong with that? Other people do the same thing but with sports or music or raising kids or "hanging out with friends" or whatever else they fancy, but one is no more a "real personality" than the other, though, people with other interests always seem to have no real personality and be all about that lame thing they like, don't they? :)
Interesting. I've worked at plenty of companies and I rarely met people like that. Maybe it's an American quirk (I've mostly worked in Europe) or perhaps it's specific to tech companies? I've mostly worked in non-tech (government, banking, telcos, with some simple web startups) and people there are fairly well-rounded. It may be that big tech is selecting for the biggest brainiacs in their hiring process, and being a brainiac correlates with having a one-dimensional personality? I've certainly meet a couple of people like that when interviewing at some of tech's household names.
I really enjoyed teaching guitar and talking to people when I was younger so I've slowly been creating educational content on LinkedIn and YouTube for software engineers. The main thing preventing me from taking a jump is my immigration status (I'm not American and I'm working on my green card right now). I'm glad this is working out for you!
I suspect the daily grind becomes apparent regardless the career choice.
I can imagine how doing the same thing for 20+ becomes dull and uninteresting, especially if you have arbitrary deadlines, superiors to report and so on.
The way that I personally cope with this is, accepting the fact that my job is a job and at the end of the day, the only thing that really fulfils my life are good health, exercising and spending time with loved ones.
Whilst I try to enjoy my job as much as I can, it's just a means to an end.
I think a trap that some of us fall into is letting our careers define who we are and once that happens, it becomes very easy to lose the sense of self.
The top answer also mentions this. Yours is currently second-top.
I hope developers get the message.
I'm SO tired of trying to navigate around the mountains of pure garbage every time I want to work on a new project.
I long for the days when adding new functionality to your project was as easy as including a single external file, and when code repositories didn't automatically come with ten different utterly useless metadata files.
I see the problem that our tooling is diverse and assembled from parts. You can pick a compiler from column A, a version control from column B, and GUI framework from column C, a message queue from column D, etc. And somehow, it's is possible to make them all work together. We love having that flexibility and choice.
But we pay a price in the added complexity of making all the pieces play together. A sibling comment mentions Turbo Pascal, as a contrast to today's programming environment. Yeah, Turbo Pascal was great, but it was also an all-in-one kit: you couldn't even use your own linker, you had to use the built-in TP linker. In a sense, it was a walled-garden Apple-style development environment. But it worked, it was easy, and it was fast.
The closest we have to that today is Visual Studio. I'd argue that the (mostly) all-in-one nature of Visual Studio and C# relieves a lot of the headaches of the more traditional open source toolset, at the expensive of less flexibility.
This is not an argument in favor or against the Microsoft world, just an observation.
Does anyone remember Borland's VCL, Rox desktop or Acme from Plan 9? All vastly different, but all enabling great workflows. I would like to dive in GUI programming more, but I'm too picky regarding technologies. Closest to my ideal is Tcl/Tk and Lazarus it seems.
I say it as a guy spending most of his time in terminals for 15 years, mostly by choice.
> I'm SO tired of trying to navigate around the mountains of pure garbage every time I want to work on a new project.
It sounds to me like you are also... developers? :)
I don't think it's easy to find jobs that pay at middle-class levels in many larger cities.
The salary may not be great, if you have experience and good student evaluations, you are in a strong negotiating position.
Some caveats: getting a university teaching job is a lot easier than getting a university research/teaching job. Previous teaching experience is a big plus, as is previous industry experience. PhD is nice, but not required (I don't have one).
This is what we’ve lost in our industry in the last 25 years, and to the worlds detriment.
That's been my motto since I heard it there.
Have you somehow avoided this stuff?
I imagine it might be different in secondary school education, but at the university level, I find that no one really cares what I do, as long as the students don't complain. I always redesign the curriculum to suit my tastes and interests, and I've never gotten any pushback from admin.
Basically, the department assigns me classes to teach, and after that I'm on my own. Once a semester a senior faculty member observes my lecture, mostly to make sure that I haven't shown up drunk. The only politics I'm exposed to is on the hiring committee.
All jobs will have x% of nonsense and y% of what you actually really enjoy doing, and I think as long as y >= 10% then you'll do okay.
Honestly, I like sitting by myself and grappling with tech problems. It's nice that I'm allowed to sit inside my own head and think all day. Maybe it's because I'm young enough that the problems I'm facing still seem somewhat novel. But perhaps it's true that OP is more extroverted and doesn't enjoy that nearly as much.
Good on them for finding a better career fit. If I had to interact with people all day, I would die.
I can totally relate to this.
Anyway. I hadn't really thought about it in a while, but maybe I'll try for that again in the future. I don't hate bit-slinging quite yet ;)
More controversially, I'd say that any labor relationship is necessarily exploitative, and doing any work beyond the minimum means that you are giving more than you're getting and thus being abused. But that's not advice for having a prosperous career. :)
You'll probably need at least a Master's degree if you want to teach, but a strong industry background might be enough. You might try approaching a local university (don't discriminate, even community colleges need teachers) about teaching one class a semester. If you like it, you can try a better school or go for a full-time position.
The first simply had another passion - travel. Work was just a way to pay for that. Eventually went to work for an agency, been there a long time and AFAICT couldn't be happier (despite being less well off materially). I've known a couple of others who fit this pattern. One left the industry to raise goats and make cheese instead.
Multiple have left to become full time parents. I hope they don't regret it, since this group includes my wife. ;)
Several others have left the industry but have not necessarily left tech. Some do light consulting. One's writing a book. Most are working on long-deferred personal tech projects.
I just about joined this third group before my savings took a 15% hit, so I might as well say why. I'm tired. I'm tired of the artificial deadlines, and processes that slow people down more than they improve quality, and the omnipresence of coworkers who exhibit every kind of bad engineering or interpersonal behavior (even though others are awesome). I want to enjoy making things again, and the moments when I can do that within the industry seem all too fleeting. Even the best of my dozen jobs stopped being fun, or just stopped. The thought of going through a modern tech interview process yet again so that I can do all the rest again just fills me with dread.
I think the ephemeral nature of software really plays poorly with the artificial deadlines, and the artificial importance of some projects in general.
Eventually you recognize the pattern, and there's no logical way to justify it, so it's harder to motivate yourself. You know the deadline isn't real, and you know the software will be rewritten next year with some new technology. You may even be rewriting last years right now.
Tooling churn hurts here as well, because eventually after enough iterations, new tools are just in the way of getting real work done. You know it's not gaining you anything by putting in the effort to learn Toolchain X, because arbitrarily different Toolchain Y is about to become the new industry fad, and will make all that prior arbitrary knowledge pointless.
Some of my favourite years in software were when I worked at an eCommerce agency that served only one framework. Learning I invested directly impacted my work for the coming years. I began to master the tools, which feels amazing. I could also see the real world effect the software had. Sure, it was simple, selling products to people. But commerce is an interesting problem space, and a fundamental part of society, so it was neat to be a part of it and see real companies I worked with grow because of my software.
For example, one of the open source projects that I contributed to most heavily, PyWikiBot, has been around for almost two decades now, and most of my contributions were made ~13-15 years ago, plus some minor maintenance since then, and most of those features I wrote are still in continuous use to this very day by me and many others. And that's just some random tooling library for Wikipedia stuff; imagine how much long-term impact your work would have if you were editing MediaWiki itself, or the Linux kernel, or gcc, or any number of other incredibly widely-used things.
It's been a few years since I left the industry, and I'd be surprised if any of the code I wrote professionally hasn't been superseded by now. Even worse, plenty of it was scrapped before it was even released.
Of course, I knew this would be the case when I was writing it - that does indeed affect one's motivation.
A couple years older than you. I was working a nice gig at a startup until November. Nice because the owners were nice, the coworkers were nice and it was an interesting embedded application involving renewable energy - so not the run-of-the-mill web app. They ran out of funding in November but there was the possibility (prior to covid-19) that they would get more funding so I didn't look around much hoping I could just go back to work for them when they get more funding and avoid having to interview again.
Of course, that's not likely to happen at this point given where the economy is at. And I still can't bear the thought of interviewing again. So I'm effectively out of tech at this point. If someone comes along and offers me a gig without the arduous interview process I'd take it, but otherwise, I think I'm done.
Sure, bad programmers age out because they were never great at programming in the first place. But I would assume the HN crowd falls in the top half of competence because there are so many people here who seem smarter about programming than me. If you're good, you don't have to worry.
Maybe good programers age out because the technical side gets too repetitive, their jobs become more about politics, and they have enough money to change tracks later in life.
When it gets downright tiresome is when being the project janitor puts me in conflict with young "tech leads" who denigrate those contributions because they've only ever worked on that one project where other people took care of those things for them. It's like the difference between living in a college dorm where everything's taken care of for you, vs. having a house and kids and bills of your own. Being a strict individual contributor with no cares beyond the one piece of code in front of me is just a fond memory.
Unfortunately, few companies will hire someone with 30+ years' experience just to write code, even for a salary appropriate to that role. Companies want to pay those lower salaries not only for direct work product but also for growth potential. The worst part is, I know they're not wrong. The only way to do the kind of work I really enjoy, and only that work, is as a hobby.
You don't have to worry about keeping your current job, but getting a different one becomes a lot harder. Your 27 year-old interviewer might be thinking "You're my dads age, and my dad is crusty. No way you can wrap your head around lib-of-the-week.js"
Which people you're talking about? The survivors who are still working in the field? Or those who had heart attacks at their desks at 50?
Turns out they were just taking a leave of absence, every year, to travel, and just eating the pay cut.
I thought engineering enabled travel. I met countless "digital nomads" traveling the world, doing 20 hours of work a week at cafes. Making bank and getting to travel all they want.
If a couple decides they want four kids, the numbers can work out, for 10 years or so - especially if childcare is expensive.
I get to play with lots of tech still, except it's more of the layer 1 stuff. Doing fiberoptical backhaul work, or installing DSL in peoples homes.
I'm still interested in both hardware and software. I run Gentoo Linux on my machines at home, and I have a DO VPS for "cloud things", but I'm glad it's not my job, because software issues can piss me off like no other thing is capable of.
My company (Automation & controls) is partnered with electricians for all the jobs we bid on. Having electricians that know wiring for specialized bus networks, how to do basic troubleshooting on control circuits and all that is amazing to have.
Alternatively, for those reading this in the tech side, the job is super engaging. I get to work on programming machines the size of my bedroom. I get to travel and see equally interesting locations (Dam spillways, Agricultural facilities inland and at port, underground mines, etc.). The fact that I get to get out of my office a few days a month is a big reason I've stuck with my job for as long as I have (7+ years now)
EDIT TO INCLUDE SOME PICTURES (Both the Cool and the Ugly):
https://imgur.com/5uOWDGBhttps://imgur.com/oJozMBrhttps://imgur.com/95HSxlxhttps://imgur.com/yhrPUC3
Especially
> Find your way into Industrial Electrical work if you can. You get a strong mix of tech and electrical, moreso than Residential, can't really say the comparison to Commercial work though...
Avoid residential electrical work if you are technology oriented! Yes, yes, home automation and all that, but that pales in comparison with industrial work. Commercial in theory has the same potential, but (at least here in Italy) the jobs are ..hm.. dodgy (very poor project management, tasks scattered across sub-sub-sub-contractors so nobody has really a clue of the global picture ..stuff like that)
This in reverse is part of why I am a programmer; it can take two or three days before I'm really pissed at a software problem, but physical stuff really annoys me in mere minutes.
Why? Don't really know. I know a bit of it is that I know how to get myself into trouble in software and then usually get back out much better than I do in the real world, but even so, I had the patience in software to develop that and I really don't for real things.
On the other hand, a screw-up can have bigger consequences when your buggy code is used by thousands of users a day.
Ps. Love the username/post combo.
My BF's dad owns an electrical company, and I know BF will most likely end up working there - I've considered in the past joining him. This post is encouraging because it seems like I could get all the movement and outdoor time that I'm missing with coding, and also be building stuff that's useful to people.
Do you see many female electricians? I suspect there are few - any ideas as to why? Is there a lot of heavy/difficult physical labor that I would be unable to do?
Deleted Comment
I took what I call a 12 year sabbatical from tech. I became an officer, went to pilot training, learned lots of new and useful skills, met lots of very good and interesting people, some of whom are my best friends.
Taking off from a short airfield in a blizzard, at night, wearing NVGs is an experience I don't care to re-live, but I'm glad I have something to talk about at parties.
A quote that affected me greatly during the time I was thinking about leaving: "if somebody wrote a book about your life, would anybody want to read it?"
After getting married (to somebody I met during one of my training courses), settling down, and having kids, a quieter, 40-hour-a-week lifestyle started to sound pretty good again. I had always been a hacker at heart, and realized that I was getting to the age where it was probably now-or-never if I wanted to re-enter the industry. So I went back into tech! It's better the 2nd time around.
Zero regrets.
If you don't let yourself explore, you're not going to be happy long term. (Eventually, you will hit that fabled mid-life identity crisis.)
Perhaps it's less that any one situation is preferable, but more that you need variety.
* Meaninglessness. Most of the projects are simply not necessary, they do not help society in anyway, they just exist to make someone else wealthy.
* Tedium. The intellectual challenges aren't there after a while. There are countless intellectual challenges in the field of computing / computer science, but they are usually precisely the ones that industry has no interest on.
* Micromanagement. "Agile" and similar management practices (yes, I know, you're not doing it right, blah blah blah) are downright humiliating and infantilizing. Almost no other highly skilled professional has to tolerate such level of intrusion on their day-to-day activities. I love deep thinking and creative expression. The modern corporate setting prevents this by design.
* Open-spaces. See above.
* Idealism. I was so excited about the possibilities that the Internet opened for humanity. Now we have ad-tech and horrible exploitation of "gig-economy", warehouse workers and the like. This is definitely not what I have in mind when I started.
* Conformism. The tech industry is extremely conformist. Monetary consideration always wins. Deference to power always wins. "Hacker" used to mean something completely different. Almost opposite to the current definition.
I realized that what I always loved about computing was the endless creative and intellectual possibilities allowed by the medium. This is more or less the opposite of what the industry values, despite what they might advertise endlessly. There is nothing cool about it. It is stale and anti-intellectual.
I don't need a lot of money to be happy. You probably don't either. Time on this earth is the most valuable thing we have, and I would rather spend it waiting tables than enduring one more stand-up meeting.
I think creative nerds are the life-blood of the industry, but they tend to be shy and not assertive, so they have their life controlled by the "business types". I honestly believe that if the nerds told them to fuck off and started spending their time working on things they think are relevant, the world would become much better quickly. This won't happen, I know.
Most of the "creative nerds" I have encountered in this industry are arrogant, have grandiose beliefs about their own intelligence and have zero empathy for anybody who is not exactly like them. I don't think things would be much better if they ran the show.
I recently saw a video about Boeing that concluded that the whole debacle was due to it straying aware from its commitment to good engineering and to trying to please the wall street. It traced back to the source of decline as the purchase of McDonnell Douglas which was mainly done due to Boeing management feeling that they needed better "business types", which was all that McDonnell Douglas.
Slowly, but I am seeing an acceptance and respect towards the nerds/engineering instead of hype men & impressive stock figures. Wall street types are seen as the hyenas/fox in a sheep's skin that need not be celebrated and looked upto.
Meanwhile Wall St. simply downgrades, the MBAs shrug their shoulders and speak about drive-thru ordering as an innovation, the Founders get ousted, and people become sick.
This is how I felt about myself, I spent my early twenty working a job living frugally saving and then quitting to work on my own projects. Failed entrepreneurship was a great lesson in how hard it is build things people want and how easy it is to build things you think people want. The difference is often very subtle small details, but asking the right questions to unearth those details in incredibly challenging.
The amount of things that someone will give their time or attention to our suprisingly small
So much this.
wars aren't started over human-rights, they are fought when you f%%k with someone's money.
True. Right now amidst the pandemic, it turned out the farmers, medical people, janitors, delivery guys are the most essential jobs.
Ah, don't be so negative. I'm gonna do it or die trying.
But then dot-bomb happened and it looked like the party was over. I looked down at the job opportunities after graduation. I didn't really want to spend the rest of my life wearing a tie, writing bank software and sitting in a cubicle every day, so I decided to try something different.
I became a seasonal park ranger. And it was awesome.
Like most jobs, I got it through knowing someone. My grandparents had volunteered for the NPS and were able to connect me with the right people. I became a seasonal park ranger at Yellowstone.
It's not for everyone. The pay is not great, but you do get lots of good benefits because it's a government job. And you're often living in remote areas (the nearest grocery store was an hour and a half drive from where I was stationed). It's also not conducive to family life if that's your thing (again, the closest school was 1.5 hours away and everyone around me was my coworkers). And the days are long, helping tourists, checking permits, etc. Permanent jobs are also incredibly hard to get - you usually have to do years of seasonal work to accrue enough seniority to get considered for a permanent position.
But the benefits? Being able to crack open a drink after a long day and look up at more stars than I ever thought existed - I spent many nights on the front porch of my cabin looking up at the Milky Way. Hiking, camping, boating on the weekends are easy because I was right there in the park. Clean air, clean water. A good group of coworkers (for me) who legit really care about protecting these astounding natural resources. And a feeling that you're really making a difference and reaching people.
I did this for a few years and they were among my happiest years prior to my marriage. Ultimately, I ended up going back into tech after things recovered. But there are days that I really miss the outdoors and wearing the uniform.
> A good group of coworkers (for me) who legit really care about protecting these astounding natural resources. And a feeling that you're really making a difference and reaching people.
This feeling of 'feel' for a thing, its what I miss in tech personally. Companies offer a service, want a happy customer and make money that way. But a 'feel' for the actual goal and way its done usually lacks. Too many egos...
I think the industry is totally wrong about the type of activity that programming is. It's a creative endeavor, not a mechanical one. The best people are the ones who derive joy from it, not just a paycheck.
I end up looking at nature with both my old eyes and the cold scientific ones. A piece of wood, pale shades, smooth, is also a matrix of nanoscopic sugar fibers. It's odd to confront the two point of views. Same goes for butterfly wings, or flower petals..
About once a month I’d go to Sams in Idaho Falls, which was usually an all-day trip.
I’ve been up through Bozeman before. Beautiful area!
This. Something has definitely changed in the last ~10 to 20 years since the end of the dotcom era of interviewing in the tech industry. Before it was as simple as reading the AUTHORS file in an open-source project like Linux to vouch for a programmer applying to somewhere like Red Hat or Mozilla. But now we are expecting them to write a proof of quicksort's worst-case runtime complexity or to explain the Diffie-Helman public key exchange mathematically on a whiteboard to "see how you think" and "prove programmer ability" which is unnecessarily academic and they either don't use it directly or search on Google for it anyway.
That's just the onsite interviews, pre-interviews are riddled with Leetcode, Hackerrank and Codility tests which can be cheated or the solution can be found on Google. What a shame that these flawed tests still exist.
Excellent phrase. Thank you.
That being said, I haven't left but have been wanting to for ages. I'd be more interested in staying if I could find a unionized work place (when Delta cut salaries by 20%, the pilots union was able to negotiate for profit sharing after the hard times were over, when my company did that, they refuse to even discuss whether we'll ever be bumped back up to normal… even if we get paid well already it doesn't mean we shouldn't work together for better working conditions and more of a stake at the table) or a worker owned co-op to work for, but so far that hasn't materialized.