This story originally appeared on Feats and was produced and distributed in partnership with Stacker Studio.
How many people does it take to build an app?
It takes a village to develop an app.
Even basic applications have multiple integrated functions, from accepting input from the user to displaying information on the screen, that require different skill sets to develop and put together.
Even if just one person writes most of the code to run an app, that work is based on others' efforts in designing user-friendly interfaces, mobile device platforms for it to run on, and creating behind-the-scenes systems to allow developers and others to learn from how people use the app.
The professionals accomplishing these tasks share the goal of a useful, usable application—but each has different ways to contribute.
Feats compiled a list of the roles behind app development from a variety of expert sources, exploring what their different processes are and how they contribute to an app's success. It's not an exhaustive list–some apps may have smaller or larger teams depending on their complexity and require supporting staff like lawyers and accountants. Read on to understand the core professionals who make up a typical app development team.
Mobile developer
Mobile developers are responsible for building, testing, and maintaining new and existing applications. These developers work to ensure that there are versions available for all phone users, whether in the Google Play store for Android users or Apple's App Store for iOS users.
They also build or integrate with what are called "application program interfaces," or APIs, to help apps work with websites and with other apps to provide whatever service is required. For instance, a ride-sharing app must communicate with a database of available drivers, an online map, and a credit-card payment system. That way, users have a seamless experience when accomplishing whatever task they are using the app for. They also need to test the app to identify potential problems or malfunctions and ensure that the app is updated as needed.
Backend developer
Much of the function of a mobile app doesn't actually happen on the mobile device, which doesn't have much computing power or capacity to store and process large amounts of data. Only very few apps do everything they need on the phone itself, and they don't do much.
Most of the work happens on what is called the backend, usually hosted in a highly interconnected data center or 'cloud'. A backend developer focuses on the systems the mobile app connects to—the servers that contain, say, the list of active drivers and the map. The backend developer also handles data verification, security, and storage: anything that doesn't happen on the phone itself.
Backend developers' behind-the-scenes work is critical to ensure the app actually functions as users expect.
Developer operations specialist
A developer operations specialist helps programmers collaborate with specialists on other technologies, like data communications or specific pieces of hardware the app will use. They often help create and maintain a smooth workflow across all members of the team, which makes app development faster and more reliable.
These people are critical thinkers who support the management and implementation of systems and tools that improve the workload and efficiency of developers. Many developer operations specialists are experienced software engineers who build on their own knowledge to improve the process for others.
User experience specialist
User experience, or UX, specialists research and survey users and their behavior to more closely adapt the app's services to people's needs. Their focus is on improving how people engage with the app, how easy they find it to use, and how effective it is at accomplishing what people expect of it.
Much of their work revolves around testing to ensure an app will respond in meaningful ways when people start to use it. These tests are performed by sending out different versions of an app and then monitoring how people use it, adjusting and streamlining the functions over time. User experience specialists are primarily concerned with how the app feels to a user and seek a consistent interface. They also work with UI specialists who develop user interfaces and designers to make apps more usable.
Designer
The designer usually works with the user experience specialist to gather requirements from data analysts, business partners, and end users to determine what app functions will be most effective, most intuitive, and most likely to connect with users.
Designers work closely with developers to ensure their vision is realized as accurately as possible, both in terms of visual appearance and functionality. Beyond the appearance of the app on a screen, designers map out how the service the app is meant to provide fits together with database design, programming, and other tasks. Designers with more technical experience also determine the best programming solution to meet the app's business requirements.
Quality assurance specialist
Apps, like any software, are prone to bugs, malfunctions, and other problems like data breaches. Quality assurance specialists focus on minimizing these and other risks, which can save the company behind an app money, time, and face.
They work hand-in-hand with developers to seek out, identify, and fix any bugs or errors. They run continuous tests to ensure that all aspects of it perform properly and securely. This includes both manual testing by using the app on various devices, as well as automated tests that use software to simulate user behavior.
Project or product manager
Project management is essential to successful app development. In companies where the app is the product, the overall project manager is often a product manager, who may have one or more project managers working with them.
Early on, a project manager helps a team identify goals and focus efforts on specific tasks. Project managers also put together budgets of time and money that will allow for a smooth and efficient development process.
As an app is being developed, these managers ensure team members have the time, equipment, or training they need to meet the schedules and the overall work plan. And they adapt that plan to accommodate unforeseen problems or opportunities.
Project managers also have the responsibility of explaining why and how they planned and budgeted to corporate executives. They analyze and report on each stage of an app's design, development, testing, and deployment, to improve future versions of the app and the process for any future apps the company might develop.