A Full Stack Developer is a developer who is comfortable working with both back-end and front-end technologies. They have specialized knowledge in all stages of software development. They say a developer can truly call himself "full stack" when he has worked in multiple languages, platforms, and even industries in their professional career.
People believed that the end of Full Stack Developers has come because mastery of every facet of 2 development stacks seemed not only virtually impossible but a fading craft as well. But this is far from the truth, even Facebook prefers hiring Full Stack Developers. Full Stack Developers are developers who know how to code in front-end and back-end. They're also responsible for creating, manipulating and querying databases. For them, being a Full Stack Developer is a heavy title to bear, but it shows development of their skills over the years and confidence in their ability to deliver.
It's not all about one's educational background and working experience when it comes to hiring a Full Stack Developer. Yes, these two factors are of value but there are also specific skills that need to be recognized such as project management and leadership skills. A good Full Stack Developer should be able to understand customer and business needs as well since they need to have a grasp of what is going on in the field when the customer uses the software.
Aside from a degree in programming or any degree relative, the skill level in each discipline is also measured before an offer is made. Smaller companies and startups have a big need for full-stack developers but chances are there aren't too many of them around. This is the reason why the cost of a Full Stack Developer is a bit higher than regular developers.