Lob's website experience is not optimized for Internet Explorer.
Please choose another browser.

Engineering
June 20, 2018

How to Build a Successful Software Engineering Internship Program

by 
Marcus Gartner

Of the numerous projects I've worked on in the past three-and-a-half years at Lob, helping build our internship program has been one of the most rewarding. I've been lucky enough to witness many interns grow and make an impact on the company. It's impossible to look through our code base or take stock of our company culture without stumbling upon a contribution from an intern. Overall, interns have been instrumental in shaping and growing Lob.

We've hired 17 interns since my first involvement with the program in the summer of 2015. Every intern that we have extended a full-time offer to since 2015 has accepted. Of our current engineering organization of 23 full-time employees, 6 went through our internship program—Dom, Donald, Kienan, Kyle, Lucas, and Pallavi. In the coming weeks, 3 more will join our full-time ranks—Aloysius, Emily, and Genevieve. At that point, 34% of our engineering team will have been hired out of our internship program. We've always known our internship program is a long-term investment to help grow our organization, but 3 years ago I would not have believed that it would be responsible for one-third of our full-time hires.

The results have been fantastic and we've learned a lot along the way. Here are the most critical components of our success.

Hire for Trajectory

Setting up interns for success begins by hiring top notch talent. Although there are many ways to evaluate intern candidates, their growth trajectory is the single most important. Interns at Lob come from a variety of educational and professional backgrounds; however, in practice, their background has been a poor indicator of their success. Instead, an intern's resourcefulness and ability to quickly learn new things have been the strongest hints that an intern will do well. We prefer presenting practical and real-world engineering problems to candidates, avoiding more traditional algorithm- and computer science-heavy interview questions. Our VP of Engineering, Raph, recently wrote a post with more details about our interview process.

Takeaway: design an interview process that allows candidates to highlight their ability to sift through documentation, scour Stack Overflow, ask pertinent questions, collaborate with others, and solve real-world problems.

Expect Impact

An intern should get an accurate picture of what it would look like to work for the company full-time. Just as the organization should be providing value to an intern in terms of career growth, an intern needs to provide significant value to the organization in order to have meaning and passion in their work. To do this, we incorporate interns into software teams where they work on tasks that any other engineer would perform. They work on high-priority and necessary tasks, from quick bug fixes to larger projects. Lob interns spend roughly half their time on a larger project that gives them ownership of gathering requirements, design, planning, and implementation. They finish the program with something concrete they can point to that they built start to finish.

Takeaway: The more responsibility you can give an intern, the more room they have to meet and exceed your expectations.

Provide Constant Feedback

Lob expects interns to show steadfast growth throughout the program. We facilitate this growth through constant feedback. Interns have weekly 1-on-1's with a designated mentor, a full-time software engineer on their team. This mentorship not only benefits interns but also gives full-time engineers an opportunity to hone their teaching and leadership skills. Feedback in both directions is strongly encouraged during these meetings. Halfway through the internship we conduct a formal retrospective, gathering feedback from their manager and peers.

Takeaway: Throughout the internship make it crystal clear what areas of improvement are needed in order for the team to gain confidence in extending a full-time offer.

Have Fun

Interns are just beginning their long careers in software engineering. While most are driven to work hard and prove themselves, the thought of working long hours in an office devoid of fun isn't going to convince them to return. Lob's company-wide bonding events, like game nights, escape rooms, and sporting events, increase in frequency during our internship programs. These events are beneficial in building trust and empathy among the team.

Takeaway: Push interns to work hard and show grit, but don't forget to have fun.

Are you interested in helping us automate the offline world? We're hiring. Come join us!