Collaboration is the heart of Computer Science. In high school, when I used to think of computer scientists, software engineers and programmers, my head would immediately conjure the image of a lone coder bent over a laptop at midnight.
Two years into my computer science degree at Hopkins, I can confidently say the reality of computer science looks a lot more like sitting in a circle with your friends (both old and new), drawing flowcharts on a whiteboard, bouncing ideas off of each other, dozens of bubble teas on the table and, yes, a lot of coding too.
The true essence of building CS projects comes through in relying on and learning from your teammates, and I’ve seen this in many, many forms at Hopkins.
Collaborating with friends
The CS department has a lot of opportunities for students to work together with their friends and peers. Every computer science student is required to take a “Teams” course where they work together with a team of students to build a project from start to finish. Some teams courses I’ve heard great things about are Object Oriented Software Engineering and Machine Learning: System Design and Development. I haven’t taken a teams course yet, but I’ve still gotten many opportunities to work together with my peers.
Some clubs at Hopkins like WiCS (Women in Computer Science) and ACM (Association for Computing Machinery) organize weekly coding circles. Students come together and spend an hour or two each week building projects like websites and games. I’ve always thought the ACM lounge perfectly fits younger me’s imagination of the room where great startups are built.

Meeting new people through projects
Hackathons are canon events for CS majors. At the start of my second year, I felt confident enough to piece together some semblance of a project but knew I couldn’t do it on my own. To meet more people and learn from them, many CS students deliberately team up with students from other universities who they have never met before. The process is simple: put a message in the hackathon slack channel introducing yourself and people will reach out to you to express interest in meeting up. This is how I found great friends and teammates for events like HackMIT and TreeHacks! It’s always a good idea to look for teammates with complementary skillsets. I’m definitely not a night owl, so I always look for teammates who enjoy burning the midnight oil (in return, I always promise to take hold of the reins in the morning). As I kept going to more and more hackathons and CS-related events, I would often meet the same people. This led to a great community and network.
collaborating with professors
One of the most underrated avenues of collaboration at Hopkins is collaborating with your professors. They are all world class experts in their respective fields but are also super accessible to students. If a professor who’s working on a topic that’s interesting to you, it’s always a good idea to email them asking if you can work with them. I’ve worked on many research projects over the last two years and they are always the most supportive people.
For example, when I worked in the Computational Social Sciences Lab (CSSL) at Hopkins, my advisor and I would have a weekly meeting where I would share my updates, but we would also discuss new ideas that we both had. We worked on understanding whether Large Language Models (LLMs) can represent the opinions of humans of different demographics well. I brought in ideas about how we can present and communicate our findings. Outside of working with professors, I’ve also gotten so many opportunities to ask them questions about life and careers.
People always say the true value of a college education at a place like Hopkins arises from the people you interact with. Collaboration has been a cornerstone of my undergraduate experience from day one. I’m so grateful for all the people I have worked with over the last two years and excited for the people I will meet in the next two years.