Langr Software Solutions offers
        training services.

Distributed software development

Distributed development teams provide you with the opportunity to hire the right people, no matter where they or you reside. Successful distributed team members are happier and more productive.

In this class, largely based on years of personal distributed development experience, you’ll learn how to manage the many factors that play in cohering a successful distributed team.

Building a Distributed Development Organization

The premise of distributed development is great: Save significant money on office space, hire the right people for your company no matter where they reside, and provide a great work-life balance for your employees.

It’s important, however, to invest some of that saved money on ensuring distributed success: proper equipment, appropriate tools, face-to-face get-togethers, and continued investment in improving distributed practices. Make sure you understand all the implications of distributed development teams!

This class is available either on-site or remotely (practicing what I preach!). For remote sessions, I’ll facilitate a readiness meeting: Some time in advance of the two-day training, your team will join a readiness session–the goal of which is to ensure your team is technically capable of attending a two-day distributed session using their computer and network. Attendees with working setups will drop out of the meeting quickly, while I’ll remain and help other attendees through any challenges.

Distributed development is often a bag of surprises around technical communication issues. Audio won’t work at all, voices will turn robotic, internet connections will go out (and unfortunately, sometimes mine will go out as well). We’ll ignore the hiccups; for any significant time lost due to my unavailability, or for technical problems affecting significant number of students, we’ll reschedule follow-ups.

Topics

  • Costs, benefits, and success factors

  • Communication

    • Weekly get-togethers

    • Daily get-togethers

    • Planning

    • Reflection

    • Other meetings

  • Using technologies effectively

    • Collaboration tools

      • Shared documents

      • Card tools

    • Tracking tools

    • Voice / video tools

    • Communication tools

    • Distributed etiquette

  • Team coherence

    • Geographical considerations

    • Cultural considerations

    • Team chartering

    • Building a team culture

    • The importance of face-to-face

    • Fostering trust

  • Getting work done

    • Completion criteria

    • Establishing a rhythm

  • Collaborative development

    • Techniques

    • Screen sharing

    • Effective hands-on remote dev

      • Terminal multiplexers

      • Git handover

      • Remote screen control

      • Collaborative editors

      • Establishing standards

      • Challenges

  • Management

    • Hiring criteria and mechanisms

    • Retaining your people

  • Challenges

    • distributed wallflower effect

    • decision making: coming to agreement

    • technical communication issues

    • communication downtime / contingency plans

    • miscommunication

  • Sustaining the distributed experience

Langr Software Solutions services