Software start-ups – succeeding before you start
Starting a business based on a software product is no easy task. If you're an entrepreneur with all the passion for the business aspects of your new endeavour and the promise of the millions in profit driving you on, don’t be deterred by the mammoth task that is software development - one of the most important elements of your venture.
Almost daily, our team is asked by individuals with grand ideas (ridiculous, novel or brilliant) on how to get started with a software-based business. Not one to pass up an opportunity to uplift the development community (and tech-related start-ups) we’ve put together our top tips for anyone starting up in the software development space.
1. Educate yourself
Software development is not a simple process of committing your hard-earned financial investment towards an appropriate software company. It’s a journey of highs and lows that you need to prepare for. Kick the tyres and make sure your implementation vehicle will withstand the rigours of all the upcoming road surfaces.
We’ve often received emails from prospective start-ups with a total of four bullet points superficially outlining their dreams for starting the next AirBnB-esque platform, and have been asked how much it will cost? If you’re at this point, turn back and Google how AirBnB funded their start-up: AirBnB
2. Become familiar with the software development lifecycle.
Modern development methodologies are specifically tailored for high collaboration, short sprints of work and continuous delivery. These topics are essential to the successful outcome of your project. The internet is also full of information and stories of people who have taken on the same mammoth task where some have succeeded, but many more have failed. These lessons are expensive to learn yourself - so read up, understand the common themes of success implementation journeys and become familiar with the ins & outs of each step of the journey. Technically educating yourself willarm you with the right tools and mindset to approach the development phase.
3. Know the costs
Funding your project is the next biggest hurdle impeding the development and rollout of any software startup or project. Paying for software development is never cheap. Dedicated software development companies house teams of highly-skilled developers and have to pay salaries and their own overheads. The flip-side to the more-expensive engagement is finding your distant relative’s young coding prodigy who is willing to work for peanuts (or the hottest gaming/graphics card). Beware - you get what you pay for. All too often we hear how these start-ups or projects have failed or require substantial rework (another delay) before launching to market.
Don't forget about understanding your post-implementation operational software spend such as hosting fees, development maintenance contracts and business continuity (backup plans) of your product. Establish a comfortable medium, balancing the time-cost-scope factors where you have understood the risks of reducing any one of these points against your appetite for the remaining factors.
4. Alternatively, consider an incubator environment: Tech Incubators in South Africa
Software does not magically write itself - you have to get involved in every aspect of the delivery pipeline. Key to this is your involvement in translating the business requirements to the development team and holding them accountable to the delivery timelines. Be prepared to “pull the plug early” and find another development partner. On this note: make sure you receive a full set of working, compile-able source code, at very regular intervals to prevent being held to ransom.
5. Celebrate your milestone successes
Developing software is a creative process that continually iterates around phases of analysis, prototyping and solving the current requirement. Setting your sights on being the next best and hottest app that has the potential to sustain in a bevy of applications is not an easy task, but nowhere near impossible.