Labor Day starts with $70+ in savings on Coursera Plus. Save 40% for 3 months.
A tech stack refers to all of the technologies that a development project needs to function. Explore the components of a tech stack and tips on how to choose the best tech stack for your project.
![[Feature Image] An aspiring developer researches tech stack uses and components as part of their coursework.](https://d3njjcbhbojbot.cloudfront.net/api/utilities/v1/imageproxy/https://images.ctfassets.net/wp1lcwdav1p1/4OHqP6WzKefTA8f0vq3Ozb/9c674578b953618071e29ada2d3db582/GettyImages-1395917864-converted-from-jpg.webp?w=1500&h=680&q=60&fit=fill&f=faces&fm=jpg&fl=progressive&auto=format%2Ccompress&dpr=1&w=1000)
A tech stack refers to the set of technologies that support a software project. When you build one for a project or for your resume, you can select from a broad mix of tools and components that work together to enable development.
When exploring what a tech stack is, it's the technologies behind a software build, whether it’s a website, a game, or a mobile application.
Understanding the meaning of a tech stack means recognizing that these tool collections extend beyond software development and also support workflows in education, newsroom settings, and enterprise operations.
When considering how to choose a tech stack, think about what the program is, what it will accomplish, and how users will interact with it. Explore the components and options you have when putting together a tech stack.
When you’re ready to take the next step, consider enrolling in the IBM Full Stack Software Developer Professional Certificate t o pursue your skills and a career as a full-stack developer. Learning at your own pace, you can develop your knowledge of front-end development languages and tools such as HTML, CSS, JavaScript, React, and Bootstrap.
A tech stack describes all of the technology you need to create a development project. In the past, tech stacks were fairly straightforward; whether designing an app, a game, a website, or something else, you could choose from a few different options to help with each technology.
As companies began to use software-as-a-service models to offer technology via the cloud, developers started to have more options for which technology they would learn, list on their resume, and eventually deploy in their development projects. Advancements in cloud computing, artificial intelligence, and virtual reality have also increased the number of tools and technologies you might choose from because software programs can be more complex and offer new kinds of functionality than they did before.
Today, you have many different components and tools to choose from when creating a tech stack for your project or resume.
If you are planning the tech stack for a development project, you’ll need to consider what tech you’ll use to perform all of the different tasks that the project will need to be functional. While this will depend wildly on what you are creating, a few key components of tech stacks include:
Operating systems: You will need an environment to code in, such as Linux, iOS, or Android.
Programming language: To add functionality to your project, you will need programming languages such as Java, Swift, Ruby, Python, Scala, C++, or JavaScript.
User interface: You may need technology that supports the client side or design side and that end users will interact with, such as HTML and CSS or frameworks like Bootstrap, Tailwind, React, jQuery, or Ember.js.
Frameworks: You will need back-end frameworks to help provide the logic needed for common functions like allowing users to log into the website. Examples can include Django, Laravel, Spring, Express, and.NET.
Runtime environment: You may need to select a runtime environment that the application you’re building will use to operate, allowing your app to run on multiple platforms. This may include Java Runtime Environment (JRE), Node.js, or Common Language Runtime (CLR).
Servers: Your server can help you receive user requests and interact with your database, as well as other tasks like load balancing, such as Apache HTTP, Nginx, Azure, Cloudflare, Google Cloud, and AWS.
Databases: You will need tech to help you store data and retrieve that data as needed, such as MongoDB, MySQL, Redshift, Snowflake, or Splunk.
Tech stacks commonly help describe the technology used for a development project, like a website, video game, or mobile app. The concept isn’t isolated to development, though. Any professional who needs to use a suite of tools to perform their work will need a tech stack, or they need to choose at least the tools they will use in their work. For example, a college or university might use a tech stack to manage its curriculum, students, catalog, student retention, and more. A newsroom will need technology to manage its digital content, advertising, subscribers, and more.
Within development projects, the range of tools and components you may need in your stack depends on the size, complexity, and functionality of your project. For example, some projects might require an AI tech stack, a cloud computing tech stack, or a VR tech stack. Learn more about full-stack, front-end, and back-end tech stacks.
A full-stack tech stack gives you the technology to work with both front-end and back-end technologies. If you pursue a full-stack tech stack while training, you’ll be able to work as a full-stack developer and perform many different kinds of work for a website or development project. If you’re planning a tech stack for your project, you’ll need a full stack even if you don’t personally have all of those skills, because a development project requires tech on both the client and server side.
A few popular examples of a full-stack tech stack include:
LAMP stack: Linux, Apache, MySQL, and PHP
MEAN stack: MongoDB, Express.js, Angular, and Node.js
MERN stack: MongoDB, Express.js, React, and Node.js
MEVN stack: MongoDB, Express.js, Vue, and Node.js
Ruby on Rails: Ruby on Rails is considered a tech stack because it is a framework with integrations for all the other components of a tech stack, like JavaScript and CSS.
Read more: What Can I Do With a Linux Certification?
You will need a front-end tech stack to form the client side of your website, app, or game. The front-end tech stack can sometimes be more straightforward than the backend because websites typically use a few key programming languages, including HTML, CSS, and JavaScript, to create the user interface. You will also use frameworks and front-end libraries, such as Bootstrap, jQuery, Vue, React, Unity, or Angular, built on JavaScript to add more interactivity and functionality to your project. You may also develop a front-end tech stack if you plan to become a front-end developer.
You will need a back-end tech stack for your development project's server-side or technical part. Considering the components you’ll need in your tech stack, you might see why the back-end can be more complicated than the front-end. The exact stack and tools you will need depend on the functionality and type of program you’re building, but you should consider components like databases, servers, runtime environments, programming languages, and back-end frameworks. You may build a back-end tech stack of skills if you want to become a back-end developer.
Learning a tech stack can be challenging, especially when you’re jumping into unfamiliar tools or juggling multiple layers of front‑end and back‑end complexity. The ramp‑up is easier when the technologies are adjacent to what you already know, and modern tooling can smooth early mistakes. You can reduce difficulty by choosing stacks that align with your existing skills and experience.
Assembling a tech stack for your project or resume is important, and following a few guidelines can help you organize your options.
If you have a development project that you need to determine a tech stack for, you can start by thinking about what the program is, what it will accomplish, and how users will interact with it. The tech you choose will support those goals without too much unnecessary functionality. You can also identify tech you know you want in your stack and work backward to build a stack that complements that tech. You may also want to consider whether your tech stack will scale with your project, the cost of different technologies, and ease of use, so that everyone on your team is comfortable using the technology.
If you want to build a tech stack for your resume, it’s important to choose the right tech because the skills you have will affect the jobs you get. For example, if you develop a front-end tech stack but want to work as a full-stack developer, you will have skill gaps that you need to fill. In some cases, the tech stack that a company uses can give you insight into their company culture, which means that you can choose the tech stack you learn to subtly influence the company culture you’re qualified to work in.
If you’re interested in expert guidance and tips to help you build your skills, subscribe to our Career Chat newsletter on LinkedIn. You can also continue your web development learning journey with our other free digital resources:
Watch on YouTube: From Zero to Full Stack Hero: Developer Career Guide
Bookmark for later: Java Learning Roadmap: Skills, Courses, and Career Paths
Take the quiz: Career Test: What Career is Right for Me Quiz?
Whether you want to get comfortable with an in-demand technology or advance your abilities, keep growing with a Coursera Plus subscription, where you’ll get access to over 10,000 flexible courses.


Editorial Team
Coursera’s editorial team is comprised of highly experienced professional editors, writers, and fact...
This content has been made available for informational purposes only. Learners are advised to conduct additional research to ensure that courses and other credentials pursued meet their personal, professional, and financial goals.