The Internship Search

Earlier this semester, I would accidentally identify as a sophomore at times. I’m a junior and it’s the beginning of the end of college for me. Bigger questions about life are knocking on my door as I prepare to step out of the Cornell bubble and into the real world. One of the most time consuming of those questions is that of my career. Where I intern after my junior year is likely to impact the job I might have after graduation. So this semester, I’ve been on the internship hunt (and so have all my classmates and friends).

There are over a thousand internship postings on our on-campus recruiting platform. A majority are in the finance/consulting and tech industries. As a Computer Science major, that is well in my favor. But competition is also tough for these jobs because the economics and computer science majors are both huge at Cornell. Being an international student, who will eventually need visa sponsorship, does not seem to greatly affect my candidacy for jobs in the tech industry. There are a few tech companies that require work authorization, but none of the large companies have such a restriction. This is the context of my internship search.

Most of the tech internships are in software engineering positions. Although I do enjoy programming, I don’t see myself working as a software engineer for a long time. I’d prefer work that will help me develop and use skills other than technical problem solving. My own work experience, as in my resume, is mainly my Research Assistant position this summer at Cornell and my Teaching Assistant position for CS 3110. Other than that, I have experience in writing (journalism, expository writing, blogging) and also some in acting and facilitation.

I started out by applying to several software engineering positions at large and small companies. Some companies started interviewing in mid-late September. I interviewed with Citadel and Arista Networks in September. I didn’t make it through the Citadel interviews, but received an offer from Arista Networks for a software engineering internship. It was great to have a good offer quite early in the semester.

Early in October, I had interviews scheduled with Google and Microsoft. With Google, I was interviewing for Software Engineering, but at Microsoft, I could choose to interview for the Program Manager internship. Their Program Manager role is quite alike the Product Manager roles in other tech companies. The position is an interface between the business, design and engineering teams. It requires technical skills but the day to day job encompasses several other skills. I chose to interview for that position.

Because of my impending deadline with Arista Networks’ offer, both Google and Microsoft were able to expedite my interview process. I take it for granted that companies that can afford such flexibility will be courteous enough to do so. But I’ve heard that finance companies tend to refuse to extend deadlines or accommodate other deadlines. It seems like the tech industry is especially nice in the recruiting process. My technical interviews with Google didn’t go as well as I would have liked. In about two weeks, my Google recruiter called me to inform me that I wouldn’t receive an internship offer. But my on campus interview with Microsoft went well and I was invited to an onsite interview loop at Seattle last week.

The interview loop consisted of 4 interviews – some were technical and some were on product design (I had no previous experience with this so I worked through a book onĀ  product management interviews on short notice). I also had a lunch interview with a member of the group I was interviewing with. The interviews evaluated both my skills and if I was a fit for Microsoft. It was a long and exhausting day, but all my interviews had gone well. Later in the week, I received a call from my recruiter. I was told that I am receiving an offer for the program manager internship.

Since the program manager role aligns with what I’m looking for in my internship and short-term career, I’m likely to accept this offer. It also really helps that Microsoft is an awesome company, the compensation and perks are among the best in the industry, and that I can be in Seattle next summer. But I still have a interviews pending with other companies for software engineering internships and I plan to go through them at least to accumulate more interviewing experience.

I’m relieved that my internship search is nearly at its end. It was so time consuming that it felt like another 4 credit class I must take. Now I can focus on making up for all the classes I’ve missed and sub-par assignments I’ve submitted on account of interviews. If you were expecting me to say that I can now sit back and relax … well, that doesn’t happen at Cornell.

FAQ: Cornell and the CS major

It’s around college application time for high school seniors, so I’ve been receiving quite a few emails with questions about my experience at Cornell and the CS department. I thought it might be helpful to have a post answering some common questions.

1) How do you cope with the weather?
Ithaca winters are harsh but that doesn’t stop anyone from activities on campus. In fact, Cornell rarely cancels classes even for snow storms. We learn to be prepared for all weather conditions!

2) What is the Computer Science major like at Cornell?
Cornell has a brilliant CS department and the academics is particularly rigorous. Classes involve a number of time consuming, non-trivial projects during the semester, in addition to exams. However, every class is a rewarding experience because you learn a lot.

3) Given the rigour of the academic program, do students find time for extra-curricular activities, without it being too stressful?
This varies from person to person. I know people who take more than 20 credits regularly and still make time for 2 or 3 clubs on campus. I also know people for whom balancing 15 credits with other activities is stressful enough.
It really depends on personal priorities. In my freshman and sophomore years, I was involved in some theatre and journalism on campus, but now I’m prioritizing more CS related work. I’m a teaching assistant for a CS class and I’ve been doing research with a professor. I don’t find time for theatre or journalism anymore. We have a wide range of activities to choose from, but we have to prioritize our interests because we do have high academic workloads. This is not necessarily a bad thing because it helps you grow in depth, rather than breadth.

4) The CS major is so large. Are professors still accessible to students?
If students are busy, the professors are even busier. In addition to teaching large classes, they have their research, phd students and other departmental work to manage! And let’s not forget that they have families and regular lives as well. Yet, all my professors so far have been very willing to talk to students personally. The student does have to make an effort to go to office hours or contact the professor. To share a personal experience –
Because I did research in the CS department over the summer, I got to know some of my professors better than I would have otherwise. I even got to attend dinners at their homes and know them beyond a classroom/workplace relationship.

5) Are classes graded on a curve?
Yes, large classes are graded on a curve. But it’s not as mechanical a process as it seems. Although the numbers matter most, the course staff does consider improvement over the semester and is generally forgiving about one bad exam or assignment.

6) What are the opportunities for internships/jobs?
On-campus recruiting happens almost throughout the year. Particularly at the beginning of semesters, there are interviews happening every day! Cornell’s CS program is very reputed and there is no dearth of tech recruiters from leading companies and start-ups as well.

I covered the CS major related questions in this post, and I’ll try to do more of these posts in the future to answer general questions as well. I hope it helps!