Ask Slashdot: What's The Best Job For This Recent CS Grad?
One year away from graduating with a CS degree, an anonymous reader wants some insights from the Slashdot community:
[My] curriculum is rather broad, ranging from systems programming on a Raspberry Pi to HTML, CSS, JavaScript, C, Java, JPA, Python, Go, Node.js, software design patterns, basic network stuff (mostly Cisco) and various database technologies... I'm working already part-time as a system administrator for two small companies, but don't want to stay there forever because it's basically a dead-end position. Enjoying the job, though... With these skills under my belt, what career path should I pursue?
There's different positions as well as different fields, and the submission explains simply that "I'm looking for satisfying and rewarding work," adding that "pay is not that important." So leave your suggestions in the comments. What's the best job for this recent CS grad?
There's different positions as well as different fields, and the submission explains simply that "I'm looking for satisfying and rewarding work," adding that "pay is not that important." So leave your suggestions in the comments. What's the best job for this recent CS grad?
Security is a growth industry.
Sometimes the "writing on the wall" is blood spatter...
A job is what pays your bills, so you can go and do things you like. You've got this one in the bag; so what are your hobbies, interests? Go pursue those. In the end, we're all worm-food, so make every day count.
Lots of growth potential there!
The children now love luxury; they have bad manners, contempt for authority; they show disrespect for elders and love chatter in place of exercise. Children are now tyrants, not the servants of their households. They no longer rise when elders enter the room. They contradict their parents, chatter before company, gobble up dainties at the table, cross their legs, and tyrannize their teachers.
- SOCRATES by Plato
Ice Cream has no bones.
the submission explains simply that "I'm looking for satisfying and rewarding work,"
What people consider satisfying and rewarding is entirely subjective. What works for me, helping people without them realizing it was me, would leave most other people feeling unappreciated. The submitter is going to have to decide for him/her self what would they would find satisfying and rewarding.
Start at a big company. A big software company. After a while, start looking to leave there and go to a small company.
Why: If you start at a small company, you will confuse the freedom for chaos. You will not appreciate how easy it is to get things done. If you start at a big company, you will learn some big company processes. A few of them are good, most of them are bad, and you will probably have a very constrained job. Then move to a small company where you can actually do stuff.
A prof once put it this way: Work at a big company to learn stuff, then work at a small company to apply what you've learned.
I think the best way to answer the question would be to select some areas where you'd like to live and then spend some time searching for jobs in those areas.
I was searching for employment ~18 months ago, mostly in the Northeast USA. It definitely seemed like I was seeing a lot of jobs for embedded software developers. So many that I was toying with the idea of going back to school and acquiring some of the requisite skills.
Later on, with spouse, children mortgage repayments you won't necessarily want / be able to:
- Do some IT support for expeditions going to exotic locations
- Do some contracting someplace like the South Pole
- The oil exploration or production rigs pay well (although not as much as before)
- Cruise ships are pretty much nonstop partying; bring plenty of aspirins and condoms
- Holiday villages, ski resorts: see above
- Voluntary work, either at home or abroad. Can be very depressing but also rewarding
- Joing the military on a fixed-term deal
I've done a few of the above; provided amazing experiences (many good, some bad) and it'll make your CV stand out from the crowd too.
perhaps... this is why great wealthy civilizations eventually collapse? Due to the children getting used to that 'level of luxury' that they no longer strive and do the hardest things to push their civilization to the next level?
So, in this CS degree, did you learn any actual computer science, or did you just pick up specific technologies that will be obsolete in a decade? From that list of things, it sounds like you got a software engineering qualification from a trade school, not a computer science degree.
I am TheRaven on Soylent News
We don't know what you find interesting or challenging. you may not know either until you bounce through some place.
go find a company where you like the people; you've got the skill set that most companies are looking for. And figure out what you like. While happiness does in part come from not having a soul sucking job, having a not sucking job that pays enough to not have worries and be able to do the other things in life is just as important.
Despite what they tell you, a job is still just a means to make money to be able to afford to live. You can be paid to do that which you enjoy (shh, don't tell them) - and it is still a job. And before someone says "but but but" I am not saying take a job that sucks your soul out through your eye balls; I am saying I accept the fact that while I love cooking, and I also recognize that when I am done I have to clean the kitchen and if I don't clean the kitchen I suck as a person who shares that kitchen with others. Cleaning the kitchen is fun (and meaning it) said no one ever. (So as much as I do enjoy my job, it comes with some responsibilities that I have to suck it up, realize this is what I accept money for, and go do them. Much like everything in life. No parent ever said they love emptying the diaper pail either, but the end result has been worth it)
back to the first paragraph - a lot of us have bounced through companies and jobs. Our interests have changed. Our skill sets have changed. The job market has changed. When I started, the Web didn't exist. FORTRAN and C were king. I bounced through CAD/CAM, through two small startups (one still exists, and the other long since swallowed by another startup), to contracting, to a large financial company (where we're playing with Angular and such - you'd be surprised what Fortune 100 companies actually do - but also the job stability is through the roof and I have a kid about to start college, which ties back to I have a job to make the rest of life better)
Now if you'll excuse me, I am going to tie an onion to my belt and go yell at clouds. That last paragraph made me feel very old.
Look at what is happening with the university IT jobs in California getting outsourced and understand the lesson: If someone can do your job cheaper, you will eventually lose it.
Several options to consider that guard against that:
1) IT Security - a very in demand skill and one that is less likely (right now) to be outsourced
2) Big Data - data is the new black gold - learn how to mine it and you'll do fine.
3) Defense Contracting - if you can get a security clearance, there is abundant work where defense contracts are strong (around DC and military installations.)
4) Write OSS - get a day job that is not too stressful and work on a piece of OSS at night - do something you have passion for. Produce something good and you'll always have work from that or other projects in need.
5) Work with an emerging language and master it - Scala, Swift, Go, etc., are all gaining steam. Relatively speaking, not many developers know there is fewer competition for people who are good with them (unlike Java where the market is flooded with good and bad talent.)
Most important: Manage your own career by staying educated and constantly look for the next big thing. Your success and failure are controlled by you, not by your employer.
The university of California
Plumbing, welding, electrician, A&P, etc. All jobs that are in high and constant demand, offer a chance for pretty good earning potential, and can't be offshored. Depending on which one you choose you even have the option of starting your own business down the line.
The only thing necessary for evil to triumph is for it to be pitted against a slightly greater evil
Can't be outsourced to H-1B's.
While this is true, you have to be careful that you don't let yourself get pigeon holed into old and obsolete technology. I was doing defense work when they shut down the shuttle program at Cape Canaveral and I tell you, I have never see so many resumes from brilliant people who had almost zero chance of finding a new job without brushing up their skills. A lot of them had been at NASA and the Cape for 20+ years and we interviewed them out of professional courtesy, and to help them brush up on their interview skills and point them in the right direction on skills that were useful. But even my company was a solid 10 years behind modern industry in so many different ways.
Here's some advice: You're the new out-of-college-kid-on-the-block. Just because you scratced-the-surface on all those languages, network and sys-admin tech in college, doesn't mean you're even CLOSE to an expert and haven't done it in a professional setting at all where you need to give a shit about 10,000 other things besides 'getting it done and working'.
Just because something seems dead end to you doesn't mean you don't learn, and it also doesn't mean you STOP learning there because you've made that mental decision that it's dead-end. There's tons of skills to learn where you're at --- but there's also tons of what-not-to-do to learn as well. No place I've ever worked at did everything right; there is always things that got me to the next level at places, then there were things I absolutely despised that I had zero control or muscle-to-flex to change because it really did need addressing.
Regardless if you're going to sling code for a living or be a sys/network admin, they are two completely different worlds in terms of professionalism and attack. My 'sys-admin' code/scripts/software I write for automation, jobs, tasks, gluing stuff together, ect. is COMPLETELY different from doing serious code development in any shop that it's bottom line is: your code makes us money or provides us a vehicle for revenue. My fundamentals might be the same in terms of development style (e.g. 90's waterfall vs. agile), but I still use a CVS of some type and practice secure development, but it's a far cry from writing a web/mobile/client-server app for users that maybe supports a business model or creates business revenue --- then you need to know your shit not just writing 'hello world' in college 50 times with 50 languages.
Keep doing what you're doing and you'll know what you want to be. Don't just pick a field because it's some hot topic of the day in the IT world. Figure out what you want vs. what's giving a slightly bigger paycheck at the end of the week. People will pay you what you're worth, trust me. But if you don't learn the skills and what-not-to-do's and gleen as much off the smarter-than-you folks, you'll just be chasing your tail.
Exactly. You rattled off a bunch of technologies as if that determines your career path. Those are just skills, which change over time.
What do you want to do?
What do you like?
Those are the questions you need to answer. Perhaps the best advice is go see a career counselor to determine your career. It may have nothing to do with CS.
CDL isn't a bad thing to have with a technical degree.
When I worked doing experimental on highway trucks companies almost always preferred to send an engineer with a CDL over a CDL driver AND an engineer. If something goes wrong it's easier to diagnose something you helped work.
In the next ~5 years these trucks are going to need a lot of validation hours and tests. A CS major with a CDL would be a prime candidate to run validation tests.
I really don't know where the submitter is coming from but neglecting pay speaks to someone who doesn't quite understand how the world works. Of course, being a recent college grad they probably have certain idealistic visions of how the world should work. Let us debase them, gently, of some of them.
In terms of salary, by not going for at least industry average, you're setting yourself up for future financial troubles.
Don't be afraid of getting paid. Never be afraid of asking for more money. Money is not the end-all, be-all of existence but it is necessary for moving through this world. Get what you need now. It is a useful base for the future when you've done your work, when you've done a few miracles. For those times when you no longer have a safety position to fall back on.
Oh, those times will come. When you least expect them. So get paid. Get paid as much as you can.