software engineering

Driving a Project: Intern Edition

After a lot of hard work, you’ve landed that coveted internship. Now comes the next big challenge: delivering a meaningful project over the summer. Leading a project independently is an opportunity to sharpen your skills, demonstrate your capabilities, and experience personal growth. As you drive the project on your own, the support from your mentor and team provides you with the confidence and guidance needed to navigate effectively. However, it might feel like taking the wheel for the first time after getting your driver’s permit — exciting yet nerve-wracking.

So, how do you succeed?

A little about me

  • Hey! I’m Sravya, a rising junior at Purdue majoring in Computer and Data Science.
  • This summer, I was a Frontend SWE intern with Team Expansion based in the Seattle office.
  • I built an internal tool for developers at Slack to test in-app coach marks and modals.

Starting the engine: setting up the project

After a whirlwind of onboarding activities, you’ve absorbed a lot of information about your company and team, met fellow interns, and started to get a sense of the culture. But as you face the end of your onboarding, you might be wondering, “Where do I start now?”. I sure did.

The first step I took was having a comprehensive discussion with my mentor, Dylan, and manager, Kon. In this meeting, we focused on:

  • Project objectives: Understanding the primary goals and purpose of the project is crucial. I took the time to understand why the project is important for the company and how it aligns with the team’s overall strategy. Knowing the objectives helped me stay focused on the bigger picture.
  • Key deliverables: Identify the main results expected by the end of the project. This could be a product, such as software features, tools, or documentation, that you need to produce. By defining these deliverables early, I was able to set clear targets to work towards and was able to measure my progress throughout the project.
  • Resources: Ask for essential resources needed for your project. This includes obtaining relevant documentation, software tools, and understanding who can offer support.

And then it began, I started familiarizing myself with the tools and technologies I’d be using for the summer. Whether you’re diving into a new software platform, picking up a coding language, or mastering a tool, I think it’s important to invest some time in getting comfortable with these elements. You might find yourself reviewing documentation, exploring the codebase, looking at online tutorials, or even reaching out to more experienced colleagues for a bit of guidance. This initial effort is all about building confidence!

Navigating the road: managing the project

Before diving into the project, my mentor and I outlined a detailed plan. We broke it down into tasks, set deadlines, and established key milestones. Given that I only had 12 weeks to complete this project, planning accordingly was crucial. This plan helped me stay on track and avoid getting lost in the details. We used Jira, a project management tool, to visualize my progress and make real-time adjustments as I worked on my project, adding tickets whenever required.

Challenges and setbacks will surely pop up like they did for me, and how you respond makes all the difference. It’s important to stay flexible and approach problems with a solutions-oriented mindset. If you hit a roadblock, don’t panic. Instead, reassess your route, brainstorm alternatives, and keep moving forward. I like to think of obstacles as a chance to improve my problem-solving skills.

Remember, you’re not alone on this journey. Your mentor and team are there to support you. They can provide guidance, offer different perspectives, and help you navigate through difficulties. With their support, you’ll be better equipped to handle any challenges that come your way and keep your project moving forward. I leaned on my mentor for support whenever needed. His insights and advice were really valuable in helping me overcome those blocks and keep the project on track.

Using your mirrors: seeking feedback

Seeking feedback and guidance is absolutely important, especially as an intern. It’s your chance to grow, adapt, and enhance your skills in real time. During my internship, I made it a point to have frequent check-ins with my mentor. In these meetings, we would discuss my current approach and explore if there was a more efficient way to tackle the problem at hand. This process not only assured me about my approach but also significantly improved my technical abilities.

Being in the driver’s seat: advocating for your project

This one is a no brainer! It was really important for me to give my project a voice because I was the only one building it. During my internship, I provided weekly updates about the status of my work in my project channel. By sharing my progress, challenges, and successes, I ensured that my project remained visible and that my team understood its value. This not only built confidence in my work but also opened up opportunities for feedback and support.

Since I was building an internal tool for developers at Slack, I had the advantage of direct access to my users. This gave me, as my mentor would like to say, a chance to put my PM hat on! I was able to quickly iterate based on their suggestions. This feedback loop was critical in refining the tool, addressing any pain points, and enhancing its overall functionality.

Being an intern, you need to seek out resources and help. Going the extra mile for your project can be impactful. This means proactively reaching out to colleagues, asking questions, and leveraging the expertise around you. I had the opportunity to work with Jessica, a product designer for the project, giving me a whole new perspective about user experience. Collaborating with her not only helped me expand on my project but also gave me a chance to see her work in her element.

By championing your project, you set the stage for success and demonstrate your commitment to delivering a meaningful and impactful project!

Arriving at the destination: delivering your project

Reaching the end of my internship was both a rewarding and reflective experience. Delivering your project (and maybe even demoing it, like I did) successfully marks the culmination of all the hard work, collaboration, and learning you’ve invested throughout your internship. It’s important to recognize the growth and development you’ve experienced. From setting up your project to navigating challenges and advocating for your work, each step has contributed to your skill set and confidence. But remember, the journey doesn’t end here! Continue to build on your learnings and work on growing as a software engineer.

Final words

  1. Go at your own pace: It’s important to realize that everyone has their own pace. As an intern, I’ve sometimes felt like I was not working fast enough as I would have hoped. However, I learned that it’s okay to go at my own speed. Taking the time to thoroughly understand a problem and work through it at a comfortable pace helped me produce better results.
  2. Passengers make your experience memorable: The people you work with can make a huge difference in your internship experience. Collaborating with Dylan, Jessica, and other team members not only helped me grow professionally but also made the experience enjoyable and memorable. So, take some time out to get to know your peers and fellow interns!

Special Thanks

Huge shoutout to Dylan Steen for being an awesome mentor and for never saying no to helping me out. A special thanks to Konstantin Savransky for overseeing my work and supporting me! And to my team, I couldn’t have done it without your encouragement.

Interested in taking on interesting projects, making people’s work lives easier, or just building some pretty cool forms? We’re hiring! 💼 Apply now

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button