What is Full Stack?

Full Stack Web Developer

A full stack web developer is a person who can develop both client and server software.

In addition to mastering HTML and CSS, he/she also knows how to:

  • Program a browser (like using JavaScript, jQuery, Angular, or Vue)
  • Program a server (like using PHP, ASP, Python, or Node)
  • Program a database (like using SQL, SQLite, or MongoDB)

Client Software
(Front End)

Server Software
(Back End)

Popular Stacks

  • JavaScript. Linux. Apache. MySQL. PHP. (LAMP Stack)
  • JavaScript. Linux. Nginx. MySQL. PHP. (LEMP Stack)
  • JavaScript. MongoDB. Express. AngularJS. Node.js. (MEAN Stack)
  • JavaScript. Python. Django. MySQL. (Django Stack)
  • JavaScript. Ruby. SQLite, PHP. (Ruby on Rails)


The advantage of being a full stack web developer is:

  • You can master all the techniques involved in a development project
  • You can often make a prototype very rapidly
  • You can often provide help to all the team members
  • You can often reduce the cost of the project
  • You can often reduce the time used for team communication
  • You can switch between front and back end development based on requirements
  • You can better undersand all aspects of new (upcoming) technology


  • The solution choosen can be wrong for the project
  • The solution choosen can be dependent on developer skills
  • The solution can generate a key person risk
  • Being a full stack developer is increasingly complex