×

What is ‘stack’ and why should you care?

Stack is one of those words you’d probably never use in a conversation – “How’s your stack treating you these days, John?” – but once you start noticing, it’s everywhere. Examples range from companies looking for “full stack developers” to startups sharing their “marketing stacks” online. The concept has even moved beyond technology. On Reddit, for instance, the biohacking “StackAdvice” community is looking for the ultimate cocktail of nutrients and supplements to optimize their brains.

So what is a stack, exactly?

Although the word has a few different meanings – in programming, the stack refers to a “last in, first out” data structure – you can think of it as a collection of different pieces of software. These parts work together and improve upon each other to accomplish a task. It’s a system, sort of. Only within a stack, every piece can also fly solo. They don’t need each other necessarily but work better when they’re together. Like cheese and tomato. Or the Beatles.

So what are some of the pieces that make up these stacks? Let’s say we’re exploring the stack used to build a mobile app. In the bottom of the stack, you’ll find the building blocks for its infrastructure – its programming language or framework. On top of that, the services used to host it online or to connect it to other applications. And on top of that, you’ll find the business tools that employees need to talk to each other and their customers – services like Slack, the workplace messaging tool, or email newsletter service MailChimp.

When companies mention their need for “full stack developers,” it means they want people who are skilled all-round. Developers who don’t just master the code used for the website’s infrastructure, but are also familiar with tools needed to design. They understand the company and its products, as well as their customers’ needs. Basically, the full stack developer is a tech savvy jack-of-all-trades.

The full stackness of Uber

Companies can also be full stack or follow a full stack approach. Instead of developing software that needs to be sold or licensed to existing companies, they do everything themselves.

That means building a complete, end-to-end product or service, explains Chris Dixon, a  serial entrepreneur and general partner at the venture capital firm Andreessen Horowitz: “The challenge with the full stack approach is you need to get good at many different things: software, hardware, design, consumer marketing, supply chain management, sales, partnerships, regulation, etc. The good news is that if you can pull this off, it is very hard for competitors to replicate so many interlocking pieces.”

Uber offers a great example. Before it was founded, other startups had already attempted to improve existing taxi services with software. Unfortunately for them, these established companies weren’t all that interested in changing their operations. The proposed software was either too complicated, too costly, or too time-consuming to implement. A few years later, Uber (as well as Lyft) swooped in and build their taxi services from the ground up, not just by developing software, but by also providing the cars and drivers. Full stack companies, exercising full control.

Offering full stack services

Whereas Uber follows a full stack approach, other companies offer full stack services. Google’s Cloud Platform, for instance, does much more than just storing companies’ data: it comes with a set of different tools to analyze and build upon that data. These products range from  BigQuery, a web service that can rapidly process massive data sets, to App Engine, a tool that lets developers build online applications. Through offering a set of integrated tools, Google can position itself as a one stop-developing-shop for large enterprises.

Why companies should share

The size of a software stack depends on the company. AirBnB’s technology stack, for example, contains 55 different tools, apps, and services. Spotify uses 31. Google’s stack is relatively small at 18 pieces.

We know this because these companies, like many others, have decided to disclose their stacks. This may seem counterintuitive (why share your recipe for success so others can copy it) but actually, it’s a smart recruiting strategy. By sharing their stacks on websites like StackShare.io, developers – who are notoriously high in demand – can easily assess if they possess the right skills to work at these companies.  

Why you should care

Your business might not be the next Uber or Netflix. Maybe you know nothing about technology; that’s OK too. Because here’s the good news: everyone can benefit from creating a stack. Whether you work for a boss, run a small business, or are a self-employed creative: every single person uses software in one way or the other. Do you have your own website? It’s hosted using an online service. Does your company do A/B testing? It needs software to do so. Do you schedule your tweets or Instagram posts? Thank your automating service.

Using the right software matters; specifically to those running their own companies. Exact, which is already supporting over 375,000 entrepreneurs worldwide, knows and understands this. Offering a full stack of services aimed at specific business needs, Exact provides entrepreneurs with an overview of today and insights into the opportunities of tomorrow.