Job Description
Purpose Statement
We are looking for a Node.js Developer responsible for managing the interchange of data between the server and the users. Your primary focus will be the development of all server-side logic, definition and maintenance of the central database, and ensuring high performance and responsiveness to requests from the front-end. You will also be responsible for integrating the front-end elements built by your co-workers into the application. Therefore, a basic understanding of front-end technologies is necessary as well.
Key Deliverables:
- Integration of user-facing elements with server side logic.
- Writing reusable, testable, and efficient code.
- Design and implementation of low-latency, high-availability, and performance applications.
- Implementation of security and data protection.
- Identify and implement data storage solutions, integration of data storage solutions.
- Develop and manage server-side components
- Design and deploy high-performance applications.
- Integrate server-side logic to the user-facing components built by front-end developers
- Incorporate data protection and cybersecurity measures
- Ensure that the main database and front-end requests are at their optimal performance
- Perform diagnostic tests, fix bugs, and provide technical support to users
- Document software development processes and prepare project reports
- Provide suggestions for improvement and apply them to daily tasks and processes
Preferred Qualification
- University degree or equivalent educational experience (optimally a technical or engineering degree).
- At least 4-6+ years (//edit according to your requirements) of experience with JavaScript and Node.js
- Familiarity and experience building fintech applications.
Preferred Requirements:
- Strong proficiency with TypeScript, Node.js, Nestjs and web stacks, libraries, and other frameworks.
- Hands-on expertise in REST, MySQL/PostgreSQL, WebSocket, MongoDB, Redis, etc.
- Familiarity with Docker and AWS infrastructure
- Understanding of data security principles
- Great understanding of programming principles like SOLID, KISS, DRY, YAGNI, SoC etc.
- Proficiency in JavaScript, web stacks, libraries, and frameworks
- Strong analytical and problem-solving aptitude skills
- Experience optimizing and tuning code for performance and maintainability – includes utilizing asynchronous programming, offline storage, and multi- threading as well as working around system / language limitations to achieve desired performance benchmarks.
- Working knowledge of front-end technologies, such as HTML5 and CSS3, TailwindCSS, SASS/SCSS
- Experience with back-end data management that optimizes RESTful APIs / microservices performance for varied user platforms – desktop, mobile (iOS), web services, and more
- Proficient understanding of code versioning tools, such as Git
- Good understanding of server-side templating languages
- Experience in integration of multiple data sources and databases into one system.
- User authentication and authorization between multiple systems, servers, and environments.
- Implementing automated testing platforms and unit tests.