Inexperienced soon to be college freshman with a few questions about CS

Hey! I’m a senior in High School (already eighteen ;]) and ever since I touched a game, I decided I wanted to do a career in CS. It didn’t have to be specifically games, but as long as I could be using a computer to work on some sort of code, I’d be fine. Few questions though:

  1. What should I do to get started? I have no idea what I should be doing at all, I hear things about leetcode but am completely unaware of it.

  2. What CS job is the best? From what I heard it’s all pretty good except being a non-indie game dev, since they grab fresh out of college folks, use them dry, and then expunge them.

  3. Any recommendations I should be doing in college, when I get there?

  4. How hard is it to find a job? I see people in agony sometimes, and I’m just like “yikes”. I come from somewhere where rarely anyone in half of the state wants to do something computer related, so I don’t get the oversaturation claims

  5. Any questions I should be asking?

Posted Oct 30, 2018, 5:24 AM UTC

05
rickross234Frontend Engineer | Junior BS CS•
  1. Don't jump into Leetcode. Learn a programming language or build on top of a programming language you already know. Complete some practical projects like a website or mobile app. Once you've done that then have a go at some Leetcode easy problems and progress to the mediums. Hards aren't worth looking at at this stage.

  2. IMO, game dev jobs pay less than general software dev jobs. There's a notion that we can pay you less because our work is so fun (because it's games and because everyone wants to work on games)

  3. Hackathons, co-ops and internships. Also look for part-time programming jobs in your college department.

  4. It's hard if you do everything wrong. Low GPA, no internships/co-ops, no part-time programming jobs and no leetcode ability.

  5. Dunno

4
BadUXSuspicious Wombat Explorer•

What should I do to get started? I have no idea what I should be doing at all, I hear things about leetcode but am completely unaware of it.

r/learnprogramming

What CS job is the best?

There is no "right" answer here.

From what I heard it’s all pretty good except being a non-indie game dev, since they grab fresh out of college folks, use them dry, and then expunge them.

Yea that sounds more or less accurate. Some areas will be a bit more dry than others. Unclear if you actually care about that.

Any recommendations I should be doing in college, when I get there?

Math. CS courses. Learn how to actually program (since mostly you won't learn this from CS courses)

How hard is it to find a job?

Actually relatively easy. CS is very much in demand for now. A lot of the agony you see in this subreddit is people trying to break into the top few employers, which is definitely more difficult.

Any questions I should be asking?

Asking whom?

3
PM_me_goat_gifs6ish yrs exp & moved US -> UK•

The advice in the sidebar of r/learnprogramming is genuinely really good.

2
PrinceOSOP•

For the last question, I meant like probably veterans of CS. Otherwise, thanks for answering and helping out!

1
devnullable0x00•

A lot of it depends on who you are and what you enjoy.

All of this is also very dependent on the university / courses you'll be taking

Before i get into answers for your questions, let me go through the things that you should get for school I wish someone had told me.

​

None of this needs to be expensive or flashy. and never leave anything out or visible. It doesn't matter if you're going to get water at the fountain, pack it all up and carry it with you because people steal things.

  • Get a good keyboard
    • I don't care if its mechanical or marshmallow rubber as long as you can use it for inhuman lengths of time comfortably.
  • Buy your comp Sci textbooks, the others don't really matter
    • Online is cheaper
  • When buying a laptop, consider the screen
    • it is big enough? is it bright enough? is it clear enough?
    • the things you will be doing will run on a toaster, but you will be staring at the screen trying to read code for days on end.
  • for the price of a decent tablet you can buy a shitty 11-inch laptop
    • get the laptop instead ( explained more below)
  • decent headphones with noise cancelling

​

  1. As far as what you NEED to get started. absolutely nothing. I had classmates who had never owned a computer until late sophomore year. If you are wanting to get ahead I suggest learn how to use linux and git. Don't worry too much about learning how to program, you'll do that in class, but there's a lot you can do to supplement that knowledge. This is where that 2nd laptop will be invaluable. You'll be able to run linux on bare metal and screw it up as much as you want without ever worrying about loosing school work or "I have to fix this before class in 20 minutes"
  2. The CS job that's best is a personal decision. the one thing I can tell you is that it isn't your 1st CS job. probably not your 2nd either.
  3. Get to know the older CS kids and your professors. I learned more in the CS lounge before and after class than I did in the classroom. Its one thing to work in a group project but its a whole different thing to be sitting around talking about some math proof and spontaneously start collaboratively writing an algorithm with your friends just to see if you can.
  4. Junior developer positions are not as available as the rest of the world thinks. It will take time and a whole lot of effort to get your first job. Companies are taking a gamble and for every good developers there are 10 mediocre coders. BUT after 2-3 years experience companies will be fighting for you. Knowing anybody in the industry is a huge leg up. yet another reason for #3 by the time you're ready to graduate, your friends will be valued in their company, and their voice will have some weight to it.
  5. ask your university what programming languages / OS they're using. If there are any Computer clubs or programming competitions they attend.

pro tip: don't trust the campus career support people...I asked them for help practicing for a whiteboard interview and they claimed that nobody ever asks technical questions or makes you solve puzzles for an interview...

1