There have been a lot of arguments on this topic but as someone who has worked for the last year and a half as a “full-stack” developer I thought I would throw my 2 cents in.
So what did I do in my last role?
- I wire-framed our core product and marketing site
- I put together lo-fi mockups
- I wrote the HTML, SCSS and JS and was fully responsible for that domain
- I was responsible for making the product accessible, performant and usable from a front end perspective.
- I set the architecture, standards, best practices for the front end.
At this stage you’re thinking ‘fair enough, he’s a front-end with a design background, nothing unique here’. Whilst we had a backend architect who put together the database schema and set the standards for writing backend code but I also:
- Wrote queries in pgSQL
- Added / removed / updated database tables
- Contributed to application architectural discussions
- Day to day I would be writing both front and back end code
So, am I full-stack?
I guess it depends where you draw the line in the sand.
If being full-stack means you are a master in all areas, then I definitely don’t fall into this category. Design, front-end and back-end are made of so many unique components, I think it would be impossible to claim mastery in all.
Design can be made up of wire-framing, UI design, UX, knowledge of the tools themselves (Photoshop, Sketch etc), prototyping, usability testing and so on.
Back-end could include knowing any number of server-side languages, databases, hosting environments, data management, security and much more.
Many of the items I mentioned above are now speciality jobs in their own right let alone the split between the overall parent groupings.
To put this all into perspective it may be easier to look at other jobs and make a comparison. My landlord is a carpenter by trade (and a very good one) who because of the nature of his job has dabbled in electrics, brick laying and plumbing. Whilst he knows enough to get by in those other trades and has been known to fix up our pipes, lighting problems - his business card reads carpenter, not “full-stack tradesman”.
Could I get a job as a full-stack?
Honestly, I think it depends who’s hiring. A start-up company making a small product that only has budget for one developer to come and piece together the application may well be willing to take me on as a full-stack. I could put together a reasonable database and have it talk to the front-end which would be fine for a proof of concept.
However, a bigger company with an existing team of front and back-end developers would never hire me as a back-end, I wouldn’t even pass the entry test!
So, finally, am I full-stack?
I would say no. I’m not convinced it’s a thing. There are a few extremely talented people who are masters in all fields but the majority of us have our specialisation and can get by in others if we need to. The long and most accurate title: I’m a front-end developer with a background in design who can dabble in the back-end - but that’s never going to fit on my business card! The short title: I’m a front-end developer.