Soft but not Squishy: Enhancing Social Realism in Computer Science Education
In a typical software engineering program a novice student acquires new skills in programming, design, analysis, and evaluation. While these hard skills are taught and evaluated explicitly in every course, soft skills are often presumed to be learned by students on their own. Software engineering graduates have little trouble learning the specific technical skills necessary for their jobs as they enter the workforce, but often struggle to master the communication skills they need to work with others in collocated, distributed, and hierarchical team settings.
In this talk, I will reveal three surprising challenges that we observed in newly recruited computer science graduates beginning their careers in software development and testing at Microsoft. These challenges can be mitigated by a variety of interventions, both academic and industrial. I will promote three innovative pedagogical approaches to teaching soft skills in computer science education. I will share a sample of the activities that Microsoft and other companies in the software industry employ to help students succeed in their software engineering programs. In a public-private partnership between academia and the software industry, I believe we can better prepare students for their future careers.About the Speaker
Andrew Begel is a researcher in the Human Interactions in Programming group at Microsoft Research, Redmond, USA. He studies software engineering teams at Microsoft to understand how engineers communicate, collaborate and coordinate with one another, and how their actions impact their teams’ effectiveness in collocated and distributed development. After conducting studies, he builds tools to help mitigate the communication and coordination issues that were discovered.
Whither Software Engineering Education?
In keeping with the conference theme of ensuring that
academic programs match actual real-world needs, I will
describe current trends in both the software development
workforce and in the character of the problems that software
is being asked to solve. By highlighting discrepancies between
these trends and the assumptions commonly implicit in software
engineering curricula, I will identify opportunities for
About the Speaker
Mary Shaw is the A.J. Perlis Professor of Computer Science at Carnegie Mellon University, where she has taught and developed curricula and courses in computer science and software engineering for four decades. This work has been recognized with the Nancy Mead Award of CSEE&T and the Distinguished Educator Award of the IEEE Computer Society TCSE. She is also a elected Fellow of IEEE, ACM, and AAAS.