How to give yourproject a kick in the mouthCollin Schaafsma / Co-founder @
Set yourself up for successThree things that must be right in order for your project to even start.
The Right ClientIs this client and project a good ﬁt?
The Right Client Is this client and project a good ﬁt?Know your ideal client well.- Compare all potential clients to that standard.
The Right Client Is this client and project a good ﬁt?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?
Payment Itʼs sorta importantAvoid the ﬁxed bid!- Fixed bids go against the Agile grain.- Requires tons of change orders.- Clouds judgment.- No one wins.
Payment Itʼs sorta importantSome 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.
Team SetupMake sure the team is fully dedicated- Context switching sucks.
Team SetupPairing 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.
Team SetupRemove 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.
Let’s do this thingProject is a go1.) You have the right client and project.2.) The time and materials contract is signed.3.) Team is ready to crush it.
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?
Story Carding Map it outGo analog at ﬁrst- 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.
Story Carding Map it outStory 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.
Story Carding Map it outDeﬁning 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.
Story Carding Map it outGather stories into a tool
Story Carding Map it outGather 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
Staying on trackCommunication- Remove tiers of communication noise.- Standup’s with the client.- Story acceptance.- Open channels with tools like Campfire.- Retrospectives throughout the project.
Staying on trackTransparency- 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.
Staying on trackWarning 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.
When shit hits the fanResetting expectations- If communication and transparency were good, you should be just fine.
When shit hits the fanThe “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.
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.