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)

Yesterday I had a great chat with Bridgette Sexton at Google Ghana and got a rundown on their experience with software talent in Africa. Most of what I heard from Bridgette confirmed and deepened the learning from my time in Ghana last month, but I learned several new things and we had a great discussion about some of the core challenges to building a strong software industry in Africa (which go well beyond the talent gap).

Let’s start with the talent gap, though. There are plenty of raw recruits out in the market, coming out of universities and other training programs with a reasonable set of web development skills (PHP, HTML, etc.). Those skills tend to be fairly shallow, though, and haven’t been honed or augmented with real-world experience. On the other side of the equation, there’s plenty of demand for software developers… but most companies need developers who have built real products, not just learned how to code in school, and those same companies tend not to have the resources to invest in the high-touch mentoring that’s needed to get a raw recruit to a developer who is ready to dive into an existing software company.

There are also plenty of people out trying to build software companies on their own – Bridgette’s seen them all across the continent – but those entrepreneurs tend to run into two challenges. First, they have no experience in shipping software. They can build software, but it often ends up as an unfinished product that can’t be taken to market; maybe they get 80% of the way there and stop, or run into an insurmountable problem, or whatever. Second, many entrepreneurs lack a deep understanding of viable software business models. Mobile app developers, for example, might want to just ship an app and start getting paid rather than looking at freemium or ad-supported models.

Part of the challenge, too, is that what constitutes a “viable software business model” in Africa is likely to be very different here than in the US, Europe, or Asia. Desktop computer usage is extremely low, and instead the communications vehicle of choice is a mobile phone. Most of those phones are feature phones (as opposed to smart phones), and companies like Google are doing some great work to make the internet more accessible on feature phones but it’s a much more fragmented environment than anywhere else I’ve been, and usage patterns look nothing like they do in the rest of the world.

I saw the beginnings of a vibrant community around software development in Nairobi, particularly around iHub and m:lab, and Bridgette said that there are many others around Africa working on solving what is a very hard and complex problem. There may be opportunities – some are in discussion – to bring the various actors together in a more structured way. Getting investors into the equation here is key, especially investors interested in providing seed stage capital to promising startups.

Potential solutions

The scenarios I’m working on in both Ghana and Kenya have the potential to contribute to some of these challenges. No single organization is going to solve all of the challenges, but I had a couple of takeaways after yesterday’s meeting.

First, one of the challenges in mentorship and building strong entrepreneurs is that taking a fresh graduate and dropping them straight into a startup environment isn’t the best way to teach them how to build finished products and business models. Mentoring from industry leaders is great, but it often comes once every few weeks at best. With a Mifos organization that is functioning partly as a working software company and partly as a software talent incubator, we can fill a few gaps. We can give young developers something manageable to work on – a feature, or an API – rather than expecting them to learn everything all at once. We can also engage them in teams of more experienced developers to learn what it means to work as part of a software team and to learn first-hand from more experienced developers in a deeply engaged, high touch way.

Second, we can explore gradually getting broader experience for these developers by giving them freelance opportunities with other companies. Many software companies in Africa need help on a short-term basis (“get me a J2ME coder, stat!”) and we may be able to build some sustainability into the model by contracting out the developers learning within the organization and giving them some sort of revenue share arrangement.

Many thanks to Bridgette Sexton at Google for her insights and passion around building stronger developer communities in Africa. The above ideas blend a lot of what I heard from Bridgette with some of the ideas we’re exploring for Mifos in Africa.

In addition to looking at Mifos-specific opportunities in Africa, I’m also trying to get a sense of what is needed to build a vibrant software industry here. That’s a big topic, and encompasses the need for both a strong investor ecosystem (especially more seed/angel investment) and some success stories to show tech entrepreneurs that there is a viable career path in software entrepreneurship.

Ultimately, though, building a strong software industry in Africa requires strong talent – both technical and business oriented – that can found and scale African companies that solve hard problems with great software. My initial glimpses into the software talent pool in Africa have turned up a few things:

  • Senior software talent – architects, senior developers, product managers, and the like – are vanishingly scarce in Ghana, Uganda, and Kenya (the three markets I’ve investigated)
  • There are plenty of young, energetic, and talented developers around but they rarely have deep experience in building and shipping software
  • Many of the most talented and experienced developers go for job security and good pay, and are locked up by banks and telcos (and are very hard to pry out of those jobs)
  • There are lots of incubators around, especially around East Africa, giving entrepreneurs a place to go and find community and in some cases find mentorship, learn at events, etc.

What I’m not seeing – and hearing a need for – is deep, structured mentoring that builds skills and experience through daily contact with people who have built companies and products before and learned some of the tools and methodologies. It looks like some of the incubators – m:lab east africa, for example – are trying out some new approaches to tackle this problem, and I’m looking forward to learning more about how that works.

There are a couple of US-based models that have caught my eye as well:

  • The well-known Y Combinator approach combines seed funding (usually under $20,000 USD) with help that ranges from what to build, how to build it, and making deals with investors and/or acquirers. They help startups get incorporated properly and host investor days, dinners with speakers, and perhaps most importantly have a rich and active alumni community.
  • I’ve just run across MPOWER, and I’m finding their model super interesting. It’s high overhead (I’m guessing – need to talk to them to validate) but seems like a great model to think about replicating in Africa to augment the vibrant incubator community. Basically, MPOWER Ventures is a VC that focuses on empowering underserved populations. Their first portfolio company is MPOWER Labs, a combo of a shared R&D facility, shared company infrastructure, and a bunch of talented people who can work with multiple portfolio companies on both business and technology problems

The thing that I like – a lot – about the MPOWER model is that it brings together deep talent (often expensive) and amortizes that talent across a bunch of companies to reduce the cost profile for any given startup. I could see this working really well in Africa – imagine matching up an experienced CTO who has great architecture chops and a great product manager who knows how to ship software (not the same as writing code!) with 4-5 startups with great local product ideas, coding chops, and energy/passion for what they’re trying to build.

The other idea I’m toying with is creating a single company – probably focused on Mifos – that partners with one or more universities to give CS students exposure to real world software development and software companies. For example, you could imagine an “Applications” course that is a hybrid of coursework and quasi-internship and brings together both CS and business students, pairing them with their counterparts inside the company. Maybe it’s worth the equivalent credits of two courses (to ensure that students have the time/energy to dedicate to the work) and includes academic lectures, studio sessions with team from the company, and real-world work experience. A CS student might pair up with a senior developer to work on a new API; a business student might work on the launch plan for a new version of the software.

The underlying idea is to move toward much deeper mentorship, coaching, training, education in a real world working context, pairing inexperienced but smart talent with deeply experienced people who are working on building a real business and can help show their charges how what they learned in school changes when it gets into the real world. Building a successful company takes much more than just writing code and putting it in customers’ hands – it requires understanding customers, testing hypotheses, driving a release plan, setting up support tools and infrastructure, etc., and a lot of the entrepreneurs I’m coming across in Africa have great ideas but no exposure to what it takes to turn those ideas into successful product companies… and, unfortunately, nowhere to turn to get a leg up on learning those skills and methodologies.

Ben at Kopo Kopo blogged recently that

Africa is rising. The continent’s 1B+ people are largely young, urban, tech savvy, and brand / status conscious. Pockets of the continent – Accra, Cairo, Lagos, Nairobi, etc. – are globally-connected. They read Mashable and New York Times. They demand accountability and transparency. And they are the future.

I think that’s absolutely right… there are massive opportunities for software firms in Africa, and jumpstarting deeper development and nurturing of talent is one of the critical factors to attracting investment and simply to enabling some of the great ideas that African entrepreneurs have to take root and blossom.

As part of the exploration of new opportunities to use Mifos in Africa, I’ve been looking into and thinking about new models for the delivery of services – financial and beyond – to the poor in Africa through the microfinance channel.

Consider a network – connected, social, and mobile – that delivers services to empower the poor in Africa. The services could range from traditional microfinance services (credit, savings, insurance) to health and ag information to pure P2P lending services built on a mobile payments platform.

poor centric app network.png

The underlying premises of such a network would be:

  • Find hard problems that the poor face every day and deliver access to apps that solve those problems
  • Make assumptions about a future state – $25 Android phones and ubiquitous data access, for example – but build in an inclusive way that leverages today’s prevalence of feature phones (using SMS/USSD)
  • Engage the broader community across Africa – app providers, MFIs, etc. – in the creation of a connected marketplace for the poor

In doing this, can we remove friction and costs from the flow of both information and capital to and from the poor?

I’ve talked to a couple of MFIs (and MFI-like) organizations here who are starting to go in this direction. Musoni (a Dutch-based MFI with operations in Kenya) is providing traditional microfinance services but are 100% built on the M-Pesa platform. By leveraging the mobile platform 100%, they have the opportunity to build additional value-added services to deliver to their clients over time. Nuru International, based in the US with operations in Kenya, is a development organization with multiple areas of focus ranging from economic development to agriculture to water & sanitation. They’re using Mifos today for their microfinance programs, but could really use a platform that enables them to see what’s happening across all of their programs and to push both information and capital (and proxies for capital, like seed and fertilizer) to their clients.

If so, what are the technology requirements to make something like this work? At it’s core, this is about creation of a platform that has these attributes:

  • Flexible and extensible: supports many models for the delivery of microfinance services, and includes the interface points to plug in new apps at a low time/energy/financial cost
  • Aggregates information across apps: see what’s happening in the ecosystem and provide information to both users and service providers
  • General purpose: can be leveraged for any kind of information or capital transaction

Rather than focusing future Mifos development on incremental features for traditional microfinance services, maybe the real play is to leapfrog to a network of apps – including those that support traditional microfinance – to empower MFIs to grow both in scale and breadth of services, leveraging the explosion of mobile access and mobile apps across Africa.

This is clearly a very high-level, abstract, and early-stage idea but I think that there’s a lot of potential in this and invite others to help refine and improve the idea.

Key learning

  • Senior technical and business talent is extremely scarce in all regions (Ghana, Kenya, Uganda)
  • East Africa buzzing with mobile activity and some investors
  • No ecosystem to promote the development of talent or growth of entrepreneurs
  • Few companies thinking about the backend – where all the mobile data/transactions go
  • Where the puck is going: sub $50 android phones, data connectivity growing fast
  • Makerere University Kampala: lots of students, some bureaucracy to contend with
  • Opportunity for microfinance technology still strong, especially on lower end
  • Building talent idea: pair technical/business experience with local product design and slowly build the deep technical/business leadership
  • Greatest relative impact likely in West Africa (due to the white space and lack of vibrant ecosystem and software companies)
  • Greatest absolute impact likely in East Africa (due to the emerging ecosystem of companies, more mature mobile space, greater access to talent, etc.)

More after the jump… Continue reading »

I spent the first week of this trip in Accra starting the exploration into what we can do with Mifos in Africa. Initial takeaways and ideas on opportunities follow.

Ghana first glimpse
Key takeaways & learning

  • Ghana has a very nascent software industry; there are a handful of local software companies but all struggle with
    • lack of talent
    • lack of opportunities to work with the large commercial buyers (who all spend their money outside Ghana)
  • Implication is that there is significant need to develop software leadership – both business and technical – in Ghana
  • There are several players working on this problem already – may be able to leverage/convene/augment some or all of them if we work in Ghana. These include Meltwater, Google, the WWW Foundation, some private sector companies, and the Kofi Annan Centre for ICT Innovation.
  • Market for Mifos in West Africa is mixed
    • Lots of small MFIs who need systems
    • Few good providers (the big vendors don’t seem very present here)
    • very limited ability to pay, and limited tech skills
  • Talent is going to be a huge constraining factor (this appears to be the case in Nairobi to an extent as well)
    • Senior software talent is virtually unheard of
    • development methodologies, how to ship, etc., are also very hard to find skills in
    • Competition for more junior talent is strong
    • May need to import some expat talent (people I talked with think need to import talent for 2-5 years)
  • It appears relatively easy to do business in Ghana, including setting up organizations and bringing in capital and talent

Opportunities

  • There’s a clear need for a massive uptick in software entrepreneurial and development talent in Ghana
  • There’s also a clear need for a strong technology platform for microfinance in West Africa
  • Additional business opportunities today are limited (as opposed to East Africa); however, as the market develops it’s likely that other opportunities will begin to appear; everyone wants to play in mobile now but the telcos are v hard to work with
  • With a university, brainstormed about creating an “Applications” course where
    • Mifos exists as a full-fledged social business/project (basically: it’s working with customers)
    • Bring a mix of students into the org for a semester (include business, MIS, and CS) to learn specific things as part of a course
    • This would be less intensive than an internship
    • But more of a studio course – not just using Mifos as a textbook but pairing up with professionals to learn directly and apply to coursework

What’s really clear to me already is that there is absolutely an opportunity to create a running, real-world software business that works at the enterprise level (eg Mifos) and use that as a means of incubating talent. The opportunities elsewhere in Africa are likely to be very different – more commercially oriented – and the challenge/constraints in Ghana are going to be a) talent and b) potential impact (due to the nascent market).

Assumptions & Hypotheses

  • Hypothesis: Faculty at universities can fulfill the architect needs of Mifos; this is proving to be false, and instead will need to bring in external talent. The faculty will be able to engage and help but not drive full-time, and they don’t appear to have serious enterprise architecture talent in place.
  • Assumption: I have a few working assumptions about Mifos itself
    • Need to have a real, working organization that is actively engaged with MFI customers; this is the only way to keep the code alive and evolving and to keep the project from becoming purely academic
    • Need to have a separate organization from whoever we partner with (such as Ashesi); can have multiple tight affiliations, and could even structure as “The West African Center for Open Source and Software Entrepreneurship” or something and have Mifos be a core business within that
    • However, Mifos is too big and complex to try to embed into another organization. The best ways to develop skills will be
      • Build directly by hiring and mentoring/growing junior talent
      • Build via partnerships by bringing students/trainees/etc into the organization for periods of time and exposing to (for example) QA, scalability, marketing, customer support, integration with mobile, etc.

Great summary of the Pivot25 conference from Nairobi last week by an investor from Tanzania / Silicon Valley. This chunk (near the end) resonated particularly strongly for me:

Technology is not often enough: There needs to be increasing focus on companies adopting lean customer development methodologies and spending more time talking to their target customers. The term “Pivot” is widely used in Silicon Valley to describe a change in direction after new insights after putting out a product to market. Many of the East African entrepreneurs pitching didn’t show signs of this, nor did the panels believe enough in teams to adjust, questions like “what are you doing to compete with foursquare?” often ignored the very nature of the team’s willingness to adapt and differentiate- at least that should have been the response of startups asking questions like this. Investors bet on teams and execution, not ideas. One investor even mentioned that ideas alone have a negative Return on Investment (for taking up valuable time of the investor without showing any progress).”

This is extremely true and exactly where the focus needs to land for the African software/tech entrepreneur community. The participants at Pivot25 had wildly varying degrees of energy, great ideas, and sound technology – some stood out as very viable companies while others seemed destined for the dustbin – but the common theme that I saw was a need for serious mentoring on how to build a successful software company. This ranges from lean startup and customer development process ideas and tools to the basics of how to ship software effectively (which is way more than just writing code). Culture is important too – specifically, building a culture of trying, failing, iterating, and following the best idea. The Core Protocols would be nice to add to the mix.

There are many incubators in place or in the works in Nairobi, and I’m investigating which ones (like mLab and iHub) are going to be able to provide that deep hands on coaching. Maybe an accelerator is needed (a la Y Combinator), or maybe a holding company / investment fund that goes 10-100X beyond the usual degree of mentoring and coaching?

Picked up a Safaricom 3G USB modem today and it works great so far, with one minor glitch. I was using it without external power and my battery was dying at an unbelievable rate. Turns out that the Safaricom Broadband software on OS X was consuming an enormous amount of CPU time – showing around 99.8% in Activity Monitor which I think on my quad-core machine means it was eating most of one of the cores.

Fix is easy enough: configure the USB modem in network settings and connect that way, never running the Safaricom software.

So this week I’ve been hanging out with some people in the software community in Accra, Ghana. At this stage of the exploration around Mifos in Africa, I’m mainly interested in getting a sense of what’s possible, where the challenges are, etc., while exploring a few more specific initial scenarios. I had a great discussion with Patrick, Nathan, and Aelef at Ashesi University and then met up with Derrydean Dadzie, the CEO of DreamOval and winner for greatest name ever.

Some initial thoughts & learning:

  • Senior software talent – architect level – is exceptionally hard to come by in Ghana, and expensive when you find it. Kojo (who worked with us on Mifos at Grameen Foundation) confirmed this at dinner the other night.
  • That said, there are a fair number of younger, smart and energetic developers around; and a lot of demand for them as well
  • The software industry in Ghana is still very nascent – lots of smaller software development shops have sprung up, and seem to be doing OK but not great. All indications are that they have a really hard time competing with international firms from the US and India, even when prices for local work are lower; the big customers (banks, oil companies, etc.) are in “I won’t get fired if I buy IBM, even if it’s more expensive” mode
  • For Mifos to be used as a platform to grow talent is going to require both a) a real core organization to drive Mifos software and services and b) some level of simplification that gets around the long ramp-up period on the code and domain

One idea that I’m exploring with Ashesi is creating a sort of software incubator / institute / center that would be affiliated with them in some way. The center would do a lot of work on Mifos – and would have to have the full time talent to really drive the core Mifos business and participate in the Mifos open source community – but could then be a place for students and faculty to drop into the stream of an ongoing enterprise software business. They could work on specific projects, use some components of Mifos as class projects or for teaching, probably lots of other things. It’s intriguing and I think it has legs, but will be challenging to get it right without a total loss of momentum. The cool thing about this is that it could be a petri dish for all the talents needed for software entrepreneurs, from engineering to product management to the business/marketing side.

During the next few months, I will be exploring options for creating a new, independent Mifos organization based in sub-Saharan Africa. The goal of this organization will be to create long-term positive impact in Africa using the Mifos platform to do the following:

  • Continue to empower microfinance institutions to reach more of the poor with great financial services
  • Contribute to the creation and evolution of a vibrant software industry in Africa

The organization might take any of a number of forms, ranging from an incubator that uses Mifos as the basis to build software engineering and entrepreneurial talent to a business that provides Mifos cloud services and builds and delivers other applications that leverage the platform. I’ll be exploring both academic and private sector partnerships to find existing organizations who can both contribute to and benefit from the Mifos platform and the Mifos community.

At the end of this three month exploratory phase, I hope to have multiple options identified which leverage different strengths and opportunities in different geographies. For example, one option might be a software entrepreneurism institute based in Ghana, connected to a leading university, which acts both as a teaching and mentoring facility for emerging software talent and as an incubator for new software business ideas. Another option might be a for-profit company based in Kenya that leads the Mifos open source community while pursuing new business opportunities in the mobile space, using Mifos as a back-end transaction platform to connect the data flowing among all the exciting new mobile applications starting to appear in East Africa.

The global Mifos open source community – software developers, IT companies, microfinance institutions, and others – are critical to the ongoing success and viability of the Mifos platform. I believe that the community can thrive, perhaps in a different form than it has worked in the past, but that the community will need new leaders to emerge to provide the direction and support needed to ensure that Mifos continues to evolve and provide great support to its users.

I’m in Accra this week, speaking with leaders at places like Ashesi University, DreamOval, RanCard Solutions, the Ghana-India Kofi Annan Centre of Excellence in ICT (AITI-KACE), local microfinance organizations, and others. Starting next week, I’ll be based in Nairobi for the rest of June exploring opportunities and ideas in East Africa. In this early stage of the exploration, my goal is to collect as much information and generate as many ideas as possible, seeding the analysis and refinement needed to come to some viable alternatives.

Here on my blog I’ll keep a running commentary going on the meetings, discussions, and ideas that this exploration generate. I’m planning to do as much of this as possible in the open, enabling anyone and everyone to see and contribute to the process. I’ll also be dipping my toe into the Twitter world as @GeorgeConard.

If you’re a member of the Mifos community, an African MFI or software entrepreneur, or just have ideas about how Mifos might have the greatest long-term impact… I’d love to hear from you. You can comment here, post to the Mifos mailing lists, email me directly, find me on Twitter, etc…

I’m excited about this – it’s great to be back in Africa for an extended period of time, and I think that the Mifos software and Mifos community can create empowerment and opportunity for both software entrepreneurs and for the poor across Africa.

© 2011 On Safari with Oldupai George Suffusion theme by Sayontan Sinha (modified)