Main menu

Post navigation

Being a Full Stack Developer

A full stack developer who can get from a prototype to full MVP (minimum viable product) is often considered a jack of all trades, master of none, and with good reason. To define the modern full stack developer, we first need to focus on what the full stack developer used to be.

Full Stack Developers Then

Long ago, circa 2000 (in Internet-time, 17 years is a very long time ago), a full stack developer was someone who could:

whip up a web page in some Adobe tools like Photoshop or Fireworks

turn this design into HTML, CSS, and hotspots on images (aw, remember those?)

write some basic PHP 4.0 scripts (no object oriented PHP was on the horizon back then) to handle the server-side of the logic

store all dynamic data into MySQL, maybe do a bit of optimizing

upload it all to a server via FTP and collect the paycheck

Note that we’re talking about PHP here – a full stack Flash or Coldfusion developer had a different (but only slightly different) workflow.

Those were simple times, life was good. One-man agencies were a dime a dozen, and people still had time to spend with their family after work.

What about now?

What Does a Full Stack Developer Need to Know Now?

These days, we have horrors like these happening – how did it come to this?

To succeed in a now-saturated market, we developers – who are often perfectionists – hesitate to delegate and often live by the “if you want something done right” motto. This forces us into a corner where we have to learn everything, so that being a full stack developer often ends up encompassing the following.

Server Admin / Devops

A developer must know how to do basic server management. This includes but is not limited to:

connecting to remote servers through the terminal, in non-GUI environments

Apart from these basics, a developer should know how to create good, healthy, isolated development environments, in either Docker or virtual machines like with Vagrant. If all of the above is something you’re unfamiliar with, we have an excellent book about it for sale here.

The developer should also be intimately familiar with version control systems in order to be able to reliably produce backups and shareable, collaborative collections of code, tracked for changes across time. No modern developer workflow is complete without version control these days. We have a fantastic video course about this for purchase here.

Cloud

Apart from actual managed or virtualized servers, a developer might need to know about the cloud – hosting on platforms like Heroku, Google Cloud, Azure, AWS, and others.