In the world of technology exists the concept of the ‘full stack hamburger,’ an umbrella term for a bunch of inter-related IT terminology. Instead of buns, patties and toppings, the full stack hamburger is made up of IT terms and skills. The bottom bun of the hamburger contains the ‘backend’ terms, where all the important stuff happens behind the scenes, like knowing how to set up servers and databases and how to handle data.
What does a full stack developer do?
A full stack developer is like an architect of the digital world. If a house is being built, full stack developers are the ones responsible for designing both the outside appearance and the systems that make it function inside.
They’re also the engineers behind the scenes making sure everything’s working properly. For example, they create the server where data is stored and retrieved and design databases to neatly organise information, using languages like SQL to manage it efficiently. They also bridge the visible interface you interact with and the behind-the-scenes processes that powers it.
If you want to become a full stack developer you need to learn all these different parts – frontend, backend and middleware – and understand how they work together.
Strong problem-solving skills are a must-have, along with being able to collaborate and make sure everyone's on the same page. Curiosity is a good trait to have too, because as technology keeps evolving, full stack developers are the ones adapting to new tools and techniques.
The top bun
The terms in the top bun mostly relate to web development, including technologies used to enhance the functionality, user experience, and interactivity of web applications. All the terms are related to web development in some way, focusing on different aspects of building web applications.
JSON is used for data exchange between web applications and servers due to its lightweight and easy-to-read format. AJAX, PWA, and SPA are focused on improving user experience by making web applications more responsive, interactive, and app-like. AngularJS, Bootstrap, jQuery, and ReactJS are frameworks or libraries that provide developers with tools and features to streamline web application development.
The lettuceThe terms that make up the lettuce of the full stack hamburger relate to web communication and interaction, with a focus on enabling seamless data exchange and communication between applications. The terms are related to facilitating communication and data exchange between applications over the internet.
REST, SOAP, and WebSockets are different approaches to enable API-based interactions between applications. REST and SOAP use different protocols (HTTP and XML, respectively) for data exchange, while WebSockets utilise a persistent connection over the WebSocket protocol.
WebSockets are specifically designed for real-time applications, enabling bidirectional communication between client and server, making them suitable for chat apps, stock tickers, and other real-time scenarios. APIs, including REST and SOAP, provide a way for applications to access the functionality and data of other applications.
These terms all relate to databases, but they represent different types of databases and their characteristics. All the terms refer to different database management systems used to store, manage, and retrieve data for various applications. PostgreSQL, DB2, and MySQL are all examples of relational database management systems (RDBMS). They use a structured approach with tables, rows, and columns to store and organise data.
PostgreSQL and DB2 are known for their scalability, performance, and support for various features and extensions. MySQL is appreciated for its simplicity, ease of use, and performance. PostgreSQL, MySQL, and NoSQL databases are commonly used in web applications and various other software systems. PostgreSQL and MySQL are open-source databases, meaning they are free to use, while DB2 is a commercial database developed by IBM.
The term "NoSQL" refers to a category of non-relational databases designed to handle unstructured data and provide high scalability and performance for specific applications, such as social media and big data analytics.
These terms relate to various aspects of software development, programming languages, frameworks and tools used in the technology industry. All the terms are related to software development in some way, including programming languages, frameworks, runtime environments, databases and container platforms.
Python, Ruby, Java, C#, Perl, and Scala are considered general-purpose programming languages that can be used for a wide range of applications and domains. PHP, Ruby, Node.js, and Java (with related frameworks) are popular choices for web development, including creating dynamic web pages and server-side applications. Python, R and Scala are commonly used in data science and big data analytics due to their libraries, frameworks and concise syntax that cater to these domains.
MongoDB is a NoSQL database popular for managing large amounts of unstructured data, often used in big data analytics and distributed systems. C# and .NET are developed by Microsoft and are commonly used for Windows development and enterprise applications.
The bottom bunThe terms in the bottom bun relate to technology and computing, including cloud computing platforms, operating systems and technology companies.
AWS and Azure are both cloud computing platforms that offer a wide range of services, including computing, storage, networking, databases, analytics, machine learning and artificial intelligence. They are widely used by businesses and popular websites and applications. Linux, Windows, Android and iOS are all operating systems used in different computing environments. Linux and Windows are commonly used on servers and desktops, while Android and iOS are mobile operating systems for smartphones and tablets.
AWS, Azure, Android and iOS are popular and widely used technologies in their respective domains, dominating the cloud computing and mobile operating system markets. Windows, Android and iOS are known for their user-friendliness and wide range of applications, catering to different user needs and preferences. Linux and IBM i are recognised for their flexibility and stability, making them suitable for a variety of computing environments. AWS is a part of Amazon Web Services, Google specialises in Internet-related services and Microsoft develops Azure and Windows. IBM i is developed by IBM, a well-known technology company.
Full stack skills in demand in 2023Full stack skillsets are in demand for developing high-quality apps with the potential for large growth. Companies are looking for developers who can offer solutions across the board, both in the backend and the frontend. Full stack developers can help finish projects quicker while maintaining quality coding.
Microservices, serverless architecture and containerisation are all expected to play an important role in contemporary full stack development. Developers are also looking into new frontend frameworks and libraries like React and Vue.js, and advanced backend technologies like GraphQL and Kubernetes, with the goal of developing quicker and more efficient applications that can be scaled over the long run.