There is a large and growing gap in the tech sector. It is a gap of knowledge. Developing apps has become a matter of translating enormously complex operations and tasks into the simplest possible consumer interface. This masks all of what lies behind the app. Many startups originate with some kind of fundamental technical idea that gives users what they want, but the real skill is in delivering that value in a convenient package.

Apps that seem simple rely on many different concepts and systems for efficient use. Even the most basic apps require investment in server space and capacity so that many people can use it at once. In modern development this is often done using the cloud, which refers to large datacenters that can store almost any amount of information. That might be things like customer accounts, transaction records, saved games and progress, or anything else. The cloud presents additional complexities when it comes to security, however, because the developer essentially puts the cloud service provider in charge of protecting the data. This might not be an issue for a free game app, but for something that records medical information, there might be legal consequences for allowing the cloud service provider to oversee the data. Deciding whether or not to use cloud storage for the app is just one way of resolving the problem of holding onto important data, but it can have big effects on the app company’s costs. Despite all this, most customers will not even know which of their apps use a cloud service. While the chosen technical solution is indeed necessary to satisfy the user’s expectations, this complexity is hidden. There might be an explanation listed in a help menu, or nothing at all. It is a choice that significantly alters how the app works, but in a way that is invisible to the user.

Some elements of apps are a lot more obvious. For example, as the market for mobile devices grows, one big challenge for developers is ensuring that their app works well on as many devices as possible. The biggest split in the market is between phones and tablets that use Apple’s iOS operating system and those that use the open-source Android operating system popularized by Google. An app developed to fit one OS usually needs a total rewrite to work in the other one, and some small development teams might not have the resources to do it at all. However, it goes beyond operating systems. Each phone, tablet, and computer has slightly different tweaks to its software and little differences that change how they run. They also have stronger or weaker hardware, screens of different sizes, different button configurations, and hundreds of other tiny differences that can make an app work a little differently on each one. Good development means finding ways to adapt the app to as many of these devices as is possible. Sometimes that can be done automatically, such as by allowing the app to resize itself based on the size of the screen. Others are more complex and require specific fixes, like adding code to make the app fit with the curved screen on new-generation Samsung phones.

When a worker at a startup is trying to resolve a problem like one of the ones already mentioned, it is important that the end user doesn’t have to spend much effort or attention on getting the application to work correctly. Most people who will use an app will not have nearly as much technical knowledge as the people who created it, so there is no need to burden them with unnecessary detail. On the other hand, it is a bad idea to conceal important things from users, especially if it is related to security. This means that part of development comes down to striking a balance between how much to show to users and how to design the application so that the right information is available in the right place at the right time. A Technical Co-founder has the role of understanding how these issues develop and deciding how to solve them without needing to involve too much input from the user. The application marketplace is extremely competitive. Every startup with a great idea has rivals with similar apps that do similar tasks, so all it takes is one big mistake to send customers over to a competitor.

When most people think about app developers, they tend to consider two cases. The first is when the app appears very simple, which implies that the developers just had an idea and put it together without much effort. The second case is when users see into the complicated background of the app and realize how much work went into it. If a Technical Co-founder did their job correctly, then all of the technological know-how that drives the app is invisible. The only thing that the user should experience is the value and benefit of the app. It is just like driving a car. Most people have an idea of how cars work, but few understand the details of motors and engines. However, it is not necessary to know anything more than basic driving skills to get a car to work.


This article was last updated at: Thursday, November 9, 2017 8:58 AM