Software Engineering Is a Team Sport
Today, Kanav Mittal and I had the opportunity to guest lecture for Berkeley’s Fall 2024 CS61B class on industry practices for collaboration.
As teaching assistants, we spend a lot of time helping students understand data structures and work through programming projects. For this lecture, we wanted to explore how that experience translates to building software with a team.
Our central message was simple: collaboration is at the heart of software engineering.
We covered Agile and Scrum workflows, branching and merging, and the pull request and code review process. Together, these practices help teams coordinate changes, communicate their reasoning, and understand one another’s work.
We built the slides from scratch and drew on experiences from our software engineering internships to give students some real-world context. It was a chance to connect familiar programming concepts with the processes students might encounter on their first engineering teams.
Speaking to a course with more than 900 students was an exciting experience. Thank you to Fall 2024 instructors Justin Yokota and Peyrin Kao for their support and encouragement!