The “stack” is the set of technologies used to deliver a web or mobile product. The front end handles presentation and interaction; the back end handles business logic, authentication, data storage, and connections to third-party services. Full-stack work spans both: you can design an API, implement it, and build the client that consumes it.
In practice, “full-stack” often describes breadth rather than a single person doing everything at enterprise scale. Small teams and agencies frequently need engineers who can move across layers to ship features without handoffs breaking context. Larger organizations may specialize more while still expecting alignment on contracts between front end and back end.
Choosing a stack — languages, frameworks, databases, hosting — is a trade-off between team skill, performance, cost, and maintainability. The goal is not to use every trendy tool but to keep the system understandable, testable, and evolvable as requirements change.