top of page

Product Managers and Software Engineers work together within the tech industry, drawing upon their different skill sets and expertise to develop and deploy solutions to their customers. If you are torn between whether or not PM or SWE is for you, here are some perspectives from Harvard students that might help you identify your interests.


 

If you enjoy building and coding...

“I think software engineers can come from a lot of different backgrounds, but most people interested in SWE really share a love for building, and also enjoy coding -- although not necessarily 24/7. A love for building can be shown in many ways -- from logic to math to constructing things from the ground up, and one software engineer might not have absolutely all of these passions.”

- Software Engineering Intern at Dropbox, Harvard Class of 2021


If you like solving at a higher level, rather than implementing its development…

“For anyone torn between PM vs SWE, I would say that the PM role might be the better choice if you are more invested in thinking of a solution at a higher level than just its technical development. Do you find it more satisfying to think of a product in every scope such as its impact in the market, development timeline, design features, and costs and tradeoffs? Or would you rather hone in on a specific part of a solution and find greater enjoyment in writing code and working more directly toward a product's development?”

- PM at Microsoft, Harvard Class of 2021


“Every company has different needs for PMs, and even teams within companies have different PM/SWE dynamics. But in general, I'd say 3 qualities generally are important for PM success -- 1) stakeholder empathy (can you really put the client's internal team's/customer's needs first, and understand them well?), 2) cross-functional communication skills (talking to biz, SWEs, UI/UX, hardware, etc. well, even if what you're discussing is not in their field) and 3) proactivity. I chose the PM route personally because from a personal perspective, I find cross-functional communication and the ambiguity of navigating product-related questions really fulfilling. I think this is a pretty common reason for choosing PM over SWE."

- APM at Lyft, Harvard Class of 2020


If you can, try both!

“The best way to figure this out is to try both out. Honestly, I think it's a great use of summers to do varying things if possible (i.e. SWE one summer, pm another, do a startup, join a big company).”

- Intern at multiple startups, Harvard Class of 2021

“If you start as early as freshman summer or even sophomore summer, it can't hurt to try out both. It's basically the only time that you can experiment without affecting your future career path. If that's not an option, or you don't want to "waste" a summer figuring things out, the common tactic is to just go with SWE first. Most CS concentrators end up there, and there are a lot more job opportunities available for that role. If you can see yourself doing that for at least five years after graduation, that's a good sign that you're made for SWE. If you find the work monotonous, or you feel like you want to work on slightly less technical work/want to interact with people more, then PM is more made for you.”

- PM at Microsoft, Harvard Class of 2021


Understanding and excelling in the software industry can be a difficult. Luckily, there is an abundance of online resources at your disposal with general information and interview practice.


Here are some guides to the software engineering industry:

Find more information about top recruiters in the industry and their opportunities for students here:

There are numerous online and print resources that are available to help you prepare for interviews. Furthermore, Harvard and MIT CS theory classes teach you core concepts that appear in technical interviews. Here are a few resources that students have found helpful:


 

These are some of the ways Harvard students studied and prepared for their interviews:


Practice smart.

“At the end of the day, it's practice. The more time you spend practicing coding questions on LeetCode, the more likely you'll get something similar to what you've done in an interview setting before.”

Software Development Engineer Intern at Amazon, Harvard Class of 2021


“Get the concepts, don't spend all day on LeetCode memorizing answers. And if you're going to get LeetCode premium, split it with multiple people.”

- Intern at multiple startups, Harvard Class of 2021


“I found that most of my actual technical preparation was grinding LeetCode. For me, Cracking the Coding Interview wasn't as helpful because it doesn't "force" you to solve the problems, whereas many online platforms do. The key is to do the problems thoroughly rather than quickly; understanding one solution really well will serve you a lot better than trying to bang out 100 problems a day."

- APM at Lyft, Harvard Class of 2020



Start early and stay organized.

“Prepare for interviews during the summertime. Applications begin almost immediately when school starts, in September/October. Interviews will also begin in late September and so you definitely want to start the school year mostly prepared. The recruiting process is stressful, depending on how many companies you apply to. There is a lot of logistics involved, many emails, and you definitely want to stay organized throughout the process! (Think spreadsheets).”

- Software Development Engineer Intern at Amazon, Harvard Class of 2021


Engage with CS through personal projects and/or teaching opportunities.​

“I’d not underestimate the importance of the non-coding sections of SWE interviews, including questions about your technical background and “fit” questions. Make sure that you can talk in-depth about past programming experiences and any challenges you faced. If you’re considering recruiting for SWE, I’d consider starting a personal project on your GitHub. Working on personal projects is a great way to see if you’re passionate about software development. You can also reference these experiences during an interview or on your resume.”

- Software Development Engineer Intern at Amazon, Harvard Class of 2022


“Outside projects absolutely make you stand out. Every time a recruiter talks about a stellar applicant they mention a project that interested them. However, they are absolutely not necessary. I had outside projects that weren't on github so I basically only mentioned them in interviews, but it didn't seem like they made a huge difference. And the fact that I made it to the interview stage without having big outside projects should so that they're not 100% necessary. Other things that make you stand out, is being a TA for a CS class, tutoring in CS work, and being able to be both a normal sociable human being and a CS student.”

- Intern at Facebook and Microsoft, Harvard Class of 2020


“Having teaching experience definitely helped me excel in my interviews, so try to pull from any sort of speaking experience if applicable.”

- Software Engineering Intern at Dropbox, Harvard Class of 2021



Run through interviews with friends.

“It's really important to be able to explain your thought process clearly, as if you were collaborating on the problem with the interviewer. Practice here is key; doing mock interviews with friends is very helpful; clubs like WiCS will also be hosting several mock interviews throughout the year."

- Software Engineering Intern at Dropbox, Harvard Class of 2021



Information Sessions

Throughout Fall Semester

In September and October, tech companies come on campus. They host information sessions and dinners, partner with clubs, and man booths at career fairs. Take the opportunity to explore different firms and ask questions about their work and culture.


Applications Open

Summer/Fall for Juniors and Sophomores

Tech companies recruit the heaviest August - November. For juniors seeking full-time roles at these companies, it's a good idea to start applying in August/September, especially if working with competing return offers. However, many opportunities open up and remain open through October/November. For sophomores who are seeking internships for their junior fall, recruiting can begin as early as September but generally peaks in October/November as well.


Winter for Freshmen

For first-years and also sophomores, programs targeted for underclassmen often open up in the winter.


Spring for Startups

Startups recruit all year round but generally after big-tech in the spring.


Online Coding Challenge

Candidates that pass the resume screen usually have to complete an online coding challenge. You will be given a specific time frame to complete this challenge.


Phone Screen/Campus Interview

If the coding challenge goes well, you may have an interview either on the phone or on campus. These usually involve a coding challenge with the interviewer who is in the position you are applying for.


On-Site Interview

On site interviews typically begin with a behavioral question, are followed by technical questions, and then end with questions for the interviewer. For the technical questions, be prepared to answer algorithm, whiteboarding questions. You will have several rounds of these interviews. Remember to get your interviewer’s contact information and follow up with a thank-you email!


Featured Employers

McMaster-Carr

Williams Companies

Industry Guides

Standard_lower_res_edited_edited_edited.

Career Guide

by The Crimson Brand Studio

A Harvard Crimson site

University Daily since 1873

bottom of page