How to get an software engineering internship (thought dump)
I thought I’d share my thoughts on the lifecycle of an SWE internship. These articles combined give you a summary of the advice that I’ve gotten over the years. Maybe I’ll eventually write about my internships specifically.
One of the biggest things I’ve learned is that anyone can become an amazing coder. Some of the best coders I know didn’t start coding until entering college. The first step is being confident in yourself and knowing that most jobs are just some practice and a little bit of luck away. Companies take chances on candidates all the time. Just take a leap of faith and apply :).
Disclaimer: I have never been a part of a recruiting team, nor have I been on the other side of interviews. So take everything with a grain of salt!
As a final word, I will add some final thoughts about internships.
Junior year internship is the most important.
Being a bit more selective junior year can help out when deciding where to work full-time. It is customary that many more companies will want to interview you for roles this year, so it might not be right to sign the first company that gives you an offer.
Avoid reneging but do it if you must
Sometimes companies will give you frustrating short deadlines (you must decide in 2 weeks) before you even have a chance to hear back from other companies. I have seen people sign and reneg a month later to sign a different company simply because the initial company didn’t give the candidate time to think about their choices.
However, most companies give quite reasonable offer timelines, so don’t sign your offer until you are sure you are happy with the decision.
People’s lives change frequently, and companies pivot or terminate employment contracts. Making sure you choose the right company for your personal growth is essential, and so sometimes you have to make the tough decision.
Do I want to return?
Choosing the right team is extremely important when deciding to return full-time. You’ll spend so much time with your coworkers. If you found a team that you enjoyed (like me!), you might want to consider joining back to the same team. Onboarding is faster too!
Even if you want to return to the same company, it’s always a good idea to shop around. Different companies have different perks and missions, and who knows, maybe you’ll find a better fit! Furthermore, companies will regularly attempt to match (or meet halfway) competing offers to attract talent. If you enjoy the company, it’s still in your best interest to increase your leverage in the negotiation because it is uncommon that all offers are the same.
Stay in touch?
I wish that more people stayed in touch. An internship is over two months with the same people and team! I semi-annually catch up with the people who impacted me a lot during my internship (as well as other interns in my program). It’s good to see where people are and how their careers are progressing! Even if you didn’t get a return offer, it might still be good to stay in touch. From talking to actual mentors, not getting a return offer doesn’t directly mean your team or intern manager didn’t like you as a person or if you were competent.