5 Essential Must-Do’s @ Your First Software Internship — (Introverts, this is for you!)
If you are relatively new to the programming world (like me), but have shown resilient eagerness to learn, grow, and build technical skills in such a lucrative industry, then internships, apprenticeships, bootcamps, mentorships, and/or career-changing job opportunities to be a programmer for a company may currently be in your paradigm. I’ve decided to help myself and help others along their coding journeys by compiling a list of a few essential behaviors to implement during your trek to gain invaluable experience in the field (and to receive positive feedback from any higher ups).
Whether it be a web development internship, back-end software engineering opportunity, or simply entering into a brand new work environment, please avoid some mistakes (that I made at my first major opportunity to be a Product & Software Engineering Intern) and, instead, implement these tactical approaches to your daily, real-world experience:
- Make sure to push code every single day, incrementally. Even if it’s no where near perfect to your standards. This tells the people you’re working with that you are, in fact, making progress, and it allows them to check in with you to help with any specific coding problems related to your work thus far. Feedback is the most important thing, I feel, that is needed from mentorship in order to curb less efficient, improper coding tendencies earlier on (thus making you a better coder, duh).
- Always make it known your objectives for the day or week, with consistent check-ins with your team and higher-ups. Essentially, communication is incredibly important. I’m not much of a social person at all, but I’ve learned I have to modify certain safety zones of my personality in order to stay on the same page as everyone else. Communicating that you’re stuck on a task is far better than not communicating at all. You’ve done more than half the work by simply shooting an email or a quick message on Slack that you’ve been stuck on a bug for a while. Showing that you’ve put enough effort to at least have a good idea of where you’re probably going wrong with the code will be helpful to others, as they’ll understand you’re not just looking for the easy way out to solve a problem. Which leads perfectly into my next tip…
- Ask for directional help as soon as possible if you feel you are winging a project that you may have not received as much clarification on prior to it being assigned to you. In some work environments, autonomy is a major component to the “fun” of the job. If you’re not used to that level of creative and logical freedom, it may daunting at first. And overthinking about the best way to design and develop something because you’re considering the possibilities of the team leader’s opinion is a waste of time. The sooner you receive feedback on a chunk of the work you’ve done thus far, the sooner you’ll receive the technical opinions that will facilitate you through the duration of your coding.
- Get to know your co-workers’ personalities as early on as possible. If you’re someone like me, being social isn’t the first thing you’re interested in exuding in a new environment, especially not with the unwavering energy of a rabbit. Understood, don’t worry. But if your team uses a company communication platform like the wonderfully savvy Slack, then reaching out to people you work with earlier will get both sides super comfortable and make bonding and working on dev projects together that much more enjoyable and comforting.
- Lastly, but not any less important than the previous four: sharing goals and passions with your team members and leaders is a subtle, indirect way of putting your vision out on the table about the direction you see yourself moving in the company or even beyond the company. As many of us may know, the tech industry has a relatively high turnover rate. People are constantly shifting to different companies, corporations, nonprofits, start ups, or migrating to majority remote and/or contract work. There’s a lot of fluidity, and verbalizing your future goals in the industry is important! You never know who could help place you in new opportunities to showcase your talent and network with other fantastic techies!