Writing server-side web application logic in JavaScript and/or variants of it, such as CoffeeScript, IcedCoffeeScript, etc.
Develop back-end components, connect the application with the other (often third-party) web services, and support the front-end developers by integrating their work with the Node.js application.
- Integration of user-facing elements developed by front-end developers with server side logic
- Writing reusable, testable, and efficient code
- Design and implementation of low-latency, high-availability, and performant applications
- Implementation of security and data protection
- Integration of data storage solutions
- Strong proficiency with JavaScript
- Knowledge of Node.js and frameworks available for it {{such as Express, StrongLoop, etc depending on your technology stack}}
- Understanding the nature of asynchronous programming and its quirks and workarounds
- Good understanding of server-side templating languages {{such as Jade, EJS, etc depending on your technology stack}}
- Good understanding of server-side CSS preprocessors {{such as Stylus, Less, etc depending on your technology stack}}
- Basic understanding of front-end technologies, such as HTML5, and CSS3
- Understanding accessibility and security compliance
- User authentication and authorization between multiple systems, servers, and environments
- Integration of multiple data sources and databases into one system
- Understanding fundamental design principles behind a scalable application
- Understanding differences between multiple delivery platforms, such as mobile vs. desktop, and optimizing output to match the specific platform
- Creating database schemas that represent and support business processes
- Implementing automated testing platforms and unit tests
- Proficient understanding of code versioning tools, such as Git