4. The Right Client
Is this client and project a good fit?
Know your ideal client well.
- Compare all potential clients to that standard.
5. The Right Client
Is this client and project a good fit?
Things you should ask yourself.
- Is the project too big or small?
- Is the work interesting?
- Are their expectations crazy?
- Can they afford you?
- Are they in a rush?
- Did they email you from a hotmail address?
7. Payment
Itʼs sorta important
Avoid the fixed bid!
- Fixed bids go against the Agile grain.
- Requires tons of change orders.
- Clouds judgment.
- No one wins.
8. Payment
Itʼs sorta important
Some rough numbers
- Use historical data, look at other projects.
- Contract with them for a story carding session.
- Don’t give them a line of shit. It’s OK to say “I don’t know now.”
- Explain your typical MVP engagement and what a pair costs a month.
11. Team Setup
Pairing is caring
- Increases productivity, focus and efficiency.
- Fosters collaboration and better communication.
- Forces real time code reviews.
- Increases the bus count.
- Ultimately results in a better product.
12. Team Setup
Remove the middle man or woman
- Things get lost in translation.
- The developer should be in direct contact with the client.
- If the client needs a lot of hand holding spread the work over the pair.
13. Let’s do this thing
Project is a go
1.) You have the right client and project.
2.) The time and materials contract is signed.
3.) Team is ready to crush it.
14. What are we building?
Inception Deck
- Why are we building this?
- Will it make money?
- What’s the desired timeline?
- What are the higher risk points?
- Who is the competition?
- How many developers will it take?
- What’s the elevator pitch?
18. Story Carding
Map it out
Go analog at first
- Dedicate a wall.
- Use dry erase boards, cork boards, etc.
- Use 3 x 5 paper notecards.
- If you have wires, put them on the wall.
- Tape your inception deck on the wall.
- Categorize notecards with little colored stickers.
- Don’t mix up the permanent marker with a dry erase one.
19. Story Carding
Map it out
Story Weighting
- Do this with the client.
- Use voting cards.
- Try to have an odd number of developers voting.
- Without weighted stories you can’t track how well you’re doing.
20. Story Carding
Map it out
Defining the MVP
- Do this with the client.
- The more stories that don’t make the cut, the more likely for success.
- Collaborate, help your client make the hard decisions.
- Avoid shooting down a feature totally, propose a simpler solution first.
- Stick to your guns, they can’t have everything at once.
- Keep the client focused on the core offering.
- Don’t invent problems.
- The Facebook + Gmail + Twitter + Something that pops is not going to fly.
22. Story Carding
Map it out
Gather stories into a tool
- Make sure you can track velocity.
- Make sure it’s something you and your client understand.
- Make sure the client can accept or reject stories.
- Make sure it can keep track of the story life cycle.
Examples
- Pivotal Tracker
- Trajectory
- Kanbanary
24. Staying on track
Communication
- Remove tiers of communication noise.
- Standup’s with the client.
- Story acceptance.
- Open channels with tools like Campfire.
- Retrospectives throughout the project.
25. Staying on track
Transparency
- Setup a daily environment, this can also be used for story acceptance.
- Make sure your client can access the code. Use Github.
- Give your client access to CI.
- Don’t sugar coat or hand wave. Keep it real, really real.
- Make sure your client is being transparent too.
26. Staying on track
Warning signs
- Velocity lowers a lot.
- Client involvement goes down.
- Tracker is not up-to-date.
- Client starts to add too many features in a sprint.
- Client is changing big features in the middle of a sprint.
- Dev team feels like they have to work more than a 9 - 5 day.
- Lots of blockers are coming up in standup.
- The client leans toward a waterfall style.
- You’re not looking forward to meeting with the client.
28. When shit hits the fan
Resetting expectations
- If communication and transparency were good, you should be just fine.
29. When shit hits the fan
The “Come to Jesus” meeting
- Don’t schedule the meeting in a reactive state. Sleep on it.
- Work things out together, it’s a partnership.
- Don’t point fingers. Take the high road.
- Communicate value.
- Come up with a sound strategy to get things back on track.
30. Don’t forget!
- Not every project that comes through the door is right for you.
- Avoid the fix bid.
- Story card the analog way.
- Weight your stories and track your velocity.
- Use a tool that works best for you to track stories.
- Pair program. Communicate the value to your client.
- Communicate your face off. Developers need to be client facing.
- Don’t sugar coat or hand wave!
- When your project launches successfully party like a developer.