“So, what year are you?” the dreaded question comes. You just finished your well refined elevator pitch and that’s the question they ask you? You can’t lie. But you know that by the time you finish uttering the forbidden word, your conversation will be over, and your resume will be in the trash pile. It’s a hard life trying to get an internship as a Freshman, especially without much prior experience. But with a lot of work, and a little luck, you can do it.

Pick something to become experienced in

If you think getting an internship without any experience sounds too good to be true, then you’re right. Experience shows recruiters that you have initiative. It’s physical proof of your ability to learn, and it gives you something to talk about. Lack of experience shows...well...nothing.

The good news is that you can give yourself experience in just a few months. First, you have to pick an area that you want experience in. There’s web, mobile, AI, VR, etc. If you don’t know what you’re interested in, you should explore different areas, but commit to something fairly early on. You need a narrow focus to build your skills rapidly.

How to get experience

Side Projects

Working on your own side projects is one of the best ways to learn something. Find a project that interests you and figure out how to build it. Reading books will give you tons of theory but you need to apply it to be useful. You can work on these projects alone, or with other coders, maybe people you met at a hackathon. If you have no ideas, look for a tiny problem on your campus that you can solve, then get to work.

Student Organizations

Look for clubs on your campus that bring students together to work on projects. These are great places to meet people and have fun while you gain experience. At UCLA we have clubs like ACM and Creative Labs which have several guided projects each quarter.

Hackathons

Hackathons are events where tons of programmers from tons of schools gather to be nerds, dress up in onesies, eat pizza and collect free swag. Oh, and we also build things. We work on apps and websites and ‘smart chairs’ and ‘self driving skateboards’. That may sound intimidating, but the beautiful thing about hackathons is that they are 100% beginner friendly. They have workshops to teach you more things in your chosen area, and mentors to help you out while you work. Don’t have a team? It’s all good, they’ll have a team-formation activity so you can find people to work with.

You shouldn’t be focused on winning at all. Focus on learning as much as you can from all the brilliant people there.

Getting The Internship

Apply to Everything

Most people are going to throw your resume in the trash when they see you’re a freshman, but there will be 3 companies that don’t. In order to find those 3 companies, you may well have to apply to 300. Just kidding, more like 30. Apply to every intern position you can find. Apply to companies you never heard of. Here’s a great resource that has all the company applications in one place: intern.supply

Freshman Programs

Believe it or not, there are a select group of companies that actually want to hire you. Apply to everything on this list. Some of them admit you on a rolling basis so you’ll want to apply early.

Career Fairs

While you can get a job by just applying to things, making a genuine connection with a recruiter will increase your chances significantly. Career fairs are great places to meet recruiters. Even if you think you won’t get hired, you should go anyway just to practice talking to them.

Don’t act like a freshman

One critical mistake I made when I went to career fairs was to ‘act like a freshman’. I had low confidence and assumed no one would hire me. This made it much harder for me to find a job. It’s hard to be confident when you’ve only been coding for 2 months, but if you believe, they believe. Focus on your strengths and not your weaknesses. Talk about your few experiences confidently (you’ve gone to a hackathon right?). If they ask you “Do you know Java?”, don’t say “No...” and look to the floor in defeat. Say “No, but I’m a pretty quick learner, like that hackathon where I learned rails in a night because no one on my team wanted to do backend.” Don’t be afraid to ‘oversell’ yourself. You’re not going to get the interview by being modest.

When you’re making your elevator pitch, leave out the word ‘freshman’. Save it for later and use it as a weapon. If you wait until after you talk about your projects to drop the F bomb, then instead of dumping your resume in the trash, the recruiter, who already found you kind of interesting, will be like “wait, you’ve done all that and you’re ONLY A FRESHMAN?”.

Your biggest weakness is your greatest strength. Wield it well.

Be persistent

If a company hasn’t responded then don’t be afraid to be annoying. Something as simple as a follow up email, to a company that seems to have forgotten about you, could be enough to get you the interview. A great tip is to send them updates on the projects that you’ve been working on. It lets them know that you’re improving your skills and shows genuine interest in their company.

Ace The Interview

There’s not much to say about interviews besides ‘just practice’.

The most popular book for this is Cracking the Coding Interview. There are also great free resources like HackerRank and LeetCode.

Take a class in Data Structures if you can, and actually pay attention. Or learn it on your own here

Personal Stories

Here are some stories from students who got internships as Freshmen.

Vic Yeh

After applying to tons of places, I went to the winter career fair. Most of the companies rejected me because they ‘don’t take freshmen’. The WhatsApp booth had some coding challenges so I did some and turned in my resume. I heard back from them in a month and went through a few rounds of interviews until I finally got the job offer.

Throughout the whole process i kept reaching out to them and sending updates on projects I was working on. I think that helps because it shows enthusiasm. It shows that you care about working for them.

As a beginner, you shouldn’t make any excuses for yourself. If you really want it, then go get it.

Nina Ling

I doubted I could land an offer, but tried for the freshman programs at the big tech companies. Other than the large companies, from which I was rejected without being interviewed, I also sent my resume to a few startups. I hadn’t gotten any responses, while my friends were already interviewing with some of them, so I felt a bit upset. Screw it, I thought, I'm going to send an annoying email asking if I should provide some more material that they could use to evaluate my abilities. To my surprise, they directly offered an interview. I didn't expect much, but I still researched the company, tried my best, and honestly felt extremely awkward during the interview. A few days later, they called me offering a summer internship, which I accepted.

Don’t assume you can't get an internship due to lack of experience. Go to career fairs, send out resumes and apply to things. I got my interview after the winter startup fair, but I got practice talking to recruiters from previous career fairs. And also know that recruiters don't only look at technical skills when interviewing. They want to see that you have an understanding of how their company works and an interest in their product.

Mihir Mathur

At winter career fair, I went to the Thomson Reuters booth, introduced myself, and talked about hackathon projects. At the end of our conversation, I told them I was a freshman, and they were super impressed. I sent a follow up email and they scheduled a phone interview about a month later. I had an on site interview in April and got the offer in 2 days.

I think confidence is important. You should greet recruiters with a smile and assume that they like you. It also helps to make a game plan before going to the career fair. Think of the companies you want to target and practice your elevator pitch.

Rohan Varma

Before I even started at UCLA, I set a goal of obtaining an internship after my freshman year. I knew there would be a lot of competition for internships, so I wanted to have the time to set myself apart. I set up a personal website and refined my LinkedIn page to document my projects. I learned a lot the summer before my freshman year: from languages like JavaScript and Python to concepts such as RESTful API development and basic AI. The best way to learn is to get your hands dirty and actually make something, so I finished summer with a nice set of side projects.

Once school started, I also applied for research opportunities with professors. I was lucky enough to get a research position that relates to machine learning, one of my primary interests. From September to November, it was time to apply: I refined my resume, went to career fairs, and found startups to apply to online. While doing this, I was reading "Cracking the Coding Interview" and practicing on HackerRank. When it was time to interview, I was sufficiently prepared and managed to score the internship.

Go forth and apply

It takes a lot of effort to get a Freshman CS internship, but if you’re willing to put in the effort, they’re willing to hire you.

Further Reading:


(Thanks to Vic Yeh, Nina Ling, Mihir Mathur, Rohan Varma and Jorge Fuentes for their contributions.)