Ever wonder what types of technology your favorite apps run on? Here are their tech stacks.
When developing a new product or solution, how do you determine the right tech stack to use?
Tech stacks differ based on what is being developed. A technology stack for web development will look different than one for mobile applications, and an enterprise organization runs on a much different stack than a startup stack. Other factors include how quickly you need to launch an MVP and if you have adequate staffing resources or will need to hire a dedicated team.
Let?s take a further look at what goes into tech stacks for startups and what some of the most famous tech companies are currently using.
What goes into a tech stack
For every application, development takes place on both the front-end, which is also called the ?client? side, and the back-end, which is known as the ?server? side. The front-end is what you see when you log on to a website or open an application. The back-end contains the framework, programming languages, databases, and servers that make the application actually work.
Two of the most commonly used stacks are MEAN (MongoDB, Express.js, AngularJS, and Node.js) and LAMP (Linux, Apache, MySQL, and PHP.) MEAN stack development is popular because applications can be written in one language for both server and client-side projects. LAMP stack development is used primarily for developing dynamic websites and web applications.
The overall factor that determines the technologies included in a tech stack is the product itself and what it is designed to do. Developer skill-level and preferences also play a role, as does the size and culture of the startup.
Popular tech stacks
The following companies were all once startups, so their tech stacks were a lot different when they started out that what they?ve evolved to today. Here are the major technologies they?re using for application and data processes.
Airbnb Tech Stack
- Framework: Rails
- Databases: MySQL, Amazon RDS, Hadoop
- Server: NGINX
Facebook Tech Stack
- Programming Languages: PHP, GraphQL, Hack
- Framework: Tornado
- Databases: Cassandra, RocksDB, Beringei, Memcached
- Server: custom/proprietary
Pinterest Tech Stack
- Programming Languages: Python, Java, Go
- Databases: MySQL, Hadoop, HBase, Memcached, Redis
- Server: NGINX
Uber Tech Stack
- Programming Languages: Python, Java, Go, Objective-C
- Framework: Node.js, Apache Thrift
- Databases: MySQL. PostgreSQL, MongoDB, Redis
- Server: NGINX
There are several other technologies that are included in each individual tech stack, such as libraries, hosting environments, utilities and more. The type of product being developed will determine what tools are included.
For example, Atlassian?s SaaS technology stack includes Amazon cloud storage and hosting, Kubernetes container tools and Jira issue tracking solutions. A marketing technology stack like Hootsuite relies heavily on utilities such as Optimizely, Google Analytics and business tools such as Marketo. No two tech stacks look exactly the same for any organization.
How do I choose the right stack for my startup?
Choosing the right tech stack for your startup should be based upon two things: the product itself and the team developing it. You should research similar types of products to see how they were built and then consult with your team on which programming languages and frameworks they work best with.
The point is that a great product or solution starts with a good foundation. Choosing the right tech stack to start with is key to the overall success of your product and ultimately, your organization.
If you?re looking for the right technology stack for web applications or mobile development, we can help!