1) Front-end technology
2) Development Languages
Full stack engineer should know at least one server-side programming languages like Java, Python, Ruby, .Net etc.
3) Database and cache
Knowledge of various DBMS technology is another important need of full stack developer. MySQL, MongoDB, Oracle, SQLServer are widely used for this purpose. Knowledge of caching mechanisms like varnish, Memcached, Redis is a plus.
4) Basic design ability
In order to become a successful full stack developer, the knowledge of designing is also recommended. Moreover, the person should know the principle of basic prototype design and UI /UX design.
Exposure to handling Apache or nginx servers is desirable. A good background in Linux helps tremendously in administering servers.
6) Version control system (VCS)
A version control system allows full stack developers to keep track of all the changes made in the codebase. The knowledge of Git helps full stack developers to understand how to get the latest code, update parts of the code, make changes in other developer’s code without breaking things.
7) Working with API (REST & SOAP):
Knowledge of web services or API is also important for full stack developers. Knowledge of creations and consumption of REST and SOAP services is desirable.