Over the last 11 years, I’ve worked as both an app developer building innovative apps for startups and large organisations working on game-changing technologies and I’ve also worked for a number of app development companies as a consultant advising startup (and corporate) entrepreneurs alike. This guide is a collection of my thoughts and things I’ve learnt from working on (building, designing, advising on etc) countless mobile apps and web-applications. This guide give you the information you need to understand the difference between hiring an inhouse app developer vs hiring an app development company.
=== Guide Articles ===
Part 1 – Guide Introduction
Part 2 – The App Development Team #1 (you are here)
Part 3 – The App Development Team #2
Part 4 – Hiring an Inhouse App Developer #1
Part 5 – Hiring an Inhouse App Developer #2
Part 2 – The App Development Team #1
I’ve seen many entrepreneurs go out and hire an inhouse app-developer with the goal of building an MVP (minimal viable product) launching it and slowly building a team as the company grows. However most entrepreneurs I’ve had conversations know very little about interviewing developers, how applications are developed or understanding of the career (or business) objectives of the folks who work as mobile or web app developers. The result? Quite frequently; losses in both time (to market) and money invested in wages, very often above $10,000.
Mobile app development and web application is an area where mistakes can cost tens of thousands of dollars each – if you’re building an app it pays to read the right articles and speak to app development consultants like myself to avoid these issues.
So you can avoid some pain (or at least anticipate it and plan for it) by understanding what issues you will faces by hiring an inhouse developer (or an app development company). You will mostly likely, bring your tech team inhouse as your startup matures (as many other startups do). However for the early startup startup building the first version (or MVP) of their product I suggest going with an agency – but there are exceptions to this rule.
Let’s start by looking at the team will be involved in building your application because this is one source of confusion. Many entrepreneurs new to app development don’t realize that a developer is only one of around 4 other disciplines that will be involved in building your application.
Here’s a list and description of all 5 disciplines that will be required to develop and launch your app (3 on this article and 2 on the next article in this guide). Many people think you only need a “programmer”. Nope, there’s a full team of disciplines that go into building your app:
Often referred to as a “developer”. They model your applications database (data modeling), build the logic and code behind your application. They are the digital equivalent of a builder on a construction site building an apartment complex. Using the apartment complex metaphor, a backend-developer is not an architect, they are not interior designers they don’t even lay down the carpet, plaster or benchtops. Their job is to interpret the blue-prints from the architect and lay down the concrete, steel girders and major structural components.
If the back-end developer isn’t experienced enough for the job (maybe the technology requirements for the job as too challenging for the dev), the application will not be poorly built and will likely need to be completely overhauled (the same way a building would be). Overhauling an app is a very expensive task that undoes the work of visual designer (the interior designer) and the front-end developer (the plasterer, electrician and plumber). This is another of the feaered $10,000+ mistakes that you just have to keep your eye out for.
Going with the apartment complex metaphor, the visual designer is a specialist comparable to the interior designer. They determines the colors, the branding and the style guide of you application. However they don’t decide where the chairs will be placed, how many chairs there will be or where other functional components will be placed. This is the job of the UX/UI designer (the architect) that researches the customers needs and requirements to determine what the most efficient and usable layout should be.
This means visual designers don’t decide where signup forms, navigation components other features of your application will be displayed or even which fields are included in the form (as this is the job of the architect). Visual designers are limited to the development of style guide, brand guidelines, iconography, typography, colors and themes.
UX / UI designer (User Experience / User Interface)
People are often misled by the term; “design” and they think “design” means “colors” or “themes”. However there is “visual design” (as mentioned above) and then there is “functional design” as in how something is architected; how the blue-prints are designed. The UX designer most closely resembled what the general public understands as the role of an “architect” in a building complex and is arguably the most “important” role in the development of your mobile app or web application.
The UX designer’s role is to understand your app users intimately; to understand the different types of user personas / user groups, their differing needs and then “design” the blue-prints for your application to be built. UX designers determine the navigational flow of your app, the number of fields in a form, the placement of that form in your app, what screens need to be built in your app and more important functional details.
However if the UX designer gets it wrong and fails to cater for a user persona or a sub-group of app users, over complicates the application then they (like the backend developer) could undo all the hard work of all those following their blueprints. Meaning: if a UX designer “changes their mind”, all the the other team members roles will need to upheave their work and redo it based on the new design.
Hence why the UX designer is considered by some to be the most important role when building your app.
In the next article of this guide we look at the remaining two roles / people required to build your application: the Front-End Developer, the Project Manager and we make a polite nod to the Sys-Admin / Infrastructure guy that you will no doubt see at some point, but generally not in the early stages of building and launching your application.