When engaging an outside vendor to do development for you - how do you balance the needs of the four partners in development - and who are they?
Each development project requires key ingredients. Combining the right ingredients, in the right proportion can create value and further your project towards profitability. Combining the wrong ingredients, or choosing the wrong proportions can spell disaster. So what is the recipe?
First let's list our ingredients:
- A passionate committed entrepreneur with a strong sense of mission and a specific goal for success
- An entrepreneur savvy development team that concentrates on closely managing cost and delivering best value for the dollar
- A technology platform that can implement, support and handle expansion of the proposed solution
- A source of money to fund development, with a target goal for the next funding step
The first question to ask is are all these ingredients required and have we missed any ingredients? Let's examine each one.
The passionate entrepreneur - the entrepreneur comes to the table with the business idea, and the passion and commitment to make that work. Don't underestimate an entrepreneur's passion in the importance here. An entrepreneur with no skin in the game, and without the passion to work through tough problems and make tough choices can kill the project. Some of the negative qualities we've seen in entrepreneurs is the idea that they expect the world to develop their software for them for free or for a "piece of the pie later". In 90% of entrepreneurial endeavors - later never comes. Other entrepreneurs show the "everything must be done by me" syndrome. They are generally very smart people who refuse to accept help and assistance from those around them because no one can do it but them. They must also have a CLEAR VISION for exactly what they want in a development effort. They need to be able to articulate and/or document this vision for the developer in terms they understand and can commit to delivering. The entrepreneur must also trust and accept the evaluation of the development partner. When the partner says "this can't be done for that amount of money" they must realize that the only alternative is to pare down scope to fit the project within the budget.
The Development partner - A development partner needs to look at this as not only an investment in the future, but also a source of immediate income. If not - they aren't a business they're a speculation company, and worse yet one that has no control over their own destiny. To succeed in the entrepreneurial world, and succeed at business as a developer, they must create rigid standards for their development process that includes scope control, agile development with incremental improvement, the ability to help the customer understand and make tough technical capability choices, the ability to not only see the individual tasks on the table but the big picture goal of what each next step must be, and the ability to add value to the project where it is appropriate - without treading on the entrepreneur's vision. The developer must also be forceful when a client proposes doing too much for too little dollars. Every entrepreneur is going to ask for this. Every developer must learn to be straight up and let someone know what the investment will be and what the limitations of the delivered product will be.
The Technology Platform - let's face it, while the other three items are important selecting the right platform is equally important. We must pick a platform that satisfies the immediate needs of the development effort, and can potentially expand to service the needs of the next level of development. The platform must be scalable - at least enough to satisfy next stage growth needs. This means that in the long run, you may select different platforms as you move up the food chain in complexity, capacity, security and capability. A well designed solution allows you to adapt individual parts of your platform to new, better platforms as they are either developed and made available or better suit the needs of the market, end user, developer and entrepreneur. You might well select a different platform for your initial demo than you do for your final production. In some cases as some famous companies have done you may even wholesale replace the back end while leaving the front end intact or vice versa.
Money Management - Money is the great limiter, the great motivator and one of the best ways to keep track of your goals. Having a specific development budget allows you to control scope in your final outcome, allows you to deliver the best product for the money you have, and gives you a specific focus for each round of development. You must understand not only the cash flow and dollars of the original development effort, but also where the next "lump of development money" is coming from. The entrepreneur and the developer must always keep in mind what they have right now to spend on new features and what they need to deliver to secure the next level of spending. When requesting dollars, whether it be through the grant process, angel money, customer funded, etc.the developer and entrepreneur must work together to form a reasonable request that can be accomplished within the limited budget. If that doesn't happen they may well get that next level of funding, but never be funded again.
So giving that, what is our formula? Here's my proposal for it:
Success = (Entrepreneur x 3) + (developer x 3) + (platform x 1) + (money management x 2)