Internship Search for Fall 2018

July 17, 2018

I’m studying Software Engineering at the University of Waterloo, which is a coop program. Over the course of 5 years, I graduate with your typical 4 years of undergraduate education, as well as 6 coop terms totalling 2 full years of work experience. This term (my 4A school term), during my search for my 6th and final internship, I decided to keep track of my job search statistics. The following are my results for my Fall 2018 internship.


The following statistics mostly apply to how the University of Waterloo’s Coop Program functions. We get access to a job board (aka. WaterlooWorks) that has tons of job postings, and as students we go through each job posting, find the ones that align with our interests, submit applications, and proceed from there. The employers that we submit applications to receive copies of our resume, unofficial transcript, and previous coop performance rankings. They can then filter the students, choose whom to give interviews to, and proceed with the process from there. Most of the time, Waterloo interviews are different than regular internship interviews since we very rarely receive onsite interviews. Everything is done either in person where interviewers fly up to campus to interview us, or done remotely via phone calls/video chat/etc. The number of rounds also seems to vary greatly between Waterloo/non-Waterloo interviews.


Number of Applications: 54 (I applied to 50 companies through Waterloo, 3 externally, and was contacted by 1)
Number of Auto Rejections: 32
Companies extending interviews: 22 (but then one company cancelled their interview, so technically 21)
Number of Cancelled Interviews (where I cancelled the process): 2
Total Number of Interviews: 34 (counting back to back interviews as different interviews; this is basically the number of interviewers I talked to)
Total Number of Other Phone Calls (ie. recruiter information calls, offer calls): 19
Number of Rejections: 5
Number of Offers: 14

Hence in total I received a total of 19 official offers/rejections.

  • Response/Application Ratio: 22/54 = 40.74%
  • Offer/Interview Ratio: 14/19 = 73.68%


I kept a spreadsheet in Google Sheets with lots of information. Some of the fields I recorded include:

  • Company Name
  • Job Title
  • Location
  • Date of Application
  • Current Application Status
  • Date(s) of Response(s)
  • Interview Notes
  • Compensation/Benefits/Perks


  • I had 6 interviews/phone calls spanning 4 hours from Mon, May 1 to Fri, May 25.
  • I had 4 interviews spanning 3.5 hours from Mon, May 28 to Fri, June 1.
  • I had 15 interviews/phone calls spanning 14.5 hours from Mon, June 4 to Fri, June 8.
  • I had 15 interviews/phone calls/dinners spanning 19 hours from Mon, June 11 to Fri, June 15.
  • I had 13 interviews/phone calls/dinners spanning 12 hours from Mon, June 18 to Fri, June 22.

One struggle I had was booking interviews that didn’t conflict. Most of the time I’d have to schedule the next round of interviews for one company, while waiting to hear back scheduling details from another company. Since most companies wanted many possible chunks of my day for the greatest flexibility in scheduling these interviews, I tended to just give every company the whole day of every single day as available slots, and pray that no conflicts would come about. Surprisingly I did not have that many interview conflicts with each other, but I did have conflicts with class.

Note: I still had school during this interview period. I didn’t miss a single class in May since the timing just worked out well for me, but then for 3 weeks in June, I missed just about every class due to interview conflicts. At this point, job hunting was more important so my academics had to take a backseat, and I started falling behind in school. The only things I didn’t miss were group project deadlines and 2 midterm examinations.

By dinners, since a lot of the interviewers come up to Waterloo to interview the candidates in person, and the process is done so quickly, some companies invite candidates who will receive an offer to a (free!) offer dinner + drinks. These are optional, but they’re really thoughtful gestures and allow candidates a relaxed environment to get to know the engineers a lot better, ask some questions about the company/teams/culture, and have some fun.

For example, the following was my interview calendar for a single week— June 11 to June 15. It doesn’t look too heavy, but most my free time I spent on preparing for interviews (which took an incredibly large amount of time + most of my brainpower for that day) along with working on group projects since I didn’t want to let down my group members. It honestly got really tiring; by the third week of June I was exhausted and mentally drained most nights.

My Calendar for June 11-15


  • Two companies sent a project/challenge first. I completed one of them (and didn’t get an interview), and I skipped the other (because it would have taken too long).

  • I cancelled two interviews:

    • For one company, after two 1-hour phone interviews, they wanted to do a virtual onsite requiring a full consecutive 5.5 hour block which I could not afford to do due to my schedule
    • For the other company, after one 1-hour video interview, they wanted to do a 3 hour virtual onsite on the same day I had a midterm exam that I had already not prepared for so I felt overwhelmed and thought that I couldn’t put my best effort into a 3 hour interview, wasting both my time and the interviewers time.
  • One company extended me an offer mere hours after I completed my second round of interviews with them. This had to have been the fastest interview to offer time for any offer I had this term.

  • On the other hand, Google had a relatively long application timeline compared to all my other applications. I applied on their career site late April, received the snapshot challenge the day after I applied, heard back from a recruiter early in May, and had the interviews scheduled late May. I waited until mid-June for my hiring committee decision, and then about 1 week for a host match. I know many of my friends/classmates waited even longer for their hiring committee decisions, and had to accept other offers before my school imposed deadline of June 22 and had to withdraw from the host matching process without receiving any host interviews yet.

Charts regarding my applications

  • Out of my 54 applications, only 2 were for Canadian locations (Toronto). 37 were for Bay Area companies, 10 in New York, and 5 scattered elsewhere (Atlanta/Chicago/Pittsburg/Redmond/Seattle)

Location vs # of Applications

  • Out of 54 applications, 40 were for generic Software Engineering Internship positions, 7 for frontend, 5 for fullstack, and 2 for backend.

Job Title vs # of Applications

  • Out of the 21 companies that I interviewed with, most only required 1 round (1 date) of interviews. A single round can consist of more than 1 interview, and on average most rounds consisted of 2 back to back interviews.
  • Out of the 21 companies that I interviewed with, most only required 2 interviews before giving a hiring decision (offer/rejection). There was one company that required more than 5 interviews.
Number of Interview Rounds Per Company Number of Interviews Per Company
Interview Rounds Interviews Total
  • The average monthly salary of 18 (Bay Area) companies that I asked for numbers was USD $9030/month with a mean deviation of $653/month, with a lower bound of $6067/month and an upper bound of $11700/month.
    This (estimate) was based on monthly/hourly salary that I was provided, converted to monthly sums, and then summed with any housing allowance that was provided. For companies that provided corporate housing, I added the value of their housing stipend that they provided instead (although this number did become iffy). This does not take into account any additional benefits such as medical/vision/healthcare, food, transportation stipends, etc.

Monthly Salaries

Food for thought

According to the final applications submitted in the main round of WaterlooWorks (deadline May 23, 2018), the top 15 companies in terms of applications were almost all in the Bay Area. Looks like desirability still remains in the Bay with the poisonous “Cali or Bust” mindset that plagues most of Waterloo students unfortunately.

Grouped by Region Expanded View
Locations of Top 15 Companies Graph 1 Locations of Top 15 Companies Graph 2

Other notes

  • Some companies will offer you an internship position on a specific team, whereas other companies offer a position, and then the team is chosen a couple weeks before you join/when you join. With the first option, an offer is not guaranteed unless you get matched with a team, but you do get to know exactly what project you’d be working on (along with potentially getting to know the tech stack you’d be using, your manager, etc). With the latter option, you’re typically guaranteed an offer, but you have no clue what project/team you’d be on. I’m not sure what is the better option.
  • Being a senior heavily increased my chances of receiving an interview. Just the previous term (my 3B term for my 5th internship), I received 12 interviews out of 51 applications, of which I landed 7 offers. This term I almost doubled the number of companies I interviewed with, and received double the number of offers.
  • A drawback of applying to so many companies is the time commitment involved. I spent so much time preparing for interviews and doing the interviews themselves and it took up literally all of my time. Since I had so many interviews and many of the companies had more than a single interview round, I found myself with pretty much no free time for weeks on end and my mental power drained. For my very last set of internship interviews ever, I felt so burnt out and lethargic at that point that I failed them pretty spectacularly even though I could have passed them if they were just a week earlier!
  • A plus side is that with more applications comes more interview opportunities. With more interviews comes more chances at an offer. More offers equates with more chances at finding something that I wanted to do and something that I would enjoy doing. Honestly as I’m getting older, I’m starting to realize that a lot of my happiness is tied to the type of work that I do, and I’m glad for the chance to make an informed decision on where I get to go.

I’m extremely grateful for all the people that I’ve chatted with, whether that be recruiters, interviewers, engineers, managers, and everyone else. I’ve learned so much about the culture and the talent at all of these companies, and they’re all such wonderful companies that if I had more time in school, I’d love to try and work at all of them.

For now, I will be heading to Facebook starting Sept 2018, working at their New York City office. I’m excited to see what lies ahead.

Robbin Xu

I'm Robbin Xu and I'm a senior at the University of Waterloo. Formerly eng intern @Facebook @Square. You can find me on LinkedIn and on Twitter.