What am I missing? I get work is first and foremost an exchange of labour for money, and not supposed to be fun. But aren't there more options I missed so far? I enjoy web scraping a lot and have used it to solve a bunch of real world problems my (ex) girlfriend or I had. I could conceivably work as a freelancer and have done so in the past as a psychology student but I really want to work on something as part of a team. I recently came across the "developer relations" role, i.e. representing the company at conferences and online, recording demos, writing technical blog posts etc.. it seems perfect for me (I prefer working with people), but I would assume they are looking for people who have a few years of experience already so they know what they're talking about?
EDIT: plus some of the most insufferable people I've met in my life were in undergrad CS classes or colleagues in SWE gigs
I felt the exact same way. The truth is most jobs are CRUD or CRUD-like. Not just in tech, but in most professions. How many doctors see the exact same cases day in and day out? How many lawyers fill out routine legal forms? The truth is most professionals are not doing anything challenging or ground breaking and they are well overqualified. If you want fulfillment from your work then I recommend you start your own small business because it will challenge you in more ways than software engineering alone will. Either that or do what most of the population does and have 2.5 kids and a house with a white picket fence. It might come off as cliché, but life is what you make of it.
All I can say is, if you go into a field you don't like, it will take a mental toll. My suggestion is to try applying to developer relations roles; they may want someone with more experience, but that doesn't mean that's all they'll accept. It's worth at least putting in applications to make yourself an option, and if they say no, then you're no worse off than you started.
In my journey, I'm currently trying to learn Unity as my "foot in the door" skill for applications (all my previous game dev experience has been with pure JS and Game Maker Studio, which no game dev company seems to be looking for), but I'll be applying before I really have experience with Unity anyway just to put my name on hiring managers' lists.
Good luck, friend; may we both find a fulfilling way to pay for the food we need to survive! :)
There’s a difference in the work being dull and the work environment being dull. I’ve had some of the best working times of my life building simple apps with a small team.
> I enjoy web scraping a lot and have used it to solve a bunch of real world problems
Web scraping is an extremely dull topic for me, but I would readily work on it again if I needed to. Good chance I’d end up enjoying it, since no doubt there are new techniques and challenges to overcome since last time.
What I think you’re missing is how dynamic and interesting even those entry level positions can be, and how quickly you may move up in position and salary. It sounds as if you like working with people, technical writing, leadership, and coding. That’s a very robust starting point.
The specifics vary from person to person, but the first 5-10 years of your career tends to be the "find what you don't want to do for the rest of your life" phase. It's actually a good thing to realize that you don't want to do X; you have a strong data point (or several) of what you know to avoid for future jobs.
You know you like working with people (so you can tailor the job search towards in-office jobs). You like solving real-world problems (sometimes companies where tech is a single department vs the whole shebang are better for this -- tech-only companies tend to be a little navel-gazey about their own use but that's from an outsider, take with a massive grain of salt :>).
Apply to many different places. See if you can get contracting gigs if your life circumstances allow for it to "taste" different companies and get more data points. I wish you the best of luck.
You haven’t actually worked in tech though, right?
I would recommend getting a job in the field and at least trying it before you declare it dull and pointless. Personally I wasn’t crazy about a bunch of people that majored in comp sci either, but I’ve made a ton of friends through my career and worked on interesting and challenging problems and get paid pretty well to do it.
Maybe also consider going to therapy or talking to someone, it seems like you might just be depressed over your breakup, which is perfectly reasonable.
I have always picked jobs doing something I've enjoyed. I've had times where I got a bit sick of it, but most of my 20+ years of work have been getting paid to tinker with things I enjoy tinkering with.
Work doesn't have to suck. Keep looking. Find a job that interests you and find the fun in it. Keep your eyes open and switch when something better comes along.
Never switch jobs solely for more money. As long as you can pay the bills, work conditions and happiness are more important.
40+ years in electronics, from TV tx systems, RF systems, computer repair (pre-PC), electrical work, and mechanics as a bench tech, test engineer, mfg engineer, NPI engineer. Occasionally pushing bits in to board processors and PCs. Hacking h/w and s/w in odd ways. Later doing configuration control and change orders for tech companies working with tier 1 international factories. Worked with marketing, artists, IT, product mangers, purchasing, fabricators, contractors and spent ~ 4-8 years in meetings..Saw the rise of dilbert from spot on humorous, to disturbingly predictive, to not funny anymore as my job looked like it. Retired a few years ago, consulting a bit, enjoying playing with arduinos and at-tiny85s, and volunteering.
There's software behind every industry and product you can imagine. Manufacturing, construction, chemistry, pharmaceuticals, many kinds of financial services (insurance, banking, many kinds of trading firms), video games, defense companies of many kinds (weapons, aerospace, ships and subs, cyber security both red and blue teams). You have embedded development, app development, systems development, web development, data analysis, mobile development, back end development. There are people writing code, people testing code, people managing, product managing, solutions engineering, sales engineering. Big companies, small companies, governments, consulting companies. Enterprise product companies, consumer product companies, professional services companies.
Just try something. How do you already know how it will go without trying it? Just work somewhere on something that sounds remotely interesting. Realize what it's really like, not just how you imagined it. And if you like it, great. If you don't, there's a whole lot out there to try next.
I like writing CRUD apps. The best part is when you've been doing what you would do if you weren't getting paid and you get to say "fuck you pay me".
That's all this is, searching and sorting and a UI on top of it. CRUD apps.
It ain't computer science.
Step two, go skydiving. Will clear out the cobwebs.
Maybe it's cause I'm still in the growth stage of my career where there is a lot to learn. I also don't approach it with a heroic idea of changing the world. I just want to do a good job at something useful to make my living.
Mostly it's because I have a pretty clear vision for what needs to happen but I'm stuck alone in a future that no one else seems to see and it is wearing me down tbh.
We can make things less painful by just doing the things that make sense for a little bit and then the whole house of cards will come tumbling down and work will be useful again... why no one else sees this idk but what is almost incredible is how incapable people are when it comes to trusting their own assessments rather than the ones made by economic/judicial/certification- systems, often they will acknowledge what I have to say but then are too comfortable to "rock the boat"
Not true. Work is about providing value for someone else in exchange for money. It's about negotiating with someone so that you both feel like you're getting a good deal. If you develop the amount of value you can off and your negotiating skills you can improve your life.
Each "pointless" job is just a stepping stone to developing your value. If you can see these as an investment in your career you might be able to tolerate a few years in jobs you don't love. Then you'll have the credentials to walk into a role you would love.
> I enjoy web scraping a lot and have used it to solve a bunch of real world problems my (ex) girlfriend or I had.
It is these kinds of problems people there are finding, but also making sure one way or another that there is demand for people to pay for those problems to be solved. As it is not enough that there is a problem, there has to be a paying audience.
It is quite a journey and a lot of dedication to get a little business up and running, but the reward will be getting paid to do mostly what you love each day. Eventually.
And being in Europe you can get to freedom quicker by finding a low cost of living city, town, or rural area even. As long as you have good internet.
My advice (to early me) would be - cut costs down to the bone. Stay single (for the time it gives you), cut friends who make you do expensive things, live in crappiest shared accommodation, sell valuables, eschew alcohol and eating out. And get literally to ramen profitability (making enough money so you can eat. I recommend eating healthy though, not just noodles!).
Most stuff we don't need. Need a phone? Well maybe but a $20 phone on a $10/year plan is enough. Need a gym? No - you just need some heavy objects around the house. Etc.
To make this monk-like life more interesting, you could nomad a bit and stay in different parts of the country, which you should be able to do cheaply if you can live from a single suitcase or backpack. Instead of drinking / eating out in expensive capital cities, you are exploring small towns with your packed lunch. I say this as it adds a bit of spark to otherwise frugal existence that can be hard to swallow if friends are living it up.
Also make friends and meet up with people doing similar to you.
The old advice is quit your job ONCE you are making money. I say, save enough money then quit, and learn to live without a job. I wish I had.
When I started, dial-up internet was the best we could do. Our generation hoped that, by wiring up the world with internet connectivity, we would bring people closer together... so that humanity, as a whole, could realize that we have more in common than we have differences. So that facts and knowledge could be shared and humanity could get better at collaborating. To some degree, that has happened. In other ways, technology has worked in more counter-productive ways, accelerating the spread of lies and misinformation as "alternative facts".
Honestly though, as a teenager, I got into computers because I liked video games, and I wanted to learn how to make them. Post-college, I realized that the games industry was abusive, overly competitive, and low-paying... and if I wanted to support myself, I would be better off doing "boring" software. So that's where I ended up.
Even so, it was always my hope that my work in tech would make the world a better place, somehow... even if only indirectly. I preferred working on open source software. I tried to work for companies with decent values, with people who cared about more than just making money.
To some degree, I'm content. I make enough to support my family and put a roof over their heads. Hopefully they can go to college and afford housing. Hopefully climate change and idiocracy won't set them up for failure.
But honestly, I'm not just disillusioned from working in tech. I'm burned out on life. The hopes and dreams of my generation have not been fulfilled. Humanity is not coming together to solve our biggest problems. Instead, we have narcissistic world leaders who continue to divide us, choose war over peace, and impose suffering over equality and human rights. None of the biggest technology companies are moving that needle in the right direction in any meaningful way (at least that I can see).
At this point, I just don't know if there is any tech company I could work at that could possibly make a real difference in the world.
Such positions for people like you exist out there, but you‘ve got be patient because there aren’t many.
Perhaps the tech field just isn’t for you? I mean that sincerely - if these aren’t the kind of problems that bring meaning to you in your career, or if you need your career to give you something more than a paycheck, then maybe this just isn’t the place for you. Or, perhaps you should consider using your tech skills in the NGO / non-profit world? The money won’t be as good (probably), but perhaps you’d get greater emotional meaning from the work?
Oddly, I kinda figured this before I ever entered the field. I loved programming, but probably wouldn’t have loved a career in it. Ofc, economic conditions forced me in that direction anyway. I figured I would end up here ones way or another, but not so soon.
Now I’m looking at leaving the field and have the ability to do it, so it gave me that much.
- I've given up on the hope that tech makes the world a better place. Outside of some niches that probably pay next to nothing, or the rare jobs that probably require maths or CS PhDs, it serves as a minor convenience at best and is downright exploitative and damaging for society at worst (I refuse to work at the latter kind of company, so I'll just choose the "minor convenience" ones)
- As a perfectionist person with a somewhat "scientific" mindset, I'm disappointed by the lack of rigour in our discipline. We have decades of research on software engineering, yet we continue to recycle hypes, and don't learn from past mistakes. I'm not complaining that some problems have no clear solutions and that picking the right one for a given context is hard; I'm complaining that, by and large, we refuse to even seriously engage with the "what has come before" kind of thinking, seriously evaluate solutions before committing to them, a rigorous style of arguing, etc.
- Most codebases don't pay appropriate consideration to security. I'm not even arguing about complicated stuff like supply chain attacks, just simple things like "don't print out full stack traces in your user-facing exceptions" or "don't rely on IP ranges to limit access to your API".
- The reason for the two previous points is that nobody has time for anything. The tech world moves too fast, investors throw money at dubious enterprises, users expect too much at too little cost, we don't communicate that complexity comes at the cost of speed of iteration, security and so on, and even if we did, users wouldn't care. We deploy these hot messes of distributed monoliths, every project of which depends on hundreds of packages, each of which could introduce a security vulnerability at any time or needlessly constrain our ability to evolve further, and there is basically no solution for that.
- Basically every company that I've been at has been bad in a different way. It's funny that there seem to be almost infinitely many ways of screwing things up.
- Coding in a team is genuinely hard. Even if you all like each other, even if you're all brilliant - you still have to agree to some lowest common denominator and code can never be as elegant and intuitive as something written by just a single person. And when you don't like everyone, or when some people are technically weak, it just gets harder.
I worked in one team, a couple of years ago, that was really great. Unfortunately, we didn't really have support from the rest of the org and were eventually all let go. Since then, I've never found another team with the same level of rigour, ownership, passion and curiosity, and I'm starting to think that it was this once-in-a-lifetime perfect storm that I won't be able to find anywhere else.
I'm not sure what to make of all that. For now, I try to focus more on my life outside of work. I don't hate working per se, I still enjoy solving a hard problem, fixing a weird bug, refactor a hot mess into something readable and writing elegant code, and maybe if I just accept that work is work and not an extension of yourself, all of the above will become easier to accept.