Over the past 7 years we’ve delivered well over 1000 apps, including over 100 critical business solutions for some of the world’s most recognisable brands. To achieve this we have built up a team of truly amazing developers (hiring over 200 developers and freelancers in the process) and learned how to find the best app developers. And it’s not an easy task because, to be perfectly honest, most mobile app developers out there truly suck.
Creating a mobile app requires almost no development skills
About 90% of all mobile app developers have no or very limited programming or system development training or education. Some have implemented a few websites using Dream Weaver or Adobe Flash. To take on mobile app development, they just download the iOS SDK or Android SDK and start building their first app. This shows what a great job Apple and Google have done in terms of making it easy to get started with app development. This is also why there are now hundreds of thousands of apps on the app stores. Most of these apps are very basic such as soundboards, some embedded videos, a guide to something with mostly text and some images, an RSS news feed and maybe animations, but they look great and they serve their function. They don’t, however, require much in terms of developer skills. The same thing is true for basic XHTML or HTML5 websites. A simple mobile web site can be created in a few hours using mobile website tools such as Netbiscuits or site.mobi or by writing a few lines of code in a notepad and hit publish. This means that anyone can claim to be a mobile website developer. Therefore, previous experience in creating mobile apps may count as nothing.
Why is this important?
In the same way that websites evolved to become business critical services for many businesses, apps and mobile websites are also rapidly evolving. It is no longer enough to just use the tools provided by Apple or Google and develop a nice user interface. Developers also need to have skills in back-end communication and integration, memory management, search algorithms, computer graphics (e.g. animations and OpenGL), performance optimization and more. The reason that so many iPhone apps crash when you use them is the lack of knowledge about memory management among iPhone developers. The developer must also have the discipline to write a structured and documented code so that other developers can easily update or maintain it. DMI has learned this the hard way. We assumed that an iPhone developer that developed great looking apps for us in the early days of the iPhone would continue to do so over time. Unfortunately this was not the case which meant that quality went down, projects were massively delayed, the code had to be rewritten from scratch to make small updates and we had to replace the developer with someone that would clean up the mess. Simply put, most iPhone and Android app developers are amateurs that can only develop very simple apps – and the same thing goes for mobile web developers.
To build up a great mobile development team don’t just hire developers with mobile experience. Focus on building up a team of great developers and generalists that will pick up any new technology rapidly and combine these with people that understand mobile, including user interface and user experience design. A degree in engineering and mathematics and experience of working in a larger development team make a huge difference in productivity, quality and the ability to deliver large complex projects. In the long term it will be worth the investment. Finally, there is only one way to qualify the skills and experience of a developer unless you really trust their references, and that is a live coding exercise during the interview process.
Read more in our previous blog about How to find the best app developers .
Image courtsey of: Matthias Mayr