Skip to content

oberlin-csmc/Internship-Guide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 

Repository files navigation

Prepare

We would recommend giving this guide a read. The rest of this is stuff we found helpful in getting started.

If you are a sophomore or freshman, scroll to the bottom of the above guide. There are opportunities especially for you :)

Isabel's anecdote: I did essentially nothing my Sophomore summer, and physics research (which I didn't put on my resume) the summer before. After following a lot of this advice and applying to a lot of places, I ended up with an internship at a good company. So do not fret, all will be ok.

Find companies

Company finders

You can also brainstorm companies you use in your everyday life, have heard a lot about, or think are particularly cool. Anything is up for grabs!

Isabel's experiences:

Handshake was a mixed bag - some were really good companies, one I applied to literally had me do a user test for them then never scheduled a phone interview.
Intern supply had the best known/ highest paying companies
LinkedIn had the best response rate
Cold-emailling had lower hit-rates, but the companies who responded were really impressed. It opened some cool doors to work with them in the future.

Adina's experiences:

I tend to find most jobs are posted on all the main job posting sites. Some sites (LinkedIn, StackOverflow, Indeed, probably others) let you set up email alerts for specific searches (ex. "Software Engineer Intern") so they'll email you when new matching jobs are posted. Personally I really like StackOverflow because it's specifically tech jobs, they seem to have a higher bar for what they post, and the ads have to specify experience level, location, whether they sponsor visas, etc. LinkedIn in my experience is the best balance of having the most job postings while also not being a huge headache to browse. Also it'll tell you if you have a LinkedIn connection who works there!

Vary the Way you apply

Interviewing is a numbers game. the more places you apply to, the more likely you are to get an internship. However, for each internship, you're in tough stuff cause you have to be the best out of all the candidates!!! That's why it's important to vary the way you apply.

Strategy 1

Apply to as many places as possible, as quickly as possible. If a company requires any short answer questions you can't do in 5 min, skip them. Intern supply, easy applications, and massive company list are good for this.

Strategy 2

Put careful effort into companies you really want to work for. These are the companies you cold-email or reach out to alumni for. LinkedIn, Angel List, Wisr, and Cold-emailing are good for this. The Oberlin College Computer Science group is still growing and connects you with alumni in "the industry": https://www.linkedin.com/groups/8416892/

Get noticed

Speaking with an Actual Human in the interview process is IDEAL, especially if they can pass on your resume.

  • Wisr
  • LinkedIn*
  • Talk to professors

*Note: for LinkedIn you need to join Oberlin College and Conservatory group + follow Oberlin college

What Isabel found to be helpful was asking alumni to talk about their post-oberlin experience, then at the very end (and only if you felt comfortable) asking them if there was anything they could do for you.

Example questions:

- What do you do?
- What does a typical day look like?
- How did you get there?
- Can you descibe the culture of your company?
- Whats your favorite/ least favorite thing about your company?
- What do you wish you had taken advantage of at Oberlin?
- What skills do you think I should improve before going on to working life?
- Do you have a favorite Memory of Oberlin?
- Do you have anyone else I should talk to?
- Can I keep in touch and update you on my progress?

The last two are by far the most important - always ask these!

On to the interviews!

There are plenty of guides/ resources for these out there (including many in the guide linked at the top). Personally, Isabel found Cracking the Coding interview good for theory, and leetcode good for practice. Firecode is also an interviewing practice site that will feed you questions. Do a variety of questions, don't just read the solution and assume you've got it all. Pay attention to time pressure and being able to clearly communicate and explain your thought process as well--if you can do mock interviews they can help a lot. Also, look at the company's Glassdoor page under interviews!! People will post how their interview experience was and what kind of questions they got. You can filter them to just see posts from software engineers etc. Obviously they won't post the exact question and you won't get the exact interview, but it's helpful to A. get an idea of the general process (do they want you to do a 3 hour robo interview?? do the questions tend to be super hard??) and B. get an idea of specific topics they like to ask.

The single most helpful thing form CTCI is to fill in this table with 3-4 projects you've done, BEFORE the interviews, and memorize it well.

Common Questions Project 1 Project 2 Project 3 Project 4
Overview
Most Challenging
What you learned
Most interesting
Hardest bug
Enjoyed Most
Conflicts with Teammates

Also, if you're like Isabel and want to prepare for everything, here's a list of behavioral questions that have actually been asked in interviews

Tell me about someone you admire?
Tell me about yourself?
What are your weaknesses as a person?
What are your technical weaknesses?
Tell me about someone who dislikes you, and why?
How do you handle stress?
How do you handle a challenge?
Tell me about a time you disagreed with someone, and how did you respond?
How do you set goals?
Tell me about a mistake you made, and how did you handle it?
Tell me about an unpopular decision you made, and how you handled it?
Tell me about a time you worked on a team?
Tell me about a time you made a risky decision?
How do you handle meeting a tight deadline?
what did you liek and not like about your first job?
Tell me about your biggest accomplishment
Tell me something about you not on your resume
What are your interests besides CS?
Give me an example of your communication style

And, finally, a list of possible questions to ask them at the end of the interview:

- What first attracted you to your company, and what has helped keep you here?
- What are some challenges you're currently facing?
- What are you most excited about regarding the future of your company?
- Walk me through your dev/ workflow process: do you use scrum or standups? How are tasks determined and assigned?
- What are some projects interns have worked on in the past?
- Tell me about a project you are most proud of?
- Is there a mentorship program? If so, what is it like?
- How could I improve?

Releases

No releases published

Packages

No packages published