TL;DR – No, not unless we work together.
Marissa Meyer posted an article last night about 2014 being a tech tipping point. I would like to outline a few points related to this that I think may be important in 2014 for South Africa, as well as Africa as a whole.
1. At the base of it all is that devs in South Africa (especially really good ones) are few and far between. There are some notable exceptions, however, they do not really talk to each other much and would rather see each other as competition as opposed to peers. This is a poisonous attitude that has been reinforced by the fact that most of them come from a proprietary background and are used to keeping secrets close instead of sharing everything.
Co-opetition would largely solve this. Sure, be competitive as a company (we all need to make a living) but share more. Express yourselves better and seek help. There is no shame in asking, even if you are a top shelf developer! Share issues and successes, so that everyone learns from it and as a community we can improve things incrementally.
2. Consultants are on average paid better than developers. Why? Consultants are supposed to have a very wide knowledge of a number of products that will actually add benefit to the organization. In my experience, consultants in Africa are little more than highly paid salespeople for certain software suites that are installed with a few clicks of a mouse and then “supported” at exorbitant rates.
We need to move away from the consultant based architecture and ensure that software is written or customized for the organizational business needs. Off the shelf software normally comes with a lot of additional bloat (that still needs to be maintained) that is never used and presents a liability to the org in the form of additional security attack vectors, as well as additional expenditure maintaining dead weight.
3. Agility. Are we agile enough to respond to change? Not really. Many organizations have a sense of built in fear when it comes to change. This absolutely hampers growth. Remember that as an organization, your competitive edge lies in your ideas and the people that can execute them. Any company can hire software people to hack out lines of mundane code, but in order to flourish and gain competitive advantage, you actually need a team of people that can do actual R&D. They will be able to keep up with trends and fashion new trends and pass them into the business, providing a large amount of value. The manner in which this value chain is maintained is another big point, but if those processes are not in place, you will also have a bad time!
4. Working together to ramp up scarce skills. Africa is a big continent. As a continent, we have about as many available developers as any other country, BUT this assumes that we can transgress boundaries and actually work together. If, as a whole, we would collaborate, we could certainly make a global impact (See the AVOIR project as an example), but this requires buy in and actual collaboration.
As it stands, we are simply unable to take advantage of any sort of “tipping point”. How many companies right now are actively doing R&D in areas such as: Semantics and internet of things, bandwidth and compression management, robotics and hardware hacking, big data analytics, and many others? These are the things that will make you stand out!
You need to think to yourself every day as a developer “How can I do something that has never been done before today?” Until that is a reality, we haven’t got a chance.