So working at a Web Development company I have learned a lot about developers and how they are classified by what they know. For example you have Front End Devs and Back End Devs, but what I heard come up a few times in interviews was the term “Full Stack Developer”. I thought to myself, what does that mean? So after a few minutes searching on the internet for some answers I found out that a Full Stack Dev is essentially a developer who is proficient with both front and back end work. But why is it that more people aren’t taking this path career wise? This is what I want to find out with this article and why this position is something of a myth among developers.
Now anyone who has seen Shrek knows that ogres have layers, much like onions. Full Stack Devs have layers and one of those layers is having a working knowledge of Server, Hosting and Network Environments. This is something that is a little bit more back end in terms of application but this “layer” of knowledge typically deals with knowing what can break and why and being able to manage resources well. Not only that but knowing how to understand and avoid data redundancies, making appropriate use of cloud storage, file management and knowing how a particular application will scale with different pieces of hardware. So what else do they need to know?
Another layer in the Full Stack Dev onion metaphor deals with understanding how a business works. Its all well and good to be an excellent programmer or developer but if you don’t understand what value your application(s) brings to the business and how it interacts with everyone else then you are missing a huge part about where you fit into the business world. This goes into how Full Stack Devs should be able to construct simple to use interfaces that people of all backgrounds can use with the framework behind it being sound in design. When you’re a programmer you just want your application to work and sometimes it doesn’t matter what it looks like since you understand everything about your application works, but only in relation to you. Your user interface layer shouldn’t give your users carpal tunnel or give headaches. Since user interfaces are important it is good to be personable with your users and include any error messages or explanations when something might unexpectedly crash or break.
Finally what is the last layer of this mythical phone known as the Full Stack Dev? Well this is something that is really important if you want to be more well rounded and expand on your job opportunities. Understanding what the customer and business wants. This is critical to not only being a well rounded developer but also a more well rounded individual professionally. Full stack developers have a grasp of what is going on in the field when the customer uses the software. They also have a good grasp of the business. You have to remember that you’re not making an application or piece of software for yourself, but instead for someone else to use and bearing in mind what they need will go a long way.