Becoming Truly ‘Full-Stack’ is Unrealistic, But You Should Try

We teamed up with SiteGround
To bring you up to 65% off web hosting, plus free access to the entire SitePoint Premium library (worth $99). Get SiteGround + SitePoint Premium Now

Web development is a field of many titles. You can be a front end developer, a user experience designer, a software engineer, or a backend developer. If that’s too broad, you can call yourself a JavaScript guru, Bootstrap developer, or Node rockstar. There’s really no limit to the number of diverse (and sometimes odd) job titles floating around our industry. Why do so many different job titles exist? They exist because there’s very little limit to what you can do when building for the web. Traditionally there’s been a clear line between front and back end development. Yet both of those categories have various sub-communities of their own. A front-end developer can specialize in writing CSS or working with JavaScript based UI frameworks, while a backend developer can specialize in Ruby development or session handling. This leads to a question that’s caused a lot of debate within the web development community. If you want to be successful in your field, what should you specialize in? Should you specialize at all? Should you try to be a full-stack developer who excels in both front and back end environments, or should you try to be really good at one thing?

What Are Employers Asking For

I think the real question is if one type of developer is more hireable than the other. With that in mind, it’d make sense to take a step back and try to look at what employers are currently looking for.

As the capabilities of the web grow, employers are expecting developers to be proficient in more technologies and frameworks. This is because websites are becoming more dynamic and interactive as the line between native applications and browser based web applications continues to blur. At the agency I work at, more clients are asking for websites that have the capabilities of a modern web app, instead of a simple static site.

For those who are looking for mostly static websites, the need for a web developer is continuing to decrease. In fact, there are several companies whose business model caters to the static site market, enabling customers to create their own websites without writing a single line of code. WordPress.com, Squarespace, and Wix, all promise websites at very low costs, with each platform containing a shallow learning curve and a simple UI. No coding skills required.

While I don’t believe these sites are putting web developers out of business, I do think they reduce the value of simple HTML, CSS, and Javascript skills, and I think employers are starting to understand this. They’re beginning to look for more well rounded and experienced developers who have an understanding of the entire stack, from styling a dropdown menu to deploying a server.

While I don’t believe true full-stack development is very practical, or even possible, I do believe web developers who have a general understanding of the entire stack are more likely to be hired over those who do not. This doesn’t mean that you have to know everything there is to know about web development. Instead, I think there should be a list of systems and technologies that every developer should be open to learning more about, seeking to level up when he or she has the time.

The List

Javascript Jabber recently released a podcast dedicated to this very topic. They go over a large amount of technologies that a competitive web developer should have an understanding of. I’ve aggregated some of the most common skills below.

  • HTML, CSS, Javascript
  • A backend language
  • Version control
  • Command line usage
  • Node/Ruby Tooling
  • Preprocessors
  • Client Side MVC frameworks
  • Popular tools and frameworks like Angular, Laravel, Rails, etc.
  • An understanding of database systems
  • An understanding of server environments
  • Website deployment strategies
  • How to create and use a REST API
  • Responsive web development
  • Accessibility
  • Code testing

    Here’s another great list put together by Louis Lazaris. Although it’s a few years old, many of the technologies listed are still very much in use today.

Dont Panic

While going through these lists of technologies, you should begin to realize that you have, at the very least, heard of most of them. Additionally, no one expects you to be an expert in every single web development tool or technology. Instead, we should all be open to learning more about web development as a whole, adding to our knowledge of new tools and technologies whenever possible.

It’s also important to remember that a moderate level of specialization is good. A web developer can be great at complex CSS layouts, while still understanding how to write JavaScript that adds new functionality to an application. Several companies and agencies (mine included) work by having one developer write code for the front end, while another writes code for the server. Such a team-based workflow functions best when every developer has a moderate understanding of what the other is doing.

Conclusion

Centering your career around a particular tool or technology can be bad when it prevents you from growing your skillset. As the capabilities of the web grow, it makes more sense for web developers to have an understanding of the entire stack. We still have the freedom to be better in certain areas, but as layout becomes cheaper and interactivity in greater demand, simple font-end skills will be expected and application development skills will be desired. It may be unsettling to hear that employers are seeking full-stack over specialization. Andy Shora sums up that sentiment very well.

Truthfully, no one expects you to code an entire app from front to back, start to finish, all on your own. You shouldn’t work for someone who is asking you to do that. If you can do five to 10 things very well, and are willing to learn and jump into the other 100+ you aren’t as familiar with, you’re a commodity in high demand.

We teamed up with SiteGround
To bring you up to 65% off web hosting, plus free access to the entire SitePoint Premium library (worth $99). Get SiteGround + SitePoint Premium Now