Learning to be a software engineer in a complex organization: A case study focusing on apprenticeship/practice based learning for getting new engineers productive in contributing to the Google codebase
Journal of Workplace Learning, vol. 22, no. 3 (2010), pp. 180-194
Maggie Johnson, Max Senges
- This paper seeks to analyse the effectiveness and impact of how Google currently trains its new software engineers (“Nooglers”) to become productive in the software engineering community. The research focuses on the institutions and support for practice-based learning and cognitive apprenticeship in the Google environment.
- The study uses a series of semi-structured interviews with 24 Google stakeholders. These interviews are complemented by observations, document analysis, and review of existing survey and statistical data.
- It is found that Google offers a state-of-the-art onboarding program and benchmark qualities that provide legitimate peripheral participation. The research reveals how Google empowers programmers to “feel at home” using company coding practices, as well as maximizing peer-learning and collaborative practices. These practices reduce isolation, enhance collegiality, and increase employee morale and job satisfaction.
- Research limitations/implications
- The case study describes the practices in one company.
- Practical implications
- The research documented in the paper can be used as a benchmark for other onboarding and practice-based learning set-ups.
- This is the first research that gives insights into the practice-based learning and onboarding practices at Google. The practices are assessed to be state-of-the-art and the insights therefore relevant for benchmarking exercises of other companies.