Should I intern at a startup or a large company? With so many companies to choose from, picking a place to intern at is a difficult decision. It may be tempting to choose a large tech company, because of its well-known brand and perks. I used to be hesitant about startups too. In the past, I’ve interned at some of the big tech giants…and it was a great experience. However, for my next internship, I wanted the opportunity to work at a small startup where I would be able to build software from scratch, learn how a company operates early on, and make a significant impact.

I ended up interning at Shift, with their Buyer Experience team. What attracted me to this startup was the people, mentorship opportunities, interesting engineering challenges, and the chance to make a huge impact at a high-momentum startup. In the 12 weeks of my time at Shift, I’ve learned more than I have in all my past internships.


I picked up a new programming language, Go. I learned to write complex SQL queries. I learned other technical skills, such as navigating an unfamiliar codebase, writing design docs, reading error logs, reviewing other engineers’ codes, writing unit tests, and engineering best practices and coding styles. One of the great things about doing my internship at a startup is getting exposed to different parts of the codebase and tech stack, and being given the flexibility to work on a variety of interesting projects like any other full-time engineer.

There’s also a stronger sense of complete ownership over the projects that you work on: from participating in engineering trade-off discussions and having the autonomy to make your own technical decisions during the design phase, to implementation and deployment. For my first project, I developed a new feature to provide the sales team with insights on a customer’s top search queries and top car views, so that we could further understand what buyers are looking for when shopping for a used car.

The next project was ‘Customers Also Viewed’, which for a particular car, shows the other cars that customers viewed after clicking on that car. I built a new internal tool that lists the top related cars for a given car id, wrote a cron job that aggregates anonymous customer data and gets the top related cars for every vehicle listed on our site, and created an endpoint that’s used for email marketing. For my last project, I added an infrastructure flag to validate request parameters and developed a system to roll it out smoothly. In between projects, I completed various tasks, and fixed user account bugs and server log errors. Outside of engineering, I got the chance to help with recruiting by attending the Grace Hopper Conference, and participating in candidate lunches where I talked about my internship.


Emily (right) and the Shift team during a game of Capture the Flag.
I really enjoyed my time at Shift. Now I know what it’s like to work at a startup—and I hope this won’t be my last.