With the overwhelming success of everything mobile, it’s no wonder that every developer wants to get into this space. Building mobile apps puts developers on the cutting edge, the skills are sought after, and the profession is highly lucrative.
But not everyone who jumps into mobile is guaranteed success. A good mobile developer brings a unique set of skills (and mindset) that positions them to capitalize on this market.
We believe that there are five key characteristics that define good mobile developers:
1. Get very comfortable with agile
Mobile is a new market, and the art of successful mobile app development is still evolving. It’s hard for most developers to know what customers actually want and what apps will become successful.
Software engineering is already ripe to tackle these issues. Agile engineering provides just the right tools to handle ambiguous customer expectations and is built on the process of constant iteration. Successful apps in the mobile world start out with a basic premise of addressing customer needs; the very next goal is to get a minimal viable product (MVP) into the customer’s hands for feedback.
(Related: Take an adaptive approach to cross-platform development)
The fact that mobile apps provide focused functionality makes this an even better fit: You can build a quick MVP in weeks or a few months. And once you have customer feedback, you can continuously improve and add features to meet your customers’ expectations. So get cracking on your agile and scrums skills; you have no chance of success in mobile without it.
2. Start with customer experience in mind
Real estate is all about location, location, location. Comparatively, mobile app success is all about experience, experience, experience. User experience and engagement are key predictors of mobile app success.
If you fail to grab the user’s attention on the first screen, your mobile strategy is doomed. Everything, including screen layout, performance, and the context and quality of the data presented, matters. So mobile apps need to be thought through and created from the outside in. (On a side note, this holds true for most applications, though this is evolving for many of today’s application.)
While an MVP is a good way to refine user experience, it’s also imperative to engage with mobile design teams early in the development process.
3. Be pragmatic about app testing
The complexities of mobile are such that you cannot completely test every aspect of a mobile app. There are a number of external and internal factors to be considered, including:
• Multiple devices and OS versions
• Multiple networks
• Multiple cloud service APIs
The most pragmatic (cost and time effective) approach is to test key usage patterns (key devices, OS, carriers etc.) and focus on instrumenting the app to collect, analyze and iterate using real-world data.
4. Instrument the app to collect and analyze real-world data
As previously mentioned, instrumentation of the mobile app is critical. This is the only way you can get key metrics about the app, such as:
• Usage data (OSes, devices, regions, carriers)
• Performance/experience data (How is it working? Does it crash? How often? What user flows leads to issues?)
• Analytics (What functions does the customer use the most? What functions get missed and why?)
Good developers need to identify the best mobile instrumentation solutions out there and constantly monitor this data. More importantly, developers need to learn to act upon these insights. So allocate cycles in your day-to-day activities to analyze the data and make change to ensure app success.
5. Get a thick skin: Everyone has visibility of your app success or failure
Mobile makes it very easy to measure every aspect of apps: downloads, usage, reviews, ratings, etc. And these metrics are publicly available for all to see—you, your manager, and your peers.
Everyone can see the success (or lack thereof) of your apps and can compare your metrics to the competition. This level of visibility is new to most developers. So developers must learn to take the feedback—good and bad—in stride. And that is a unique skillset that most developers should learn.
Mobile is indeed a hot space and will continue to provide many developers with endless opportunity. By focusing on these five skills, mobile developers will be better suited for success in this fast-growing market.