By John Houghton on January 3, 2014
When many people say they want to develop a mobile app, they look for a development team (coders), but they really should be looking to build a well-rounded team with different development disciplines. Only when the team is properly staffed with the right skill sets does the app have a chance at success.
One of the main roles that people neglect are functional roles, i.e. the product managers. A product manager on a mobile project is similar to a brand manager on a consumer product. They are in charge of the strategy for that particular product and they should have a lot of experience in the software industry.
Whether hiring for an internal or external project, or building a B2B or B2C product, the fundamentals are the same. There are major differences, however, between iOS (iPhone/iPad/iPod) and the Android operating system.
The main thing is that you want experience with the specific platform you’re working on (i.e. iOS or Android). Here are the basic roles:
Product Management – This is the CEO of the product who is responsible for everything – strategy, requirements documents, making sure the product is built to specification, and that it succeeds in the marketplace. Maybe you feel that’s your role, but it should be someone with mobile software product management experience. If you don’t have this experience, make sure someone on the team does and that you listen to them.
User Interface/User Experience Designers (UI/UX) – These are the folks that are responsible for creating a clear and intuitive screen flow, as well as the overall look and feel of the app. For more information, please see our articles, The Importance of Mobile Usability, 7 Steps to Design an iPhone App User Interface (UI) and 8 Steps to Design an Android User Interface (UI).
Engineering – These are the developers (coders) that actually do the implementation and programming of the application. If you’re wondering whether you should offshore, you might like our article series on the subject starting with Should I Offshore My Company’s Mobile App Development?
Quality Assurance (QA) – These are the folks who test for bugs. It’s better if the final QA team is kept at arms distance from the engineers as the QA folks assure that engineering has done it’s job correctly.
Release Management – These people are responsible for keeping the code repository in order. They also know how to code sign and release the app to the iTunes Store or Google Play. For more information, see our article, How To Get Your App Approved by the iTunes Store.
I have come to learn that if any one of these roles is filled by weak candidates, the team as a whole will be held back causing budget and timeline risks. I’ve seen many teams where everybody is new (have never developed a real app), and this is invariably bad. I’ve seen a number of projects that never make it to market despite a lot of time and money invested.
You might ask, “What if I have a certain role that I can fill for a lower cost – I can’t lose, right?” Actually, you can lose a lot because these folks will hold the team back and cause greater waste in other areas where you are paying. For example, the look and feel of the app is usually something everybody has an opinion about and is usually a source of contention, especially with inexperienced app team members. As teams tend to work by consensus, a lot of time and money can be wasted discussing the basics, whereas experienced team members already know the basics. Weeks and months can be lost as people hold to their original position and others spend time documenting the facts and trying to influence others before and during the next team meeting. By the way, Apple and Google write wonderful design guides, so you’ll want to make sure any designated designer knows these well.
Now, it is possible for a person to have experience in many roles, but usually you are not going to find this. (Have I talked before about the lack of skilled people in this business? Hint – they’ve already been hired.) Specialization can mean more experience, better quality, and quicker development cycles. All of this leads to lower overall cost. You are going to want to hire experienced resources and make sure you check up on their reference work to find out what they really did on the project in question and verify which contributions were theirs.