stablekernel

What is the Demand for Developers with iOS Skills?

December 11, 2014

Demand will remain high for iOS developers through 2015. As the market matures, we’re seeing two things.

Recently, Joe gave an interview with David Geer of Cybercoders on the shortage of highly-skilled developers. The article published on December 1, 2014. Here are the full answers Joe provided to David’s questions:

Where will the demand for iOS skills be through 2015?

First, maintaining and improving existing applications is becoming a full-time job. Instead of creating new applications, companies have identified applications that have been beneficial to their business and apply resources to improving those applications’ experience. These applications must be kept up to date with the release of new devices and versions of the iOS operating system, and also must compete with similar applications. For example, a bank with the best mobile banking software can better acquire customers than a bank with poor mobile banking software; it would follow that banks would compete for the best mobile developers to stay ahead of competitors. In that regard, the iOS platform has quickly shifted from a “cool thing” to a real, competitive business and I see that trend continuing to solidify over the course of 2015.

Second, I think we are currently seeing an anomaly in skill-to-compensation ratios. In other words, many developers are commanding exorbitant salaries, but are not strong developers. Many companies simply do not have the ability to verify the aptitude of developers and must rely on the candidate’s résumé – after all, most companies developing iOS software are not software companies, but rather need iOS software to augment their main business.

Our hiring process involves reviewing candidate’s code samples to look for proper usage of design patterns, consistent styling and elegant solutions to non-trivial problems. We are fortunate in that we are all very skilled developers across many platforms, so we have the ability to qualify a candidate based on their aptitude and current skill level.

what-is-the-demand-for-ios-skills

We’ve seen a lot of impressive résumés coupled with very poor code samples (bad programmers) and many excellent code samples come with a relatively weak résumé (good programmers); there is simply no correlation between the two. For example, we’ve hired a former hairdresser that is an incredibly talented programmer with only a year of professional programming experience and they were immediately able to contribute. By contrast, we’ve turned down (and even fired) developers with 10-20 years experience working for big-name companies as “Senior Developers” – they simply didn’t ‘get it’.

Those “Senior Developers“ still land at a corporate gig making an inflated salary, but my point is that I see this trend ending. I’m not sure that 2015 will be the year where it ends, but I think we are getting close. I think it largely depends on the current influx of venture capital into speculative applications/platforms ending, but that is an entirely different discussion.

What specific iOS skills will be most in demand through 2015? Why?

The ability to develop native, structurally sound software for iOS and (to a lesser extent) Mac OS X platforms. Keeping up with current UX/UI trends and remaining up to date on new functionality exposed through Apple’s SDKs are very important as they change annually. As we continue to mature as an industry, the ability to utilize project management software, version control systems and develop automated testing and deployment strategies is a must-have skill.

For what positions will the market demand which of these skills through 2015?

Plain and simple, software developers. It is currently difficult to find talented iOS developers (but there are many talented non-iOS developers and many non-talented iOS developers out there).

Can you give me some measure, a metric of how many unfilled positions remain in the U.S. that require these skills? How will that number change up or down through 2015?

Couldn’t tell you. We’d hire ten quality people tomorrow if we could if that is any indication. As I said before, I think that number has leveled off some when compared to the previous years, but I still believe it is increasing. The biggest problem is not finding new clients, but finding strong developers to staff projects.

Why will the demand be unmet?

Programming isn’t easy, and being good at programming is even more difficult. Couple that with the fact that many companies now understand that mobile applications are often important to their existing business and that creating software is a time-consuming process.

What vertical industries will have the strongest demands for people with these skills through 2015? Why?

Home automation and Health seem to be the two industries that are really seeing a lot of work. They are both seeing significant investment from startups and platform vendors. The recent availability of wearable devices that couple with mobile devices means that software can have access to more information from a person’s life.

What will the newest iOS/Mac/Apple skills that candidates should acquire?

Developers need to become better developers, plain and simple. A good developer can pick up new API additions (like Health or Home automation APIs provided by Apple) very easily if they have a fundamental understanding of how design patterns work. This is where non-developers get it wrong: experience in a particular vertical is not a developer skill. I personally have worked in home automation, eLearning, social networking, warehouse management, order fulfillment, orthodontia, accounting, consumer analytics, gaming, and image, data and video analysis. Across all of these industries, the code looks nearly identical. The key for a developer is understanding – at a fundamental level – how computers, programming languages, tooling, design patterns all work.

Why are the markets hungry for these skills?

Mobile devices can make many processes – both business and personal – much more efficient. Empowering users to more efficiently command their life reduces cost across the board in the long run. Here are some examples:

Home automation software: Lock your house and arm your security system from anywhere leads to less break-ins, which means lower insurance costs and less downtime replacing stolen items. Controlling air conditioning and water heating units means less wasted money in utility bills and global energy resources.

Health software: Live longer, reduce insurance costs and minimize hefty hospital bills.

Warehouse management/order fulfillment: Retailers are more quickly able to move products from warehouses to consumers, both distributors and retailers require fewer costs and that savings is passed to the consumer.

In general, companies understand that an investment in mobile software brings efficiencies to their core business – and that’s why developers remain in high demand.

Why is there such a shortage of iOS developers? I’m wondering why there aren’t more….is it a difficult programming language to learn? Is it too new?

photo credit: IMG_4700.JPG via photopin (license)

The shortage is mostly due to such a high demand. The same shortage exists for Android developers as well, and both Java and objective c are old languages, so the specific language isn’t the issue. Rather, there are different classes of languages. Languages like c, c++, c#, objective c, Java and now swift are all in a class of languages that allow for a lot of power at the cost of the programmer really having to know what they are doing.

Languages like JavaScript, Ruby and PHP (and HTML, but that isn’t a programming language) are in another class of languages that have much less power but are much easier for a programmer to learn and be productive with. Many programmers are sort of stuck in this class of languages, and the concepts that must be learned to jump up a class are sometimes tough to understand. (Understanding “pointers” is a stereotypical concept that many people struggle with for a long time and sometimes never truly understand.)

Native mobile development is done in the first class of languages. Alternatives exist to write iOS applications in that second class of languages, but what you give up essentially makes you a non-competitor.

(The first class of languages is called compiled languages while the second class is scripting languages, but some nuances would allow for someone overly pedantic to argue that.)

I tend to believe that the overwhelming majority of people are capable of just about anything, including learning how to write really good code in a compiled language. The hurdles to get there are certainly significant, but obtainable. There are currently easy ways out along the path to being a great objective c programmer that’ll land someone a great salary, so the incentive isn’t really there right now; it’s easier to go somewhere and be a lot of different types of programmer. Being a great programmer is never going to become easier, but I definitely believe we will see more great programmers as this industry continues to grow.

 

Published December 11, 2014

Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *