What is a "full-stack" developer?

November 30, 2020

This is a contentious word.

For a developer, it probably means someone familiar with front-end, back-end, and middleware tech.

For an employer, it probably means someone good at all things tech (and willing to accept a heaping list of responsibilities at his/her own expense).

However, over the years, a Full-Stack developer has gone from someone able to code HTML, CSS, JS, and some back-end language, to someone who knows UI/UX, Software Architecture, Software Testing, and many other jobs.

Frameworks allow software developers to quickly prototype what would take an engineering team many months before, but perhaps frameworks allow a single developer to seemingly be able to do all those jobs, when in reality most of the UX/UI, Software Architecture, Testing, etc, had already been figured out by the engineers who put the framework together. Then, when tasked with doing something other than the prototype, the full-stack starts to falter while the employer still expects this one-person to perform like a team or community of developers.

It's a tough word to stop using since employers are looking for this on resumes. As a developer, denying that you are a "Full-stack" when in fact you can deal with front-end and back-end code and systems may significantly lower your opportunities to find a job.

Maybe err on the side of caution when talking to other developers and ask what they mean by "Full-Stack," while when talking to employers/managers/HR, err on the side of daring and ask questions later.