Chapter 26. Novice Professionals: Recent Graduates in a First Software Engineering Job
Much is written about software engineering education: how to teach novice computer scientists the programming, design, and testing skills they need to become professional software engineers. However, computer science students are not done with their education at graduation; it is really just the beginning. Newly hired engineers must learn to edit, debug, and create code on a deadline while learning to communicate and interact appropriately with a large team of colleagues. In this chapter, we explore the similarities and differences between these two educational experiences, by providing a detailed view of the novice experience of software developers in their first industry job.
Universities try to prepare students for industry by teaching them core computing concepts that will allow them to become lifelong learners and keep pace with innovations in the discipline. Approaches to teaching these “hard” skills have been driven by advances in industry, such as through new programming paradigms (OO) and new development methodologies (Agile, Extreme Programming). Academic settings offer less support for “soft” skills, or human factors in software engineering, such as the ability to create and debug specifications, to document code and its rationale and history, to follow a software methodology, to manage a large project, and to work and communicate with others on a software team. ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access