I’m a senior in high school right now and definitely need to consider what I’m going to do in college and for work.
For a very long time I’ve been into computers, and am a developer with a few big projects under my belt (this is a burner account for privacy). So, my logical choice for a while was to become a software developer professionally.
Nowadays that plan doesn’t look too promising. AI has basically replaced junior developers (with dubious results) and the competition has gotten much fiercer. I’m not even in college yet so I have a good amount of time to potentially pivot to something else before choosing a major.
I’ve got quite a bit of experience with Linux and I manage a home server, but that probably doesn’t differentiate me much. I’m honestly interested in most things computer related, but don’t know of any specific fields to seek out. If it’s so hard for fresh CS graduates to get jobs, why would any other option be different?
I’ve got quite a bit of experience with Linux and I manage a home server, but that probably doesn’t differentiate me much. I’m honestly interested in most things computer related, but don’t know of any specific fields to seek out.
But yes, there is a chance in it. This experience can give you a head start into cloud computing technologies, virtualisation, virtual networking, kubernetes etc. For a good many current IT experts this is still a hornet’s nest where they don’t even dare to stick their nose in, and a lot of others can use it, but never become experts there.
My take is that right now we’re in a software building boom. Making software is a lot cheaper now but maintaining software not as much. I think programmer numbers right now have flatlined but will probably grow in the future as we write more software.
Pivoting to trades is a much safer choice and healthcare will be a guaranteed job security because of demographic changes.
The meta is job experience > skills > certifications > education
Typically, if you look for computer related job, they ask for comp sci or some equivalent degree + relevant experience + skills. If you’re going for SWE or Game Dev, you’re majorly fucked. I’m in IT but I started a couple years ago but I do occasionally look at job listings nowadays and I can tell it’s competitive. I got multiple friends in comp sci and comp eng having tough times
IT is a shitshow generally. But it pays kinda well and it still needs humans to do the actual work. The other fields are probably a bit less of a shitshow, but given that the whole planet is kinda a shitshow nowadays, might kick you out (or in the balls) even harder. So… just choose the wig and makeup that suit you better, clown up, and join us in one show or another.
Physics.
Getting a job generally has little to do with your degree in most technical fields. The exception is on the research, academia, and science side.
So go to school take classes that are fun, if they happen to align with your career interests great if not just make sure you are building a portfolio of work related to your career goals.
If you are interested in software development, and willing to put in the work to actually learn strong fundamentals, I think you’re going to have a clear leg up on the competition after the AI bubble in all likelihood bursts eventually. Vibe coding is hurting the signal to noise ratio in general right now, but as far as I’m aware a “live portfolio” like a website of personal projects has always been as good if not better than a resume when it comes to selling your skills in software.
Just consider whether you’ll be able to tolerate doing the work when you’re not going to be the one in charge of deciding what you work on.
Yep. Anything involving creation, portfolio beats CV.
Learn RPG.
Like it’s old. Old as fuck. But companies still use it… and the devs that can do the work are dying… literally .
Trucking company I worked for in 08 had a 5 year plan to get off ibmi.
Talked to the head of their infosec last week. They still use it and still have a 5 year plan…
Medical software company I work for is so desperate for RPG devs they are hiring back folks that retired for contract hourly rates.
The CIO recently said in an all hands that if we knew someone that could RPG dev… brother cousin neighbor… to send them their way and the bonus would be larger.
Edit Enterprise RPG (IBM i / AS/400) Software Developer
i highly doubt investing in old mainframe stuff is a good idea long term
What?
If you are interested in the internals of computers just as much as programming them, take a good hard look at Computer Engineering as a major instead. You still get to code, but you also get to understand the hardware underneath it all. Since it is rooted in the physical parts of computing, I think it is less likely for AI to eat those jobs. (Plus, everything from your car to your TV to your coffee maker has an embedded microprocessor in it now. I think embedded software is a safe bet.)
But, no matter what major you pick, it is no longer the case that simply graduating with a degree (and a good GPA) is a guarantee of a good job. You need to go beyond your classes, and find additional things to work on. Internships are great if you can get them, but even if you can’t, try to find an open source project (or even a hobby project) that you can spend time on. You want to have something more than your coursework on your resume for those first jobs. I would even value a resume with some good internships or side projects and a 3.6 GPA over someone with a 4.0 GPA who did nothing else (and left me with nothing else to talk about during the interview).
Finally, whatever you do, don’t extend yourself to go into debt. Maybe there are a small handful of CS schools that are worth going into debt to attend – but let’s face it, if they want you and you’re good enough, they will find a way to get you to afford it there, and you will get hired somewhere if you can make it to graduation. But, I know folks who went into 100+k worth of debt to go to a CS program at a small liberal arts college because they liked the campus. Don’t be that person. Unless you are MIT or Caltech material, your local State University is probably good enough. If you do get through 4 years of school and can’t find a job in your field and need to pivot, that will be so much easier to do if you have as little debt as possible.
If you actually care it’s a good time. It has never been as easy to learn and get into software engineering as it is today.
For the first time in over thirty years, the community college near me has had many members of the community advisory board (reps from various local businesses) that rep’d tech firms not even come to the advisory board meetings.
I take that to mean they’re riding the AI bubble, hoping to phase out much of their human workforce. That said, someone has to maintain the local infrastructure, and while data centers don’t employ many workers, they need some staff to watch over the systems. I also think networking still is a strong field, and obviously cyber security.
I have worked with several folks that were much better at their job because of self-hosting, so your experience there maybe isn’t as worthless as you think.
My advice would be to talk to recruiters and department heads and ask what they see themselves needing.
I also think networking still is a strong field, and obviously cyber security.
NO. ABSOLUTELY DO NOT GO INTO CYBERSECURITY. There are no jobs left in that field. College degrees are useless, boot camps are useless. Unless you got several years of industry experience, no one will hire you.
Good catch. I’m out of the job search market for going on five years and a lot has changed since then. It makes sense that the market is flooded and AI is probably being developed to “do it for us”.
I do still get feelers from recruiters though, and the jobs they share require a BS in CS or equivalent experience (usually 4+ yrs on the job). Would I get my CS degree again knowing what I know now? I think so. I learned a lot and met a lot of folks through internships. But none of my jobs have cared about my degree. They like my social skills, perfectionism and restlessness.
In my experience, people can start as server or network admins and pivot over pretty easily.
The skills continue to have plenty of value, even if the official title isn’t a hot hire. As soon as your office gets hit with a ransomware attack, you can write your own salary.
I think cyber security would be fascinating to study and networking would be good. I just hoped my experience with development wouldn’t be useless towards getting employed in those fields, but I feel like it would be.
Thanks for your advice
I’m just one person on an anonymous social platform. Take my opinions with a grain of salt. Developers definitely still have work, but you are right the the current outlook seems* bleak.
Coding for network security companies is a possibility.
*I haven’t asked anyone in the know.
Saw that. Thanks
It’s honestly hard to say. It’s very impressive what AI coding can do, especially in the past year, but all AI companies are not making a profit. They’re effectively subsidized by investors. They’re focused on growth. At some point they’re gonna need to make a profit, they cannot continually operate at a loss and focus on growth. In fact, when Microsoft started charging properly it was such a massive deal that they called it the tokenpocalypse.
Honestly, I hate to say it, and I’m not trying to be a tech bro, but I think AI is here to say. What exactly it looks like long term, it’s hard to say. I can say this though, knowing how to program will make you a better vibe coded (I feel dirty saying that seriously). So even if AI becomes the norm, you’ll be better positioned if you know what you’re doing.
When things turn though, it’s impossible to say. It could be in the next year, could be like five years out. It could be that when you’re done with your four year degree, they’re still out here doing this “AI is gonna fix everything and we don’t need junior devs” song and dance.
TL;DR: AI is not profitable now so will get more expensive meaning they’ll have to use it less. Either way, knowing how to program without AI will make you better at programming with AI.
Not nearly as bad as the now headline news presents.
Tech unemployment is still just about the lowest of any industry. Pay remains competitive (although nothing like the $200k entry level jobs of the 1990s). The labor demand is definitely growing, both domestically and globally.
Silicon Valley is shedding jobs. But if you go chase a job at EPIC up in Wisconsin or JP Morgan out in New York or take a job at Deloitte or SAP or Schlumberger, you’ll find them. Look for positions in the airline or finance or real estate or energy industries, there’s a superabundance of work and a perpetual shortage of labor.
Most of these big corporate outfits are glued to Microsoft products, though. Oracle also remains a popular database environment. Or they’re using some proprietary nonsense - Dell Boomi for visual programming of interfaces or UIPath for botting or some other ill-conceived overpriced insanity.
But - at least where I’m sitting - AI hasn’t replaced shit. My office is still trying to implement Agile and we’re a Fortune 100 company. Most firms are way behind the curve. Don’t let the hype cycle fool you.
deleted by creator
The CS job market is very location specific, so I don’t have much advice in that regard.
I’ve got quite a bit of experience with Linux and I manage a home server, but that probably doesn’t differentiate me much.
That said, I have been on my company’s rotating interview panel for about a decade now, and while my company’s line of work involves a lot of Linux development, I can say that most of our college hires do not possess very much Linux background at all. Sure, they might have used Linux machines for school projects, but rarely do any of them assert to be “experienced” with Linux.
By that, I mean deeper knowledge than just using Bash. If a candidate can tell me why they prefer csh over Bash, or any syntax difference between POSIX sh compared to Bash, that is definitely a distinguishing quality. It speaks of an operator who has enough usage under their belt that they’re annoyed by the typical distro’s defaults, and more importantly, assessed the available tools, and picked the right tool that works for them.
I cannot understate how valuable it is to us to find a candidate that understands their tooling, especially right out of college. Considering that we assume most new hires have to be brought up to speed over the first few months, a candidate that saves us that effort is at least one rank above their peers.
Deeper functional knowledge comes in other forms as well. It’s one thing to know how a C program’s main() function is invoked by an OS, but anything which shows a fuller understanding of, say, system architecture and how a timer interrupt leads to a context switch in an assembly ISR, to a returned service call to load an ELF, to a CPU privilege ring change, to crt0, to main(), that is another level entirely.
I’ve interviewed candidates that had side projects involving retro game disassembly. So maybe they couldn’t give me the above level of detail for x86, they could describe the same for MIPS. And that’s good enough, because most architectures do roughly the same thing, with a few different semantics and names.
Circling back to managing a server, if you had to deal with PAM, NAT and port forwarding, tunnels and VPNs, compiling from source, or abything like that which is non-trivial, do not sell yourself short. All that stuff is resume material, because if you can relay to an interviewer that you’ve dealt with real network or machine security tasks, it is distinguishing.
The best part is that you have all of college to learn the CS curriculum, but it’s also time that you have to pursue any particular focus that excites you. I’ve written earlier about how embedded engineers don’t really get caught in the hype cycle, so jobs don’t suddenly appear then disappear a few years later. If you wanted to do that route, getting started with any microcontroller (eg Arduino, STM32) would help, with a goal to understand all the “magic” that the IDE and compiler are doing. Maybe instead you like das blinkenlights and find yourself drawn to hardware design. It wouldn’t be too late to consider a switch to the Computer Engineer (CE) major, so you have a small taste of the EE life.
CS as a field is so large that there are many routes between “I want to work with computers” to a declared major and to a career thereafter. Fortunately, time is on your side; this would be a very different conversation if you were a 4th year college student.
It’s a golden time for embedded stuff right now, because the hobby space is so rich. Arduinos and STM32’s alone have so much material out there, and they are super cheap. I think a kid who is in college for CS, but who can take what they are learning and apply it to some of these little projects will be a hot commodity when they graduate.
Thanks for all your help everyone!