To gather insights for DZone's Native Mobile App Development Research Guide, scheduled for release in February, 2016, we spoke to 18 executives who are developing mobile applications in their own company or helping clients do so.
Here's who we spoke to:
Dan Bricklin, CTO, Alpha Software | Adam Fingerman, Co-Founder and Chief Experience Officer, ArcTouch | Nishant Patel, CTO and Kurt Collins, Director of Technology Evangelism, Built.io | Tyson Whitten, API Management Product Marketing, CA Technologies | Rajiv Taori, VP Product Management Mobile Platforms Group, Citrix | Zach Slayton, VP Digital Technology Solutions, Collaborative Consulting | Brad Bush, COO, Dialexa | Craig Lurey, CTO and Co-Founder, Keeper Security | Jessica Rusin, Senior Director of Development, MobileDay | Steven Jovanelly, Senior Director, Innovation Lab, PGi | Brandon Satrom, GM Developer Platforms and Tools, Progress Software | Eddie de Guia, Co-Founder and Managing Director, PubNative | Hans Ashlock, Technical Marketing Manager, Qualisystems | Mark Kirstein, Senior Director of Enterprise Software, RhoMobile | Justin Bougher, Vice President of Product, SiteSpect | Carla Borsoi, Software Product Manager and Marketing Lead, 6SensorLabs | Lubos Parobek, VP of Products, Sauce Labs
We asked these executives, "What are the obstacles to the success of native mobile app development?"
Here's what they said:
- Staying focused on making your platform look like the mobile platform.
- Acquisition of talent. We're dealing with very complicated design on both the frontend and the backend. Developers need to understand the long-term implications of stack decisions. They must be very consumer oriented and build apps that are easy to use. Know what we can deploy from the software side. Figure out how can we reduce Bluetooth connection drops. On the backend, how do we get better signals to create value from the data? The app is the front-end of a much bigger piece of pie.
- The diversity of technical requirements to know all of the different platforms. Companies initially went to the mobile web space because that’s what they had the talent to do. Now, with products like Cordova, they can go to apps. However, they must understand development, user experience, data and business strategy. Since they don't, enterprises are now outsourcing to companies that can help them in all of these areas.
- Clients want to do too much. Too much information and too much data because they’re thinking inside out versus outside in. We’re all about driving productivity. Apple is all about making things simple - that’s how they add value. Limit the scope of the work and then grow it over time. Enterprises need to understand how to manage mobility. We have retailers with 30 to 130 apps; however, they don’t know who’s using the apps or what value they’re providing. Think about what problem you’re trying to solve or how you’re trying to improve the customer experience (CX) before collecting all this data and creating technical debt.
- May not have the skillsets of level of expertise in house to do what’s needed. Developers must understand the platform and its different nuances to provide a good experience.
- Nowadays there aren’t so many hurdles considering there are plenty of platforms, providers and services to help you develop, market and monetize your app.
- Not being open to, or aware of, all of the options available to solving their business problems.
- Test and QA are the largest barriers; as a company that has been involved in mobile application testing for many years, we have seen that as the sophistication and complexity of mobile devices and applications increases, the QA requirements increase exponentially.
- Conversion - getting people to use what you build. It takes a lot of iteration and testing. Six million apps are available for each platform. How will yours stand out? Have a specific use case and a narrow focus.
- Clients have great ideas and big ambitions but they need to be refined to what they want to accomplish. We conduct a two-day intensive strategy session to identify the minimum viable version of the app. We find this consistently leads to better engagement and results.
- Two different code bases, three if you use Windows. UX can be hard to design for the small screen, ipad, tablets, iphone 4S to iPad Pro - a lot of platforms and sizes.
- Budgetary and timeline issues. Native requires different skills. All clients want a great UX but they may not be able to afford it.
- Iteration without flexibility. A/B testing needs to be ongoing. This can cause organizational problems. Testing, security and iteration must all happen continually. It’s DevOps + continuous delivery + marketers and how to tie the changes you’re making to the app to the bottom line. You need to always be running tests versus control.
- More around data - where it resides, especially in business scenarios. Layering in mobile data. Where’s the data from? What format should the data be in?
- How to organize around different platforms. It's hard for smaller companies to have an iOS and Android team. What testing framework do you invest in - Appian provides good cross-platform testing. CI/CD help with the pace of change. iOS 9 releases updates more quickly and you must match their cadence if you’re going to keep up and be relevant. That’s a challenge if you haven’t adopted DevOps and continuous delivery principles.
- Two primary platforms, plus one growing, requires three teams. Clients want to build more mobile apps but it takes three teams, this is why many people are going with hybrid.
- By far the biggest obstacle is the supply of talent relative to the demand. Second is tooling. We have emulators but technology frameworks for mobile apps are not nearly as mature as those for web apps.
What do you see as the biggest obstacles to native mobile application development?