Friday, June 28, 2019

Full Stack Development

Full stack development is a buzzword today in software development industry. One of the largest in-demand technical roles in IT industry these days is in the domain of Full stack development. This is evident from the fact that a Full stack developer is ranked as the second most popular developer profession across the world and is expected to remain so in the foreseeable future. The term full stack was first coined by Randy Schmidt in June 2008, the managing director of the Burns & McDonnell Terminals and Pipelines group. Randy described a full stack developer as “one who is responsible for design, mark-up, styling, behaviour, and programming.”Although a number of definitions and explanations on this subject can be found on Internet, this blog aims to explain it for a newbie who wants to know about this field from amateur’s perspective.
There are two aspects of software development that are common for all kind of applications: front-end and back-end. The front-end of an application, also referred to as the client-side, is what the user sees, touches and experiences. Front end is less about code and more about how a user experiences the interface. Back-end on the other hand is an enabler for a front end experience. An application’s front end may be the most beautifully crafted web page, but if the application itself doesn’t work, it will be a failure. The back end of an application, on the other hand, is responsible for things like business logic, database interactions, and performance.

Over the years, application development profiles were partitioned into silos like front-end developer and back-end developer. A front-end developer would focus on User interface elements and related programming whereas a back-end developer would focus more on writing code which would run on the web and application servers.However, the growth of start-ups has led to the demand of experts who have a wide set of skills across both the front-end and the back-end. Such developers are called as full stack developers.
A full stack developer has a good understanding of how the different layers of a system behave and is capable of creating a complete applications by himself. This turns out to be especially valuable for an application’s performance & optimization, since even when a full stack developer works in a team and is associated with only one aspect of an application, he can visualize what happens up and down the stack as the application is build and can plan his part of tasks according to the expectations in a better way.
Evidently, full stack developers are relied upon by companies to build, support and maintain their applications. It is one of the most in-demand profile and fast growing software development career path.

Dr Jyoti Sahni,
Associate Professor,
Department of CSE

No comments:

Post a Comment