Being on call and in a constant state of readiness to troubleshoot problems is tiresome. Even if problems rarely occur, the constant awareness of potential responsibility can quickly lead to burn out. The medical field has known this for a long time, and as a result, physicians get paid a lot of money to take extra call coverage. This is a very neglected topic of discussion within software development.
Man this one sucks. Being called at 2am to fix something once every couple of months isn't great but I can deal with it. Knowing I can be called at 2am on any day and be expected to fix something and not knowing when that will happen is what kills me. Despite the really good benefits in my current position I'm casually looking for a new job solely because of the on call schedule.
Former ops engineer here. Get out of ops. In the current climate, it is rare you'll find a role that compensates you for being on call frequently and the toll it takes on you.
There is an expectation and honestly a need to keep up with changes to the industry that I haven't seen in other fields. Any older dev has had to transition at least 1-2 languages and it's not an easy step. That doesn't even start covering how fast javascript frameworks are moving. Oh, hey you learned Angular, that's so 3 years ago we don't do that here. We use Vue.js which is better because _________. Vue will be replaced and you'll have to learn something else. If you don't like constantly learning then you'll burn out. On TOP of that most jobs expect you to work and learn this on your own. Which leads to a ton of 9-5 developers who refuse, or other developers who make sacrifices to stay on top of things.
It can also lead to franken-apps which have angular -> react -> vue all in one. (Pause to take a breath) I love developing, but there is a lot to learn. I only stay on top of the industry for about 6 months out of every year. It works for me.
Excluding chasing the shiny object (the javascript race you mentioned) lifetime learning is part of the job description. If you don't love to learn and to apply the things you have learned the tech industry really isn't for you.
Also 1-2 languages... that's really on the shallow end most devs, myself included, will learn a lot more than that and each new language is much easier to pick up then the previous ones.
However as you get more experience, at least for me, you tend to stick to a handful of languages that each cover a domain.
OO, Functional, Dynamic/static variants and a language/stack that allows fast prototyping of ideas.
> Any older dev has had to transition at least 1-2 languages and it's not an easy step
Most devs I know have been through a whole bunch more than 2. I've had to use at least 8 over the last 10 years of dev. I didn't have to learn all of them well, but I did have to learn them.
Are you a veteran who has experienced this? Because this sounds completely wrong to me.
An experienced developer typically has no problem picking up new languages/frameworks/tools/etc. There isn't much value in familiarising oneself with arbitrary and invented things, of which there are many in our industry, and they are ephemeral.
No, the real value is in knowing and understanding the discovered things. And since they are discovered and not invented, they do not change.
There's still plenty to learn, but you have more than a lifetime's worth of learning ahead of you even if you steer clear of the shiny baubles that are React/Angular(v[1..n])/Vue/Whatever.
Is it really that much of a problem? Admittedly I have no experience with JavaScript frameworks, but I do backend work and have switched projects and companies very often over the last 8-10 years. I have had to use C#, Java, PHP, Go, Node/TypeScript and even some OCaml, and every single time a few weeks to ramp up and get used to the new syntax has been enough.
All this talk of JS getting new frameworks every few months is just BS. Front end development has evolved a lot in the last few years, completely out of necessity. But it is stabilizing because we’ve discovered the patterns that make sense for DOM development. You should fully expect React and Vue to be around more or less in their same forms for the next 10 years.
Being viewed as a cost center rather than a revenue generator if you're not in a tech centric company.
Having best practice and common sense ignored by management in the name of expediency and then being blamed for the results (going over budget, building something the client doesn't want, being late on delivery)
Creative license: the trend i have seen at startups is moving more in the direction of product and designer control over the things a company creates. For developers seeking control over their creations, this can be a frustrating thing to be a part of. Even at small startups, the value of designers and product managers is pretty obvious. It can be tough to find the right balance of control there.
Sexism: this is a tough topic. I worry that the people who care are not part of the problem, yet they tend to beat themselves up about it more than those who arguably should. I want more of everyone in tech, but to a large extent my ability to affect change in this area is crippled insofar as i have a job at a startup which requires lots of hours.
Hours/Appreciation: I've been a part of a few startups where employees, especially engineers, care more than they arguably should. High senses of responsibility are amazing assets for a company, but they rarely get appreciated as much as they deserve. When leaders see lagging growth or declining numbers, they try to incite urgency in the ranks. Those working the hardest often take that urgency to heart the most, which can leave them feeling really disheartened that their above-and-beyond efforts to this point have gone unrecognized.
I'll close on a positive by saying that i love the tech and startup industries. They provide so many people opportunities they wouldn't have had otherwise. Like every industry, there are problems. Picking the size and culture of the company you work at changes the landscape of those problems, so be conscious which you are sensitive to and choose accordingly. If you are happy to trade reduction in control for stability, bigger companies probably your jam, for instance.
I think there's a few things about the software industry that make it really easy to become depressed, cynical, and jaded. We spend quite a lot of time being pedantic, fixating on all kinds of specific details, and especially, thinking about many different ways our applications can go wrong. In the context of writing robust software, that's a good thing, but it can also be really difficult to turn it off in the other parts of your life.
In the Silicon Valley there's this feeling of monotony - that everyone is doing the same thing. Given the price of housing you can make a pretty good guess everyone is trying to either save up to move out or pay off a house here. Everyone is either trying to come up with a way to enter the hottest trendiest startup idea or doing indie games. Most of the meetups are tech/work-related and even the non-tech meetups are flooded with male, glasses, 20-30 something engineers. It's almost like everywhere you go you can't escape the pressure of work.
Personally it almost seems like the whole interview process was made to continue the whole tradition of getting high SAT or GRE scores for college, this time swapping college with the FAANG companies. We basically took all the problems with a standardized test-based education system and moved it to jobs.
The growing divide between the haves and have-nots. I have found that people in tech are generally completely oblivious to the massive amounts of impoverished people around them and have no idea how to help them. Also the technical advancements that we are seeing nowadays mostly seem to help people who are already well off. It is difficult to find good tech companies that have a high social good output.
Living in the San Francisco Bay Area, it was strange to see 22 year old recent graduates arriving and immediately making six figure salaries while constantly complaining about homeless people and describing certain areas with large black and Latino populations as "sketchy"/"ghetto"/"unsafe".
It was very surreal (and sad) watching the demographics become much more homogenous in the little corner store in the Castro I worked in. Our customer base was once incredibly diverse, lots of LGBTQ folks, and also lots of families. Slowly it became predominantly white and East/South Asian, young, single, and affluent. We went from seeing EBT card usage drop from about 4-5 customers a day ($200 daily average) to one (literally) every 3 and half weeks by the end of 2016.
In a similar vein: every tech company I've known whose product involves manual labor (think: delivery, cleaning, retrieving scooters, packing/receiving, food preparation, etc) treats and thinks about the workers doing the manual labor very differently than the creatives, engineers, product folks, sales leads, etc. The employees doing the manual labor are held to very different standards of productivity and timeliness, often don't get benefits, definitely don't get equity, and generally enjoy little room for advancement, and often they will be employees in all but name and rights (1099).
Some of this is understandable to a point as their work is mission critical -- if your cooks show up late constantly and your product is "Uber but for tapas", then your customer experience is going to suffer. But a tendency I've observed personally and heard from friends in those jobs is that it seems acceptable for manual workers to be shouted at, threatened, and generally be treated abusively, while the same certainly wouldn't be ok if directed at someone making salary. Meanwhile as an engineer if I have a zero day, no one says a word to me, or if they do they're very polite about it.
A lot of issues have already been discussed, but one I haven't seen is the constant reminder that people and the Internet are terrible. Ignoring people that censor beheadings on YouTube and the Dark Web, I am very vividly aware of things Goatse, Blue Waffle, 1 Guy 1 Jar, Ogrish, early 4chan's \b\ and those mental images are very much burned into my brain.
Maybe its not every aspect in the tech industry or maybe its changing with the next generation or maybe I just got into tech at a very impressionable age, but I'm sure I'm not the only one that was exposed to that stuff early on.
I think that's a dark side. There's some generally fucked up shit out there and someone has to be aware of it to keep it far, far away.
The tech industry idolizes and encourages terrible behavior, and it ends up being self-reinforcing. Efforts to counteract that get pushback. How many people will get upset if you suggest that Steve Jobs was not a good person and probably shouldn't be idolized? Or that Linus's email habits are not a good thing to emulate?
We will tell ourselves fun stories about how people being jerks just means they are no bullshit people who care about getting things done.
- any interesting/impactful work is immediately crowded by tons of other people willing to sacrifice more than you to own it. They usually win.
- the prevalent engineering management culture is a form of psychological manipulation to turn engineers into cogs and make you feel like you are always behind and stressed. It emphasizes weekly bandaid fixes to long running problems.
- you have to work hard to be promoted, progress your career and make more money; but higher positions generally have much greater stress, workload and painful non-technical work (sales, politics)
- the bay area becomes a nightmare in middle age. the local governments love capitalizing tech income in the form of taxes or housing prices, but won't change a thing to improve the your life. leading a normal middle class life with kids in a safe area with good schools (e.g. peninsula, or Marin) will completely exhaust a 2x200k dual income. Commutes are awful. Unless you win the startup lottery, you'll be working your brains out and hardly find time to enjoy life.
I don't like the idea that tech comes first and people last. That is often the case when the automation is simply meant to replace inefficient humans, without really thinking to the consequences. I'm of course pro-automation as I think it's an improvement for humanity, but I'm always worried about the end result.
Also I don't like that most companies have this kind of double-speak when they say that they are working to improve everyone lives while they simply want to automate work away, avoid rules (simply because Internet is not regulated as the rest of the economy) to make more money than in other ways.
I find the nearly infinite (and seemingly exponentially increasing) number of ways things can go wrong, and the frequently arcane knowledge required to fix them, incredibly mentally taxing. That's not what I want to fill up my mind with.
If this were all in the service of healing the world in some way, it might be worth it. But work is feeling increasingly disconnected from genuine human problems.
"Always Be Coding" -- people who spend their time on work/passion project/open source projects are somehow valued more than those who spend their time on work/non-technical pursuits.
Developers that build a new thing are disproportionately valued over developers who improve or maintain old things. The formers will be the wunderkinds of the organization and referred to as "rock stars" and "10x-ers" despite the quality of the work that they put out. The latter will have to fight for promotions and be denigrated as "1x-ers". They will have to hear that they are not as valuable because they are not innovators.
This leads to developers being biased towards building and working with new things, and is a lot of the reason that we see flavor-of-the-week style platforms and libraries that add very little value.
It's not so much the process itself but the overall fact that your ability to get hired ultimately hinges on things that are trivial and shallow. In general I believe that skill and talent get rewarded, but everyone has a story about a job they landed out of sheer luck - they knew some obscure tool or framework that forced a hiring decision in their favor. Very few hiring managers are genuinely talented at spotting talent. Most rely on some level of cargo-cult knowledge, tribal shibboleths, and technical hazing rituals. Or they just hire lazily and optimistically, and then you have to work with those people because now you're one of them.
[+] [-] nugget|7 years ago|reply
[+] [-] MrMember|7 years ago|reply
[+] [-] toomuchtodo|7 years ago|reply
[+] [-] rajeshmr|7 years ago|reply
[+] [-] bargl|7 years ago|reply
It can also lead to franken-apps which have angular -> react -> vue all in one. (Pause to take a breath) I love developing, but there is a lot to learn. I only stay on top of the industry for about 6 months out of every year. It works for me.
[+] [-] Omnius|7 years ago|reply
Also 1-2 languages... that's really on the shallow end most devs, myself included, will learn a lot more than that and each new language is much easier to pick up then the previous ones.
However as you get more experience, at least for me, you tend to stick to a handful of languages that each cover a domain.
OO, Functional, Dynamic/static variants and a language/stack that allows fast prototyping of ideas.
[+] [-] andrewvc|7 years ago|reply
Most devs I know have been through a whole bunch more than 2. I've had to use at least 8 over the last 10 years of dev. I didn't have to learn all of them well, but I did have to learn them.
[+] [-] yakshaving_jgt|7 years ago|reply
An experienced developer typically has no problem picking up new languages/frameworks/tools/etc. There isn't much value in familiarising oneself with arbitrary and invented things, of which there are many in our industry, and they are ephemeral.
No, the real value is in knowing and understanding the discovered things. And since they are discovered and not invented, they do not change.
There's still plenty to learn, but you have more than a lifetime's worth of learning ahead of you even if you steer clear of the shiny baubles that are React/Angular(v[1..n])/Vue/Whatever.
[+] [-] paxys|7 years ago|reply
[+] [-] baron816|7 years ago|reply
[+] [-] Thriptic|7 years ago|reply
Having best practice and common sense ignored by management in the name of expediency and then being blamed for the results (going over budget, building something the client doesn't want, being late on delivery)
[+] [-] bargl|7 years ago|reply
[+] [-] liquidise|7 years ago|reply
Sexism: this is a tough topic. I worry that the people who care are not part of the problem, yet they tend to beat themselves up about it more than those who arguably should. I want more of everyone in tech, but to a large extent my ability to affect change in this area is crippled insofar as i have a job at a startup which requires lots of hours.
Hours/Appreciation: I've been a part of a few startups where employees, especially engineers, care more than they arguably should. High senses of responsibility are amazing assets for a company, but they rarely get appreciated as much as they deserve. When leaders see lagging growth or declining numbers, they try to incite urgency in the ranks. Those working the hardest often take that urgency to heart the most, which can leave them feeling really disheartened that their above-and-beyond efforts to this point have gone unrecognized.
I'll close on a positive by saying that i love the tech and startup industries. They provide so many people opportunities they wouldn't have had otherwise. Like every industry, there are problems. Picking the size and culture of the company you work at changes the landscape of those problems, so be conscious which you are sensitive to and choose accordingly. If you are happy to trade reduction in control for stability, bigger companies probably your jam, for instance.
[+] [-] tootie|7 years ago|reply
[+] [-] shade|7 years ago|reply
[+] [-] princekolt|7 years ago|reply
[+] [-] rajeshmr|7 years ago|reply
[+] [-] vtange|7 years ago|reply
Personally it almost seems like the whole interview process was made to continue the whole tradition of getting high SAT or GRE scores for college, this time swapping college with the FAANG companies. We basically took all the problems with a standardized test-based education system and moved it to jobs.
[+] [-] IpV8|7 years ago|reply
[+] [-] vector_spaces|7 years ago|reply
It was very surreal (and sad) watching the demographics become much more homogenous in the little corner store in the Castro I worked in. Our customer base was once incredibly diverse, lots of LGBTQ folks, and also lots of families. Slowly it became predominantly white and East/South Asian, young, single, and affluent. We went from seeing EBT card usage drop from about 4-5 customers a day ($200 daily average) to one (literally) every 3 and half weeks by the end of 2016.
In a similar vein: every tech company I've known whose product involves manual labor (think: delivery, cleaning, retrieving scooters, packing/receiving, food preparation, etc) treats and thinks about the workers doing the manual labor very differently than the creatives, engineers, product folks, sales leads, etc. The employees doing the manual labor are held to very different standards of productivity and timeliness, often don't get benefits, definitely don't get equity, and generally enjoy little room for advancement, and often they will be employees in all but name and rights (1099).
Some of this is understandable to a point as their work is mission critical -- if your cooks show up late constantly and your product is "Uber but for tapas", then your customer experience is going to suffer. But a tendency I've observed personally and heard from friends in those jobs is that it seems acceptable for manual workers to be shouted at, threatened, and generally be treated abusively, while the same certainly wouldn't be ok if directed at someone making salary. Meanwhile as an engineer if I have a zero day, no one says a word to me, or if they do they're very polite about it.
[+] [-] tsumnia|7 years ago|reply
Maybe its not every aspect in the tech industry or maybe its changing with the next generation or maybe I just got into tech at a very impressionable age, but I'm sure I'm not the only one that was exposed to that stuff early on.
I think that's a dark side. There's some generally fucked up shit out there and someone has to be aware of it to keep it far, far away.
[+] [-] kentm|7 years ago|reply
We will tell ourselves fun stories about how people being jerks just means they are no bullshit people who care about getting things done.
[+] [-] also_jaded|7 years ago|reply
- the prevalent engineering management culture is a form of psychological manipulation to turn engineers into cogs and make you feel like you are always behind and stressed. It emphasizes weekly bandaid fixes to long running problems.
- you have to work hard to be promoted, progress your career and make more money; but higher positions generally have much greater stress, workload and painful non-technical work (sales, politics)
- the bay area becomes a nightmare in middle age. the local governments love capitalizing tech income in the form of taxes or housing prices, but won't change a thing to improve the your life. leading a normal middle class life with kids in a safe area with good schools (e.g. peninsula, or Marin) will completely exhaust a 2x200k dual income. Commutes are awful. Unless you win the startup lottery, you'll be working your brains out and hardly find time to enjoy life.
[+] [-] unknown|7 years ago|reply
[deleted]
[+] [-] unknown|7 years ago|reply
[deleted]
[+] [-] mat_jack1|7 years ago|reply
Also I don't like that most companies have this kind of double-speak when they say that they are working to improve everyone lives while they simply want to automate work away, avoid rules (simply because Internet is not regulated as the rest of the economy) to make more money than in other ways.
[+] [-] monktastic1|7 years ago|reply
If this were all in the service of healing the world in some way, it might be worth it. But work is feeling increasingly disconnected from genuine human problems.
[+] [-] goalieca|7 years ago|reply
[+] [-] tinktank|7 years ago|reply
[+] [-] keabel4|7 years ago|reply
[+] [-] magic_beans|7 years ago|reply
[+] [-] kentm|7 years ago|reply
[+] [-] kentm|7 years ago|reply
This leads to developers being biased towards building and working with new things, and is a lot of the reason that we see flavor-of-the-week style platforms and libraries that add very little value.
[+] [-] goalieca|7 years ago|reply
[+] [-] plessthanpt05|7 years ago|reply
[+] [-] RichardCA|7 years ago|reply
[+] [-] mindcrime|7 years ago|reply
[+] [-] jarsin|7 years ago|reply
[+] [-] rajeshmr|7 years ago|reply
[+] [-] 0xmohit|7 years ago|reply
[+] [-] anotherevan|7 years ago|reply
[+] [-] CharlesW|7 years ago|reply