Job Description:
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 performance application
Implementation of security and data protection
Integration of data storage solutions {{may include databases, key-value stores, etc}
Data security knowledge is preferred.
Required Skillset:
Full Stack or MEAN stack developer
Strong knowledge of Node JS, Angular JS, TypeScript, REST API, Javascript.
Understanding the nature of asynchronous programming and its quirks and workarounds
Good understanding of server-side templating languages {{such as Jade, EJS, etc}
Basic understanding of front-end technologies, such as HTML5, and CSS3
Understanding accessibility and security compliance {HTTPS etc}
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
Strong knowledge of relational databases such as MySQL and Mongo DB.
Must have demonstrated the ability to deliver high-quality products on time.
Must be self-motivated with excellent problem-solving skills and should have good written and verbal communication skills.
Must be able to work as part of a team
Implementing automated testing platforms and unit tests
Proficient understanding of code versioning tools, such as Git
Good knowledge of third-party libraries used within the code.
Familiar with payment gateway integration
Preferred Skills:
Design and develop software of embedded devices and systems from requirements to
production and commercial deployment.
Assess third party and open source software
Test and debug firmware
Design and review data security aspects
Review of software and design
Analyze and enhance efficiency, stability, scalability, portability, modularity of system resources.
Integrate and validate new product designs
Support firmware QA and provide post-production support
Interface with hardware design and development team
Ability to guide a team for software development