Working with Clients

No Time to Waste!

  • They have a brand-new not very clear idea
  • They need to demo something next week
  • They need to user test right after that
  • You haven't a clue what they want or if you can do it

Th9s Week's Top Goals

  • End of kickoff meeting: a Panel 3
    • ... with realistic data
    • ... that demonstrates value
    • ... that you can implement front and back in a day or two
  • End of Iteration 1:
    • a demoable prototype of Panel 3
    • a substantially less nervous client team

Kickoff Meeting Goals

  • Meet and greet
  • Establish communication channel
  • Schedule mid-week check-in time and method
  • Define what you'll deliver this week

Meet and Greet

  • Before: Fix your team slide in shared folder to
    • include at least name, level (junior, senior, MS), major, email
    • clearly identify the team's primary contact person
  • During: Get emails and primary contact for client team
    • Slack or Facebook Messenger ONLY if all members of both teams are already use and prefer it.

Primary Contact

  • One contact person on each team
    • sends all inter-team emails
    • CCs everyone on both teams (normally not me)
    • gently points out when counterpart fails to CC everyone
  • This enables:
    • Easy tracking of communications
    • Fewer missed or mixed messages
    • More team discussion before replying

Mid-week Check-in Deliverables

  • A demoable rough draft of the first deliverable
    • Swarm with two days of each face-to-face meeting
  • A list of issues identified, with potential resolutions:
    • Clarification issues: offer two or three likely interpretations
    • Implementation obstacles: offer two or three alternatives you could do pretty quickly

Iteration 1 Deliverables

  • A demo of the first slice they can show in the MPD class
    • Expo client app is fine, but schedule an early midweek setup and training session.
  • Instructions or live walkthrough of how to run the demo
  • Deliver 24 hours before they demo, so that they can test and practice

Client meetings

  • Twice a week
    • hour-long face-to-face review and planning
    • half-hour midweek check-in about 3 days later
  • Active listening at every meeting
    • Have a designated notetaker
    • Listen more than talk
    • Email a summary of immediate tasks and questions within 24 hours

Client Survey

  • Ask the client every week how things are going.
  • Keep this short and open-ended. E.g.,
    • Are we meeting your expectations?
    • Did we miss anything?
    • Did we assume something we should not have?
  • Don't ask for a rating. People hate to rate people.

Working Prototype

  • An end-to-end user-testable implementation of the payoff in their 4-panel
    • Get realistic data from them
    • Use Material UI or similar for a simple but clean UI
  • Architect for change
    • DTSTTCPW
    • YAGNI
    • Isolate dubious decisions

Team Roles

  • Task tracker
    • Manages list of undone tasks and deadlines
    • Asks who is doing this, is it done yet, ...
    • Raises the red flag early
  • Note taker
    • Takes notes during (not after) client meetings
      • Must resist being too active in conversation
    • Prepares client summary, with notes from rest of team
  • Both of these can be rotating roles

Product backlog

  • Have a shared document with prioritized user stories
  • The Client Project folder on the Google Drive is shared with them. They can see and edit any documents you put there.

Iteration Taskboard

Thanks to Hakim El Hattab for RevealJS