Think of a coin. Can you separate the one side from the other? Of course you can’t. Front end and back end web development are a little like that. They are two sides of the same thing. The front-end, or ‘client side’, is everything the user experiences, from the stunning layout to the cool buttons and graphics. The main purpose of the front end is to deliver interactivity and to display content in an appealing way. The back-end, on the other hand, does things like work out calculations, follow business logic, interact with the databases etc. Back end developers need to get to grips with programming languages, databases and server architecture. A full stack developer, however, is able to do both front end and back end web development.
Full Stack Web Developer: Skills Needed
Because a full stack web developer takes you from conception to completion, he or she needs to understand a number of different programming languages. Upwork, a global freelancing platform, lists the skillset of a typical full stack web developer as follows:
- CSS preprocessors like Sass or LESS
- Libraries like jQuery or Backbone.js
- Front-end (CSS) frameworks like Foundation or Bootstrap
- API design and development
- CRUD (Create, Read, Update, Delete)
- RESTful Services
- Database technologies like MySQL, Oracle, PostgreSQL, and MongoDB.
- Web server technologies like Node.js, J2EE, Apache, Nginx, ISS, etc.
- Frameworks related to their server-side language of choice like: Express.js, Ruby on Rails, CakePHP, etc.
[Here’s a list of the top 10 top web development frameworks in 2017.]
The T-Shaped Model
It’s useful to think of full stack developers in the context of T- and I-shaped professionals (the term was popularized by Tim Brown, the CEO of IDEO). Forbes draws the distinction between the narrow, tight “I” or the extended “T”.
According to TechTarget, a T-shaped employee refers to a person who has “a breadth of general knowledge and soft skills” – this is represented by the horizontal bar of the T. The hard skills part is symbolised by the vertical part. Basically, a T-shaped individual is both a generalist (with people skills), as well as someone who has niche-topic specialities. This is different from the I-shaped employee, who, in the past, was valued by IT departments, because depth of knowledge in just one specific area was prized above anything else.
Not surprisingly, a T-shaped employee is often an ideal developer hire, says Stack Overflow, based on interviews with CEOs, programmers, and recruiters. Justin Cruz, a Senior Software Developer says: “T-shaped developers are the reason that (we are) able to grow at such a rapid pace and take on new challenges. When we are looking for new members for our development teams, we don’t focus on finding someone who is an expert in a particular subject (an iOS or Android developer for example) but rather a full stack developer that can be successful in contributing to a project end to end.” This means we can have very flexible product teams with developers who have the potential to grow in different areas, while still maintaining some expertise.
Full Stack Web Developer: Become a Ninja
The new methodologies – Agile, Lean and DevOps – are defining how software gets developed. They require flexible and more interactive ways of working, where stakeholders understand each other’s roles. To succeed, the team needs everyone all in and as a result, more rounded IT professions, like full stack developers, are in greater demand. Says The Register about full stack developers: “(T)hese rounded individuals are the most in-demand devs – in a modern world that wants staff who can do front end, can make middleware sing and utilise the terminal on their chosen operating system like a ninja, and knows how to test.”
Full Stack Web Developer: Perks
Gareth Dwyer, a 20-something software developer and writer, would definitely be described as T-shaped professional. He’s a full stack web developer who also knows about natural language processing, cloud computing and writing. He mentions “independence” as a key perk of full stack web development. “I don’t need to rely on others,” he says, “I can build an entire project, from beginning to end, with my full stack skills without needing ‘different parts’ from different people.”
If you’re thinking about becoming a full stack web developer, check out Hyperion’s three-month course that specifically prepares you for this exciting and lucrative career. Still a beginner? Check out the PHP & Web Essentials course to get you started on becoming a full stack web developer.
[For interest: read about 10 ways learning programming can change your life.]