Choosing the Right Tech Stack for Your Digital Product
Choosing the right tech stack is a crucial decision
So you’re planning to launch an app. You’ve built a team, gained the funding and have the vision. Now it’s time to decide which tech stack will power it. Making the right decision early on will influence the entire future of your digital product including:
How effective it will be
How it will stand against competitors
How well the product will scale
It’s not just a question you can put off and assume you only need the devs to worry about. Choosing the right tech stack is crucial to the direction and performance of your app. While the answer often boils down to what you actually need the app to do, understanding tech stacks can help you and your team make better decisions in the early days of your app.
What is a tech stack?
A tech stack is everything that goes into an app or site in order to power its performance. For a basic example of this, consider any website. The ‘stack’ is composed of layers that each gives the browser or user interface the information needed to display it properly. A site needs a server, the code itself and a browser to interpret those things.
Still confusing? We know. Let’s use a real example.
LAMP is one of the most common tech stacks used in Linux-hosted websites such as WordPress. It comprises the Linux operating system, Apache the HTTP server, MySQL for databases and finally, PHP as a coding language. LAMP features everything an online site or app needs to store information, interpret code and display it to a user.
This helps illustrate the point of choosing the right tech stack. If you were building an app that was designed to work offline, such as a simple recipe book, guide etc, you wouldn’t require any server elements and therefore a server-based stack wouldn’t be needed.
Enter, The Discovery Workshop
A workshop is something we do at KOMODO to help understand the real requirements of a project. Far from just taking the technical considerations into account, a workshop instead focuses on who the users of the app/site will be, how they’ll interact and what they’ll need to accomplish.
From here, our developers can begin to build out requirements based on real user needs. They’ll ask questions like:
What is the app trying to achieve?
How does it make life easier for the user?
What is the user’s problem and how can we address it?
These questions help inform the tech stack needed. If, for example, a client wants a mobile application, there are immediately certain technologies that can and can’t be used - influencing the chosen stack.
Taking this further, the app would be interrogated: what is the goal of the app? What is it going to do? If the app is a glorified brochure that simply presents information (such as a recipe book), it only needs minimal computation. Rather than overload the app and slow it down by adding in unnecessary features, we can instead use a tech stack that gets the job done efficiently.
You, the client, will also influence the choice of stack. The resources you have access to will dictate the choice. If your internal team knows .NET, we might suggest a Xamarin based stack. If you don’t have a team at all, something well-supported like React Native is a better choice as it is used widely and if you choose to move the project on, lots of new teams can pick it up.
So it’s all about intended use, really. If we return to a recipe book example, you only need a basic stack. But now you mention you want to upload recipes, which adds a technical consideration.
There are server applications now required that weren’t before. But are you a technical-minded client or do you just want something simple?
The level of involvement you want to have will also help guide the choice of tech stack.
Finding the right tech stack for the job
So how do you choose which tech stack is going to be right? Largely, it’s our job to pick it based on your project. We’ll assess:
What the project actually is: is it a site, app, software or something else?
Who the target users are: what are their needs and behaviours?
What is the scale of the project?: does it need to be able to scale and grow?
Who is the client: do you have an in-house team, are you tech-savvy?
Assuming everything is equal and a project can be done in any tool, the tech stack comes down to you as a client - how your team works, what involvement you will have etc. If the project has a technological demand such as server functionality, certain features etc, the right tech stack is defined by those requirements.
Sign up to our newsletter
Be the first to hear about our events, industry insights and what’s going on at Komodo. We promise we’ll respect your inbox and only send you stuff we’d actually read ourselves.