Posted on 4/7/2015 in Web Development
By Matt Wiseley
This is the final installment of a four part series covering what we’ve learned working in and with startups to build their core product. The first installment covered how to source, select and initially work with a partner to build your startup site. The second installment covered planning the project. And the third covered the process of building the site. This final installment covers the importance and process of iterating.
The MVP, Revisited
Back in part two of this series, we covered the importance of building an MVP. Rather than shoot for the stars and “build the Titanic” in an initial project, Lean Startup entrepreneurs advocate building a Minimum Viable Product – that functional sweet spot between maximum return and minimum investment risk. There are two reasons for doing this.
First and foremost, if you’re truly building a new business, your business model and go to market strategy has not yet been proven. Second, you probably don’t know exactly what your target customers want and need and you definitely don’t know how they’ll interact with the product. You’ve gotten far enough to justify some investment, but if you spend all your money in an initial project there will be no room for course correction based on feedback and learnings from actual customers. This is where iterating comes in.
Planning for Ongoing Development
Be sure that when selecting your partner, you discuss the structure of the long term relationship for ongoing work. Most agencies provide a retainer model to reserve resources for changes. This is always a balancing act between the convenience of having resources available at a moment’s notice and the associated financial commitment. Discuss your rollout and feedback collection plans with the partner to estimate which and how many resources you’ll need for iterating after launch. Consider the ongoing development investment of your competitors and ask whether you’ll be able to keep up.
For example, you may want to have a small retainer in place for the first 3-6 months after launch to handle must-haves that are bound to pop up. But you also don’t want to implement every customer suggestion you get, so it’s wise to hold back and collect a good deal of customer feedback, and then distill that into course corrections and enhancements once some consensus is established. Depending on the speed of your feedback cycle, you might consider upping that initial smaller retainer for the following 3-6 months to tackle some of this more substantiated feedback.
Your ability to successfully iterate on the product depends on your ability to collect and sift through customer feedback. There are many ways to do this, and you should leverage as many of these as you can to collect as much and varied feedback as possible.
- Quick on-site surveys – Products like usabilla are great for collecting context-relevant feedback based on a pointed question.
- Feedback tab – An ever-present “Feedback” tab on the right or left of your site offer the customer an instant way to provide you feedback while using the product. If you’re using ZenDesk for support (highly recommended) they offer just the widget.
- Drop campaigns – Every new customer should be added to a drip email campaign featuring a schedule of emails checking in to ensure engagement and collect any feedback. You can make these intelligent by integrating with usage data and tailoring the message based on engagement level. Check out Mailchimp for this.
- The personal touch – Customers will respond to an actual human reaching out to them, either via email or a phone call, to get their feedback. Consider doing this for a random slice of your new customers once they’ve met a specific engagement goal.
Follow a Process
It’s tempting to just start requesting and making changes ad hoc. You’ll get quick turn-around and rapid results. Unfortunately, you’ll also start to degrade the quality of your site’s code base. It’s important when iterating to complete measured releases. These releases don’t need to be big, but each should start with a clearly defined set of requirements that get built, tested and launched. Then repeat. The cost of not doing this is that when you finally take development in-house, the team you hire will likely advocate rebuilding from scratch – an expensive and unnecessary proposition. A good agency will advise you in this process, but don’t let their eagerness to please you sidestep good software development process.
Taking it In-House
At some point, if your business proves successful, it will likely make sense to take design and development of the web application in-house, especially if the site is the core product or delivery mechanism of your business. A good agency partner understands that this will eventually make business sense for you and will guide you through this decision process and its execution.
To manage this transition properly, gradually augment the agency team with in-house resources in a collaborative effort rather than hiring a team and dumping the project on them all at once. I suggest starting with design/UX first, as this is the most visible and brand-focused part of the effort. Then augment the front-end development efforts that will be realizing the design/UX vision. Finally, hire some back-end heavy hitters and dev ops staff to take over the rest of the project.
Using an agency to build your initial core product is a smart way to start your business without a substantial commitment of capital in the form of full-time hires and office space. The right agency partner will allow you to focus on your business vision and target customers and work with you to transition the work to an internal team once the new business and scale of development justifies it.
Drop us a comment if you’ve used an agency for this purpose and let us know how it went and what lessons you learned.