1

Sorry for the burner account.

I have to figure out what to do with my life right now. I really enjoy programming, and honestly, of any kind. Haven't really found a kind of developing I dislike yet. I have been doing stuff for around 4-5 years by now, so I have confidence that I'm a good programmer, with the huge caveats that I've never finished any presentable project and I've never done anything with a team, I've only done solo stuff.

It seems like the logical thing to pick for a job. However, I've heard experiences of people with programming jobs and CS degrees that they're absolute hell to be in. Super long work days, absurd deadlines, crunch, and that doing a CS degree means you have absolutely zero time for anything else in your life.

Having a life like that really scares me. I'm not really a strong, disciplined person. I know I can't handle living like that. I'm scared I'll just realize I want to quit and end up having wasted years of money and work on a degree I don't want to use for anything - and that's even assuming CS college isn't that awful.

My biggest dream is doing indie game development, and it has always been that since I was a little kid, but I know that's not a safe prospect for a reliable living wage. At the same time, abandoning that dream completely would make me feel awful. So I NEED to have time to work on my own stuff.

I wouldn't go to a CS degree purely for more job opportunities, I'm sure there's a lot of things I'd be able to learn in one that I need. I just don't want to end up living just to work. I'm really only going off on rumours and experiences of other people I know though - and I don't have much of a chance of visiting a campus or talking to professors. Because of life reasons it'd have to be abroad and I'd have to do at least the first year online.

So... yeah. I'd appreciate hearing some experiences in CS degrees and in programming jobs. Is it really that bad time-wise? Is it something enjoyable?

top 3 comments
sorted by: hot top controversial new old
[-] jjjalljs@ttrpg.network 1 points 6 months ago

huge caveats that I’ve never finished any presentable project and I’ve never done anything with a team, I’ve only done solo stuff.

These are moon sized caveats.

If you can't work with a team, you're not going to make it.

No one likes the guy who goes off on his own for four days and comes back with a massive pull request to review. Especially if it's full of idiosyncrasies, doesn't follow the team's standards, and doesn't actually meet the requirements because the guy didn't talk to anyone. That person is often a net negative for the team because the rest of us have to spend so much time bringing them in line with everybody else. Don't be that guy.

I think it's like a rookie developer rite of passage to go and make a huge, unsolicited, change request to the code and then having it get rejected. Get buy in from the team before you do stuff like that.

Also don't be the guy that never finishes anything at work. Management is going to expect you too finish the work you agree to finish. So is your team. If they ask you to add a date filter to the project page and you didn't finish it because you decided it would be cool to rewrite some build scripts from bash to node (which no one told you to do), you're not going to make friends.

Do what you want in your personal time, but working professionally means having standards.

Oh, and you'll probably have to write automated tests. I mean, a lot of software jobs are trash and have trash testing practices, but many are good. "Trust me bro" isn't usually good enough for a PR approval.

Hopefully you'll quickly figure out how to work with a team.

As for your main question, I don't typical work long hours, and the work is generally enjoyable. The pay is good.

[-] 0x01@lemmy.ml 0 points 6 months ago

Plenty of anecdotes out there, you'll find people with every kind of experience. Don't stress too much, the job itself depends entirely on the team, product, and industry.

I work in a tucked away industry highly specialized in some random sector of manufacturing and service. I've worked at three different companies in the same sector and each was wildly different. In general programming in a professional setting causes a tremendous shift in the way you program no matter where you go.

The things you focus on in a team are: how can I make this code resilient so none of my teammates can screw it up, readable so anyone can understand, and runnable so after every iteration it will function.

Your style conventions and preferred way of programming may have to shift to accommodate working with others. No more super cool but impossible to read functions, no more 70 layer deep polymorphic chains, no more random spacing and inconsistent brackets.

Programming professionally comes in different flavors. Young startups need hard hitting fast develpers who type 150wpm and munch through requests like nothing, leaving a trail of tech debt and bugs behind but getting the product to mvp status. Established companies need methodical, measured programmers who think through the consequences of their actions and write code that will stand the test of time, programmers who don't say "we should just remake the whole thing" every tuesday.

I've been programming professionally for about a decade and can confidently say I would be pleased to stay in the career for the rest of my life. I am not confident that the precise job I have today will even be available in that timeframe because there have been amazing leaps in technology that convert business logic into code, see copilot's new workspace product.

Go for it, if you find a business that feels like a bad fit move on. Plenty of businesses are itching for competent developers.

[-] jjjalljs@ttrpg.network 1 points 6 months ago

programmers who don’t say “we should just remake the whole thing” every tuesday.

We had a guy like that at the startup I work at. It was not a good fit and he's no longer on the team.

this post was submitted on 08 May 2024
1 points (100.0% liked)

Ask Experienced Devs

0 readers
1 users here now

Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 1 year ago