Jobspring Partners: Talent in Action

The Jobspring Experience

  • When It Comes to Hiring Mobile Developers, Should You Hire One or Two?

    By Dana Henderson, Practice Manager of Jobspring Los Angeles

    If you ask anyone in the tech industry, or even in the business world, which two markets are going to see the most growth over the next year, I bet that they would say social media or mobile development.  From depositing checks, to shopping, booking flights or filing taxes, people are moving away from their personal computers and relying increasingly on their smartphones and tablets. If a company has any interest in beating their competition, it’s essential for them to have a mobile version of their product, and to have the most efficient, user friendly mobile application out there. With the smartphone market as immensely competitive as it is, companies need to be accessible to all users; meaning, they need to have both an iOS version and an Android option.

    So, how do we effectively and efficiently produce these products? Do you hire a programmer that can work on both platforms, or do you have separate teams to build each one? As a recruiter who gathers requirements from hiring managers on a daily basis, a question we always ask is, “Does this mobile developer need experience with iOS or Android?”  The initial and most common response is, “Well, if they have both that would be great!” Is this a reasonable job requirement, and should all iPhone developers start learning Android if they want to be hired? Or do these managers need to realize that it’s more effective to hire two specialized developers?

    After speaking to a number of mobile developers, the general response is that it hiring specifics depend on the project and the goal of the company.  Generally, if the business relies heavily on the mobile app, or if it’s an essential part of the marketing strategy, or involves complex features, the company should hire separate developers.  To begin, iOS and Android are extremely different in regards to programming techniques. Not only is one written in Objective-C and the other in Java, but the Android platform is generally a bit more challenging, since there are multiple versions. One developer I consulted with said, “What makes it difficult for Android is not the programming (language) part of it, but issues such as fragmentation, API’s not being as swift and nice as with iOS, and the technology moving very quickly. Although all of these things are getting better with Android, it can become difficult for one person to keep on top of everything.” Many other engineers had a similar response, and indicated that since they are two completely different platforms, it is best to have two developers. 

    To add another level of difficulty to finding this “Purple Unicorn”, it is not only necessary to find engineers that are capable of developing on both platforms, but to find one that is interested in learning both. Just like consumers tend to stick to one brand or one smartphone, developers have preferences as well, and some of them are not interested in dedicating 50% of their time to the other device. 

    So why do companies still try to kill two birds with one stone by hiring only one developer?  To save money, of course; which is why many managers think that a strong engineer should know how to program in multiple languages and learn how to build an app on various platforms. This can be true, and there are certainly developers who are very experienced and strong with both platforms. According to one engineer, “Both iOS and Android provide development frameworks that are largely compatible with each other, but neither Apple nor Google push these frameworks as the default environment.  An experienced multi-platform developer can design the app so that the largest percentage of source code is compatible with both platforms, with little-or-no changes.” Essentially, this route would cost less in the long run, since it requires less human capital.

    What is the solution? Do you spend a fortune on a mobile developer who’s a jack-of-all-trades, or hire experts in each department? Well, again, it depends on your goals. If you are looking to have flexible, easy-to-use products that attract a wide variety of users, then save money and hire one developer. If your goals include creating a complex application to target specific users with specific features, then it’s best to go with multiple developers who are strong in each area. The risk with hiring a “generalist” is that they can make small mistakes that require a lot of clean up on both code bases, which then takes more time and money.  More importantly, business owners and hiring managers need to understand the market, and that native mobile developers are hard to find. Business owners and hiring managers must be willing to pay for good talent, and think carefully about time frame, budget, and the goal of the mobile application.

    As for candidates, the more experience they have building apps from start to finish, the more attractive they will be as a candidate. Learning a new platform is always a good idea, as it will broaden the job seeker’s skill sets and make them more marketable. But be careful not to make the mistake of becoming the jack-of-all-trades and master-of-none.

    What do you think? Share your thoughts in the comment section below!

    Comments: Add Your Own

    john redden

    2013-04-19 13:18:19

    After talking to Dana, I thought I should post this. The idea that having to develop in Objective-C as apposed to Java as a handicap is largely false. Dana's blog points this out. A strong background in Object Oriented Design, Object Oriented programming and the concepts needed to visualize on a small screen real-estate are talents used for all mobile phone and mobile device platforms. The history or programming languages verifies this: C and Simula (begat) C++ (begat) Java and Objective C Java (begat) C# The patterns and ideas for mobile platforms are reusable. And is most cases, even the Objects in the abstract. Where capabilities diverge are different tools are used to build for different platforms. The Android development kit only requires Java and usually a special version of the Eclipse IDE. IOS requires (at least at some point) an apple to deploy the development image. The development IDE for IOS is XCode from Apple. There is some talk of Apple porting it to Linux. The dark horse in this arena, are the Microsoft mobile devices. (Do you now need three developers?) Of course, here you will need Visual Studio along with the .net technologies. Last, since economics is a factor, the Android development tool set is the bargain basement item. Apple hardware is expensive and the Microsoft Visual Studio also costs.

    Jobspring Los Angeles

    2013-05-03 17:34:34

    You make some great points John, thank you for sharing!

    Android app developers for hire

    2013-10-21 4:44:13

    hello, hire an expert developer is not an easy task if you want to hire a skilled and expert developer than you need to put some effort in this process.Some time one developer is enough to handle the whole project and some time a whole team can not gives you desire result.It all depend on the candidate capability. http://www.mobilepundits.com/Outsource_Android_Development.html

    Post a Comment


    Thank You!



    Your comment has been added

Send to a Friend

If you know someone who'd be interested in this post, send them a link so they can check it out.

Thank You!

Your note on blog page: When It Comes to Hiring Mobile Developers, Should You Hire One or Two? has been sent to your friend