I worked as a tutor for 2 years, and a software engineer for 2 years.
Now, I got a job in a field that's not related to software engineering, let alone computer science, getting this job instead of a software engineering one has a lot of reasons and is not worth getting into to be honest.
Recently, I started to feel bad, really bad, because I was feeling like I've been slowly drifting away from software engineering, and all of the hard work I've made and the time I spent learning it is going to waste.
I want to start working on a side project but I no idea comes to mind!
Any tips to cope with this, what would of you done if you were in my place?
Other jobs in between were both enjoyable in and of themselves, but also made me see dev work in a different light. Namely, that it's super cushy but pretty soulless, lol. Definitely not for everyone, and not at every stage of their lives either. I would be happy to give up the cush for more meaning and fulfillment. Whether you would is up to you to find out!
A lot of dev work is becoming less relevant now too, now that the ad bubbles have burst, countries are cracking down on privacy, Skynet is just around the corner, etc. Maybe it's a good thing you have other skills!
If I were you, I'd use your youth not to fret about the past but to explore different options for the future. You're barely getting started. It's OK to try different things until you find one you like, do that for a bit, and then switch. My mom was an English major who switched careers four or five times, becoming happier each time. My dad was an engineer (civil/electrical) who had one job his entire career, and he was the most one-dimensional and unhappy person I ever knew, at least until he retired. Different life paths and outcomes.
Your CS degree wasn't wasted. You still have a bachelor's, which is more than most people can say. You learned enough to work on the field, but maybe didn't want to stay there forever. It's okay. Even if you do want to go back, it's like riding a bike, you just remember and pick it back up again. Sure, the frameworks and languages might change, and the person next to you might be a killer robot, but the underlying principles are probably still similar.
Your real job isn't coding, it's figuring out what would make you happy, fulfilled, and financially sustainable enough for the next few decades... but a few years at a time, typically, not all at once.
I’ve never shaken a happy customer’s hand, (nor been yelled at in person for that matter), for example. It’s not a thing many developers experience regularly.
I like to think of health workers as a strongly contrasting occupation. Much higher highs, much lower lows. Certainly anything but sterile. Certainly not soulless!
Part of it is what diarrhea said in a sibling response: Having minimal meaningful human interaction. Scrum meetings with your owners and such don't really count. If anything, those are worse than not having social interactions, lol. We're cloistered plumbers working in the dark crevices of systems most people don't want to touch or know about, and it's pretty much always a conversation killer to tell regular people outside of tech bubbles that you're a programmer.
But more than that, often our work is itself devoid of purpose or meaning. We make ad tech and crypto and marketing pages for these big soulless corporations that only enrich a few shareholders, often at the expense of everyone else and sometimes society and democracy itself. I don't think Meta, Twitter, etc. are a net good for humanity. Maaaaaybe Netflix and Google are arguably less evil to some degree, but even that's debatable. And that's just the products and services they make, not even counting the knock-on effects of tech bubbles killing livability across the USA, for example.
My first tech experience was as an intern, and the anti-spam startup I worked for in the early 2000s decided to sell their tech to the Chinese government to censor dissidents instead. I noped the heck out of there and tried to stay away from evil tech since then, instead working for small solar businesses and nonprofits. But even then, I'm under no illusion that I'm any sort of rebel, rather, just someone living on the fringes and feeding off the leftovers. All my work is still directly developed by Google (Analytics, GCP, etc.), Meta (React and FB ads), AWS, etc. -- the same companies that make their billions exploiting people.
At the end of the day I think it's just run-of-the-mill capitalism, not that dissimilar from bankers, railroad barons, newspaper owners, mine owners, whatever... profit-driven and rent-seeking overlords that always put their own interests ahead of society's.
It's a very different world than people who work in civil service, or as a professor or a rural teacher, or a nurse, or a dentist, or even a civil engineering, etc.
Not only is it often a lonely and asocial job, it's also often an anti-social job that actively makes society worse in order to enrich a few people.
I know it's not a popular opinion since this is a community of startup entrepreneurs, after all, but it's the hacker side of things that interested me at first. Big tech killed little tech, and I think it's also making our lives worse, offering more convenience at the expense of community. I often miss the pre-smartphone, pre-Amazon era when you'd still have to go out and interact with people and get to know them, instead of just WFH and getting everything delivered, for example. I often yearn of moving to less capitalist societies whose cities and towns are more walkable, more local, and generally more intimate.
After twenty years of doing dev work, I feel like my impact on the world has been exactly zero, or maybe slightly negative, lol, and I can't wait to find another career. (Working on going back to school).
But again, that's just me. Maybe someone like Sam Altman can look back in two decades and think "wow, we really changed the future of humanity for the better, huh?" Or not. We'll see, lol.
If you enjoy doing computer stuff (coding, repair and building, management, etc) don't work in that industry. I've had this thought for a really long time about how if my work is sitting down and my hobbies are all sitting down, it is really hard to maintain a good schedule of forcing yourself to stay in shape and commit to a lot of exercise because frankly I don't really enjoy it and it just takes time away from what I actually want to be doing. If I were to just work a job that forces me to get exercise, like the forest service or a construction worker or anything that is very manual labor focused, I get all of my exercise needed as part of my job, and then I also get to do whatever I want at home without feeling guilty and I don't get burned out.
I think the world really needs to stop telling people that they need to do what they love, I think you really need to do something that you can tolerate doing for 30 years. Even my job was doing drugs and having sex all day, I still probably wouldn't love it after a while, if my job was playing video games I wouldn't love it, if my job was doing community service but paid, I wouldn't love it. But I enjoy all of those things outside of work, probably because they aren't work!
If you're going to spend all of your days coding, you're clearly going to lose interest in coding because that's just how work is: you don't want to do it!
I think there is a difference between using one's skill doing something they don't enjoy and doing what one loves (with or without the use of said skills).[*]
I would probably also stop enjoying playing video games if that was all I did at work, but that is because I would want to do more with that. Maybe be more involved in the creation. What we love doing usually evolves and I see no reason why someone should simply tolerate something for 30 years when they could instead evolve what they do with their personal growth. Whether that involves their trained skills or not I don't think should have much weight. I think of it as more of a starter pack to help point you in your direction, even if that means you find all the items you acquired to not be of much use and go off in search of something else. It still helped get you to where you are headed. I think the 'do what you love' is finding work that does not feel like work, with or without your passions/skills.
[*] an example from a talented designer I know who was miserable from spending 2 years basically adjusting a single web widget then moved on to other work being involved in the overall design of a product and loves it.
For me, the satisfaction of building hardware and software is solving a problem that someone has. I'm ok with that "someone" being myself or a friend, as a hobby... or being a stranger, via some commercial product I help develop.
Corporate work doesn't have to be soul-crushing. BTW, is the "20% project" concept actually a thing anywhere? (Either as 20% out of 100% or 120%)
I have meant plenty of folks with software engineering backgrounds who do other work.
If you’re not feeling passionate about software engineering at the moment, why force it? I suggest taking a break.
If you want to do a side project, let it come more naturally.
Gamedev keeps me occupied outside of my 9-to-5. Pick an engine: GoDot, Monogame, even Unreal or Unity. Pick a simple game to mimic or emulate, and see how far you get. Don't worry about it looking nice; focus on applying your education to it (i.e. try to encapsulate functionality, write tests, etc.). I've been working off and on with the same project for over a decade just for fun, and I find it both stimulating and challenging.
Give it a shot; at least you can blog about it and consider it a hobby entry for your resume.
So I would expect your CS education to likewise offer value in non-CS industries. You may have to put some thought into exactly what you learned other than the face-value bullets points in the curriculum, and then focus on how you can apply them to your new industry. But you don't need to feel that the work and time was wasted.
Found some article discussing the phenomena of those engaged in knowledge work having a hobby like this, acting as a relief valve when things get too intense - whether up-skilling in knowledge or pushing through a slog of a project, or perhaps they're in a somewhat Kafkaesque situation in regards to political structures at work/academia to avoid burnout situations.
Then think about the objective fact that you’re unfathomably better off than just about everyone you’ll never interact with.
This is how I frame my world.
One thing I'd say about finding a side project is: think about what motivates you about the work. The most fun I've had on a side-project recently was just coding a google spreadsheet macro for something that my friends and I have to do semi-regularly. Knowing who the audience for the thing was and how they would benefit from it greatly helped my motivation.
But maybe you get more motivated by solving truly difficult challenges. In that case I'm sure there are some OSS projects out there eager for contributors. It's really down to what gets you fired up.
If you have done this kind of work long enough you get burnt out on people constantly pushing bad suggestions based on trends to compensate for personal insecurity where those suggestions are unnecessarily complex. This results in hostility towards simplicity in favor of immediacy and comfort with great risk not visible until later when it can no longer be ignored.
I graduated college absolutely certain I would be a day trader on Wall Street for the rest of my life.
And I did that for about 7 years.
But 5 years in or so I started to realize I didn’t quite like it. I actually was more interested in writing code to solve my trading problems. But what really appealed to me there was the writing code bit.
It took about a full year of my mini identity crisis for me to realize, there were other jobs out there I could enjoy. And the career my 20 year old self had picked wasn’t my ultimate path.
It’s OK to change directions.
Continue to reflect on what you want for yourself. Don’t try to predict too far out because it will likely change. But think about the next year or three, where do you want to be?
Once you have a rough idea in mind you can think backwards about what steps are needed to get there.
Hang in there, self reflection is tough but very worthwhile.
Your previous experience absolutely has and will NOT go to waste. I can’t tell you how many times my finance experience has helped me at my software jobs or just in life.
While it may not be directly related to your new job, that experience is there, helping you in more ways than you realize.
The overwhelming majority of people who have been in a career for decades are NOT doing it because they can't wait to get up and do it each day. They're doing it FOR THE MONEY!
Ask yourself these simple questions. Do you like:
1) Eating?
2) Living inside?
3) Using transportation?
4) Engaging in activities for entertainment?
If you answered YES to any of these questions, then you're going to need money.
Unless you're the beneficiary of a large trust, then you're going to have to work a job for that money.
It's important to pick a career that you have an interest in, but if you expect to get up 30 years from now and have the same enthusiasm you had on day 1, you're almost certainly over-optimistic.
So, look at the practical ramifications of moving away from S/W engineering:
Does your new endeavor provide you with a viable livelihood?
Is it interesting enough that you can keep doing it AFTER you've lost your initial enthusiasm for it?
Of course, you probably won't follow this advice. Because reality is not something that is understood by most people at your age. There's really no way around this. Just keep going for 30 years, then you'll know what I'm talking about...
1. Building software can be more akin to painting a picture than building a house. A team of software engineers is like a group of artists at a canvas with all sorts of different preferences, brushes, techniques, etc. I don’t think we’ve efficiently solved for that in a way that’s enjoyable.
2. The pace at which you’re supposed to adapt, raise funds, build, scale, etc has a toxic feeling, probably how Wall Street money managers feel like they have to chase alpha, make certain gains per year, etc. it leads people and companies to do dumb, irrational things that frustrate and confuse.
My personal approach has been to try and separate myself from #2 as much as possible. Ignore anything anyone has to say unless I feel it in my bones they’re right. I don’t drink ycombinator’s cool-aid, or DHHs, PGs or anyone else. I listen to what people have to say and incorporate it into my OWN mental model of how software engineering has worked for me.
Also, I like to work on projects either alone or with very small focused teams where I can be expressive. That means if I’m going to take over code, I want to be able to learn something or adapt it to my standards. I prefer to work on things start to finish.
When I sit down to code, I try to push this website and everything and everyone’s’ opinions out of my mind. I picture myself in an office far removed from anything Silicon Valley, Google, or bright colors, or that strange mix of Machiavellian and Aspergers. This is my thing I get to do with it what I want. My canvas. My brushes. I’ve been doing it too long for it to be any other way now.
I think that’s how you can enjoy programming again too.
If you don't have an idea take the problem of writing an offer for a service like an ad campaign (ad - size - weeks running - price) in a local newspaper, people need to calculate it, word it and format it into a pdf or something to send. Program the calculation from the sqlitedb prices, rope in gpt to word it and offer a number of combinations etc. and use a library or program to create the nicely layouted pdf. It needs to get the input via a form hosted on a linux box in the local newspaper office so the windows dudes and the mac dudes can use it and nobody needs to install nothing.
report back on how it went - good luck sailor
- I can only use a side project to drive learning if I actually care about the product of that side project. So if you're like me, maybe start by identifying some work-product care about, and hopefully it will require you to flex/learn some skills including software dev.
- Is it possible you're experiencing a sunk-cost fallacy here?
- Are you hoping to steer your career back into software development? That could affect which particular projects, languages, etc. you work with, because of marketability.
I'm currently exploring doing part time contract work as well as working on a side project. I really enjoy both. I'm making less money than I was before (still enough tolive off) but I'm hoping to get better at this and up the income.
Think about what you do enjoy doing and then try to figure how to turn that into a job.
If I was going to recommend a side project, I'd maybe think about what you enjoyed when you were tinkering around, and go and do some more tinkering.
Writing embedded firmware for space rockets is light years (pun intended, haha) from a fast paced scrappy startup. Neither is better than the other to anyone but yourself.
Perhaps finding a purpose to put your skills to might help?
there's a lot more than programming while the other say life has no meaning. pick your poison.
1) It always feels like it's getting stolen and given to somebody wealthy's bank account. Kind of like this publication. [1] I tend to be honest and hard working at my software jobs. I get given extra work with no pay, while drawing aggro from my coworkers for making them look bad. Guy who schmoozes and sends distracting GIFs at work to the boss, goes on golf retreats. I'm used until they can burn me up and throw me away, while most of the office sighs that they finally drove me away.
2) Most places have a severe opposition to actual change. Software's one of the worst. If somebody had not released LLMs and TTIMs, nobody would have. The moat's too ephemeral, the market advantage too short. Amazon / Google / Apple / Netflix all want businesses where they do no effort and have infinite returns. Netflix barely makes shows. Check Nielsens. [2] "Grey's Anatomy", "Gilmore Girls", "Six Feet Under", "NCIS", "Suits"? They're all acquired and other than "Suits" 20+ years old. Google cancels anything that might interfere with core market, moving ads. Amazon generated the idea of "enshitification" with Bezos fighting over burning the diaper industry to the ground, so he could get his diapers.
3) Actual advice a) Try Challenge.gov [3] There's actually some neat Challenges. The Library of Congress had one recently that I made a game for [4] mostly for the same reasons you're noting. It was actually "mostly" enjoyable as long as I didn't take it super seriously.
4) Actual advice b) Try the NASA mailing list [5] They have hundreds of grant and funding proposals every year, and many involve software engineering doing something practical with the chance for funding if you have your own company. Sole proprietorships are not that difficult to form. I formed one in my home state in about a week. Getting registered with SAM.gov [6] though is a PITA. Cannot downvote enough. Senators should forced forced to apply for grants and use Grants.gov and SAM.gov as form of torture.
5) Actual advice c) Try hardware using software engineering. Arduino, Raspberry Pi, Microcontrollers, drones, imagery, sensors, cell phone hardware features, automobile / airplane software, industrial automation, antennas and transmission systems, Personal Area Networks (PAN) [of Internet of Thing (IoT) devices], prosthetics, sound and audio hardware/tools, peripherals, network hardware, specific components (CPU, GPU, RAM, ROM, ect...), supercomputing, removables and media, robotics, large stuff (wind turbines, power plants, electric grids), home / yard automation, 3D printing, medical / health care devices, and experimental / academic devices.
[1] "Loyal workers are selectively and ironically targeted for exploitation" https://www.sciencedirect.com/science/article/abs/pii/S00221...
[2] "Top 10 Streaming Shows by Category" https://www.nielsen.com/top-ten/
[3] "Public listing of Gov sponsored challenges" https://www.challenge.gov/
[4] "American Cities" http://forsako.rf.gd/AmericanCities/LibOfCongressGame.html?i...
[5] "NASA Solicitation and Proposal Integrated Review and Evaluation System" https://nspires.nasaprs.com/external/
[6] "The Official U.S. Government System for Contracts, GSA" https://sam.gov/content/home