Cooperation and Communication

"The most efficient and effective method of conveying information to and within a development team is face-to-face conversation." -- The Agile Manifesto

Lesson 1: Release it!

For lesson 1, please read:
The flattening of the software release process

Lesson 2: Breaking down silos

For lesson 2, please read:
Breaking down silos
Breaking Down Silos with Cross-Functional Teams

Lesson 3: Using Slack

For lesson 3, please go through these Slack guides:

Other Readings

    We want to script our environment so that...?

    1. environments are always in a known state
    2. we lessen the chance that knowledge is locked in team members' heads
    3. deployments are more predictable and repeatable
    4. all of the above

    To have a solid understanding of computer systems one needs...?

    1. practical understanding of programming
    2. theoretical understanding of programming
    3. both A and B
    4. NOT to understand programming

    A member of the cross-functional team should...?

    1. be delivering all the software on his own
    2. not be involved in the delivery process
    3. always rely on the members of other teams as a part of the delivery process
    4. never need another team member outside his team to perform an activity as part of the delivery process

    Testing should be done on...?

    1. only the most crucial code in the application
    2. all of the application code
    3. all of the application code AND all of the infrastructure code
    4. none of the above

    To learn writing correct software one needs to start by...?

    1. writing code
    2. learning theoretical basis of software engineering
    3. learning abstract algebra
    4. learning the design of compilers

    Each member of a cross-functional team needs to...?

    1. write tests
    2. write scripts
    3. version
    4. all of the above

    Having a cross-functional team means...?

    1. every team member is responsible for the delivery process
    2. any person on the team can modify any part of the software system
    3. answers A and B
    4. having no project manager on the team

    "Chaos Monkey" is...?

    1. a tool Netflix developed to intentionally crash their servers
    2. a description of who is in charge of most software projects
    3. the state of infrastructure before DevOps
    4. none of the above

    In DevOps, "silos" refers to the fact that...?

    1. departments in organizations often seemed sealed off from each other
    2. good software should be divided into "silos"
    3. granaries are major users of software
    4. all of the above

    The study of software includes...?

    1. software engineering on a small group scale
    2. the use of programming languages
    3. individual and group projects
    4. all of the above