Mobile application development is hot. According to Gartner, demand for mobile apps will grow five times faster than companies can deliver them. The salaries for mobile app developers reflect that, averaging around $102,000 and going up to $135,000. For developers who want to get in on the mobile development action, make sure you have the skills that will make employers notice you.
Know how to develop for Android.
Apple's iOS products get lots of great press, and there are plenty of jobs for iOS developers, but there's even more demand for Android developers. While the two platforms split the U.S. market almost evenly, Android has a far larger share of the global market. So make sure your resume has the skills you need for Android development, including the Android SDK, Android NDK, Java, and C++. If you can develop on multiple platforms, that gives you additional options, so learn Objective-C or Swift for iOS devices.
Build your own app.
There's no better way to demonstrate your capability to build a mobile app than demonstrating a mobile app that you built. You can point to an app that you built at your previous employer, but because company projects are team efforts, it's difficult to really claim credit. Instead, create your own sample app in your free time. The development tools are available for free on multiple platforms. If you take the app live, you'll learn the necessary skills for packaging it and publishing it in an app store. Taking your own idea from concept through deployment shows initiative and drive that impress potential employers beyond the technical skills you develop through the process.
Have skills that go beyond mobile.
Knowing the SDK for a specific platform is only part of knowing how to create a mobile app. Like any software project, you need to understand the business requirements, so business analysis skills and communication skills are still valuable. Databases were invented long before the smartphone, but mobile apps still store data in them, so understanding SQL and database technology is necessary. Many tools generate XML automatically these days, but it's still helpful to understand the syntax.
Some apps on the iPhone free up our time; other apps, like great games, eat up our spare time. Either way, there are great apps that make our lives better. Here's what you need to be a great iOS application developer.
1. Learn the right programming language
When it comes to developing apps for the iPhone, you have two choices: Objective-C and Swift. The newer language is Swift, and you may think that learning Swift positions you better for the future. But if you learn Objective-C, you can leverage the past better. There's more example code, more online help, more legacy code you can leverage if you start with Objective-C.
2. Learn the specifics of the iOS platform
Knowing the right programming language is only a start. You need to know the ins and outs of developing for the specific platform. To develop efficiently, you need to become comfortable with the IDE and the Simulator for testing your code.
3. Think about how your app will endure
Too many would-be app developers think having a great idea for an app is enough. Don't forget that smartphones are, in reality, portable, powerful computers. The software engineering methods that make code maintainable and supportable on bigger computers are still needed if your app is going to be anything more than a throwaway. Don't just learn how to write code that compiles; learn how to write a well-designed program that will be able to easily grow and adapt, as iOS and the Internet change.
4. Build a throwaway app
Programmers traditionally write a "Hello, world" application whenever they learn a new programming language. You may not want to start quite that small, but you probably shouldn't try to write your million-dollar idea as your first application, either. You'll learn a lot by writing several small, experimental projects first, and it'll be much less frustrating to solve technical challenges when you don't have the pressure of getting your big idea to work.
5. Learn from other developers
Despite the image of great developers cranking out code alone in the wee, dark hours, there's actually a great, supportive community of developers out there. You'll find questions answered in forums like those on Stackoverflow, and you can use and build on code from sources like Github. Don't overlook the possibility of learning from other developers at work, either. Lots of companies in all industries do mobile app development. Work for one of them, and you can get training on the job and learn from more experienced colleagues.