[DZone Research] What Developers Need to Know about Web and Mobile Apps
The experts have spoken. And their advice is to: stay hungry, there's always more to learn in the fast-changing application development landscape.
Join the DZone community and get the full member experience.Join For Free
To gather insights on the current and future state of web and mobile development we talked to 19 IT executives and we asked, "What skills do developers need to develop effective applications?" Here's what they told us:
- As Bill Gates says, "innovate or die." If you want to exist, you have to always explore new technologies to improve. Keep learning. Be open to the exploration of new software technologies. Need to change with the times. Always reading and educating and learning new design patterns that will accelerate productivity.
- There are a lot of materials online. Information is democratized. Look at what Facebook, Google, and Airbnb are using to build better apps. There is a wide range of solutions. See if you can mimic them.
- Specialize yet also broaden your horizons. PHP is an old language but is still a massive language. Stay up to date with constructs. Keep an eye on Go and React. Know where your blind spots are. Be open to what’s new.
- Be open to the change coming with mobile. Don’t get stuck in your ways. Keep your eyes open for new things like low-code and no-code to get ahead and provide more value to the organization. Shift your perspective to make more bold innovations.
- In addition to coding the application, developers need to be able to create their own tests. That means learning new technologies such as BDD, Appium, Selenium, Espresso, and XCUITest.
- Make sure end-users can play with it and give you feedback – e.g. United app. Figure out the user story and satisfy it. Don’t screen scrape the API — it’s doesn’t provide a good UX.
- It’s all about usability from the client perspective. Think about what it’s going to look like.
- Try to identify what will be the most common platform — React, Angular or PWA. Stay abreast of all the new tools, frameworks, and toolsets and do research before choosing the platform you will use for development. Identify the tool that most developers will use eventually. When you use a tool more developers are using, it improves more quickly. Move to WPA and serverless, they are getting faster and help improve productivity and commonality in development. It’s changing and getting combined and unified. You’ll be able to develop faster and recruit better talent as a manager if you are using the latest frameworks and toolsets.
- Developing effective web/mobile apps lacks hard and fast rules or guides. The skills developers need to possess are still rapidly evolving and aren’t expected to come to a standstill anytime soon. However, some basic principles are worth mentioning, such as choosing tools, frameworks, and languages, as well as infrastructures, that are mature beyond the early excitement phase, and are already enjoying broad and active community support. If a developer has a question or runs into a problem, there is a greater chance they'll find an answer or solution when there’s a sizeable community available to assist.
- Developers should not have to change behavior to secure code. Developers get paid for features not encryption. Have a “rail guard” security framework. A lot is open source and free. Keep writing code and have automated processes to catch problems. Think about giving back to the community.
- Pick the right tools. Understand your market. Are you developing for one particular device or doing cross-platform? Pick tools correctly. Learn how to develop for platform(s). Cross-platform is very challenging.
- The rate of advancement and releases is a lot faster than ever was. Rapid application release. Developers need DevOps skills.
- Beyond keeping up with core technologies, have experience with security testing and writing secure code — this is going to become a differentiator in the job market. Companies are becoming aware of the criticality of writing secure software, and developers who can demonstrate ability with that should find themselves at an advantage.
- User experience is more important than ever. Understanding the concepts of micro-interactions and microservices has become as important to learn as object-oriented programming once became.
Here’s who we spoke to:
- Malcolm Ross, Vice President, Product, Appian
- Gil Sever, Co-founder and CEO, Applitools
- Adam Fingerman, Founder and Chief Experience Officer, ArcTouch
- Jon Janego, Senior Product Manager, Static Analysis, CA Veracode
- Doron Sherman, V.P. Evangelism, Cloudinary
- Himanshu Dwivedi, Founder and CEO, Doug Dooley, COO, Data Theorem
- Rimantas Benetis, Technology Director, Devbridge Group
- OJ Ngo, CTO and Co-founder, DH2i
- Nate Frechette, CTO and Co-founder, Will Bernholz, V.P. Marketing, Dropsource
- Anders Wallgren, CTO, Electric Cloud
- Lucas Vogel, Principal Consultant, Endpoint Systems
- Sriram Krishnan, Head of Product, Headspin
- Joshua Strebel, CEO and Co-founder, Pagely
- Brad Hart, Vice President of Product Management, Perfecto
- Robert Warmack, Director, Sencha
- Jeffrey Martin, Director of Product Operations, SmartBear
- Eric Sheridan, Chief Scientist, WhiteHat Security
Opinions expressed by DZone contributors are their own.