College students often ask me where they should focus their learning to best prepare for a career in software development. I’ve given a variety of answers over the years, but more and more, I tell folks to look for opportunities to work with teams. Why focus on teamwork? Especially when there’s so much technical learning to be done?
It boils down to three reasons. First, you’ll build skills that will help you when interviewing (and in all of life beyond college). Secondly, you’ll have a better idea of what type of work environment you’ll enjoy post-college. Finally, you’ll learn more quickly.
You’ll build skills that will help you interview.
At Atomic Object, most of our interview questions focus on what it’ll be like to work with you. How will you communicate? What strategies do you use for handling conflict? How do you get folks aligned towards a goal?
Like most skills, it’s hard to be good at these things without much experience. We’ll ask you for concrete stories. We’ll ask for insights and takeaways, and we’ll ask for your process. Students who’ve had the opportunity to work on high-functioning teams generally do much better with these questions. And the emotional intelligence skills you learn in the process will help you at home, in your community, and with your extended family. They’ll be more valuable throughout your life than one more programming language.
You’ll learn what type of work environment is right for you.
But where should you interview in the first place? Will you love a team-first environment? Or would you prefer the focus of solo work? Are you any good at working collaboratively?
Our academic systems largely ask us to work as solo contributors, so it can be hard to know. Maybe you’ve only worked with highly-demotivated teams, and that’s probably not been much fun. Or maybe you love the idea of teamwork but, in practice, you’re more comfortable taking a task to completion on your own. The more team environments you work in, the better sense you’ll have.
You’ll learn more quickly.
I went through several math classes in college by myself. It seemed like a fairly normal way to approach things, and I didn’t feel at first like I needed much help. But, as I got into more complicated courses, I struggled, and I could have benefited tremendously from having others to work with.
In my career, I’ve found that pairing on technical tasks often teaches me all kinds of things I don’t expect to learn. Sometimes I pick up a new tool or learn a different approach or just get unblocked more quickly. I always have more fun.
Where should I look for these teamwork opportunities?
I’d encourage you to really lean into any group work projects that are assigned in classes. Be a leader on these teams, and be very thoughtful about the experience of your team members. Reach out early and often if folks seemed disengaged. Next, see if you can turn solo projects into group projects! Ask a professor if it’s cool, or find a group of students you can study with.
You almost certainly will benefit from an internship where you’ll work with a tight-knit team. Avoid solo-work style internships if you can. And definitely look for teamwork opportunities in activities outside of academic or technical work! Folks can learn a ton from sports, gaming, volunteering, or other groups.