Software engineering operates ever more frequently in globally distributed settings, in a practice that is known as Globally Distributed Software Engineering (GDSE). In this course, you will obtain a practical overview of the organization and operation of software engineering of this practice. As such, it is aimed at professionals in distributed software development teams, and executives setting up and leading such teams who would like to develop the required technical and organizational skills.
The course covers the subject in an accessible and practical manner. Through video lectures, group assignments and exercises, you will be familiarized with the advantages and disadvantages of GDSE, the practical consequences of GDSE and its technological feasibilities and infeasibilities. You will learn about real-world experiences of users and examples of GDSE applications such as outsourcing, offshore software development, near-shoring and multi-partner systems development.
You will apply the knowledge gained through hands-on experience with GDSE by working together with team members from different countries as a distributed team; and through analysis of best-practice examples. Together with other course participants you will prepare a number of artefacts that build on the body of knowledge of GDSE and so have the chance to contribute to this growing field of knowledge.
Guest lectures from industry experts and researchers will be an integral part of the course. These lectures will demonstrate how GDSE is handled in industry, how decision-makers lead their teams in this context, and what is the state-of-the-art in GDSE research. The course consists of seven main topics:
- Globally Distributed Software Engineering
- Distributed Agile
- The Software Engineer and GDSE
- Boardroom: C-level Decision-Making
- GDSE Research
- Time and Cultural Differences
- GDSE Locations: Near-shoring and Offshoring
Each topic is explained by two guest lecturers from industry or academia. Guest lecturers include, among others:
- Emiel Romein - Software Development Manager at Exact Online
- Eelco Rustenburg - Senior trainer at Gladwell Academy and partner of Blinklane Consulting
- Jeff Sutherland - the inventor and co-creator of Scrum
- Suzanne Kelder – Executive Coach at KPN and former CIO of Base Company
- Svenja de Vos – CTO at Leaseweb
- Darja Šmite - Professor at Blekinge Institute of Technology and a part-time research scientist at SINTEF ICT
- Erik Ammerlaan - Software Engineer at Exact
- Prajeesh Prathap - Delivery Engineer and expert for DevOps, Continuous Delivery and Application Lifecycle Management at InfoSupport
- Dianne Elsinga - Global Team Expert at Prowareness
- Paul Tjia - Senior consultant and expert on sourcing and country selection at GPI Consultancy
- Maran Gunasekaran - Security consultant at Prowareness, Bangalore, India
What you'll learn:
- To understand the main constructs of globally distributed software engineering theory.
- How to apply the principles of globally distributed software engineering in your own company's practice.
- To produce an artifact that adds to the overall body of knowledge of globally distributed software engineering.
- To identify the main concepts in decision-making and leadership roles in a globally distributed context.
This is a Massive Open Online Course (MOOC) that runs on edX.
Students that follow this course should have prior knowledge of how software is developed, although technical knowledge or programming skills are not required.