One of the challenges in building a strong, world-class software industry in Africa is the lack in experienced software developers, product managers, and entrepreneurs. There are plenty of smart, energetic people coming out of universities like Ashesi and Makerere looking at several possible career paths. They can go and work for a large organization, like a bank or telco; they can join a smaller company or startup; or, they can go and found their own startup. For the latter two – joining a small startup or creating their own – many of these students are at a disadvantage. They have little or no real-world experience in creating finished software, product plans, test plans, and all the other things that bridge the gap between academic learning (key) and real-world software companies (also key).
The goal with the plan I’ve been working on in Ghana is to help bridge that gap, creating stronger software developers and entrepreneurs that lead to stronger software companies. One idea that we’re considering is the creation of a Software Entrepreneur Residency program within a larger African Center for Open Source and Software Entrepreneurship (ACOSSE). This is akin to a medical residency, but for software entrepreneurs instead of medical doctors.
The key elements of the residency program would be:
- An 18-24 month commitment on the part of the resident
- Work on a full-time, paid basis in a software company affiliated with ACOSSE
- Work on real problems that move the business forward
- Rotate through multiple disciplines; for example, spend 3 months in test, 3 in development, 3 in product management, 3 in customer support, 3 in sales, etc.
- Work under supervision of a designated mentor who helps both with the work and with career and personal development
- Participate in continuing education programs on software engineering and entrepreneurship (run by ACOSSE)
The residency would smooth the transition from academic learning to the deep-end of real-world startups, and would significantly broaden the exposure of software engineers to the entire cycle of the business. A software engineer with a great idea who has been on sales calls, fixed bugs, built a test plan, and helped customers with support issues will have a much better idea of how to build both a business and a great software product.
(Pixar appears to have an internal version of this for recent grads as well)