Full Stack Developer



Definition:

                 A full-stack developer is familiar with all layers in computer software development and those developers aren't experts at everything; they have genuine interest in all software technology ,a functional knowledge and ability to take a concept and turn it into a finished product  .Good developers who are familiar with the entire stack know how to make life easier for those around them.

History:

                Stacks are a lot bigger than what they used to be, and being able to claim one has acquired refined skills at every layer of web development is certainly not a small claim.For a time (already) Facebook only hired full-stack engineers. This was of course when they were building the first few version of Facebook, which lets face it had a relatively simple php backend and wasn't anything special design-wise.

Role:
               You will work hand-in-hand with our Chief Product Officer to develop a robust web application to power Module’s digital platform. You will have a high amount degree of responsibility and autonomy, and will be expected to own and implement both the back and front-end.

Experience:        


  • Three or more years of end-to-end development experience –  including deploying, scaling, and monitoring production-grade web applications.
  • Experience developing responsive web applications with cross-device functionality.
  • Experience working with MySQL, PostgreSQL, or other relational database technologies.
  • BS/MS in Computer Science or related field preferred.   

Skills:

  • An obsessive attention to detail.
  • Expert in JavaScript, HTML, and CSS.
  • Expert in an MVC framework like Ruby on Rails, Laravel, or Django.
  • Experience with front-end JavaScript libraries like React, Vue, or Angular.
  • Experience deploying, maintaining, and scaling applications on AWS.
  • Experience delivering rich, interactive, 3D graphics in the browser is a plus.
  • Excellent verbal and written communication.
  • Ability to solve challenging problems both independently and as part of a team.


Layers of Full Stack:

Server Network and Hosting Environment:

                         Appropriate use of the file system , cloud storage , network storage and an understanding of data redundancy and availability is necessary.
                        Full stack developers can work side by side with DevOps. The system should provide
usefull error message and logging capabilities.
                    

Data Modeling:

                        Full stack developers know how to create a reasonably normalized relational model , complete with foreign keys, indexes, views, lookup tables, etc.
                        Full stack developers are familiar with the concept of non-relational datastores and understand where they shine over relational data stores.

Business Logic:

                       
                        The heart of the value the application provides.
                        Solid object oriented skills and Frameworks are needed.

API Layer / Action Layer / MVC:

                        Frameworks at this level should be used heavily.

                                         
                        Full stack developers have the ability to write clear, consistent, simple to use nterface.

User Interface:

                        
                        Understanding how to create a readable layout.
                         Acknowledge they need help from artists and graphic designers. 
                         Either way, implementing a good visual design is key.

Comments