Backend NodeJS Developer

Job description

Job Title: Backend Node.js Developer
Level: Mid / Senior (3–5 years experience)
Employment Type: Full-time(Remote)

Role Overview

We are looking for an independent, detail-oriented Backend Node.js Developer who writes clean, maintainable code, designs robust database structures, and knows how to optimize queries and background jobs for performance and reliability.

You will own server-side logic, database design, API integrations, and scheduled jobs/cron tasks that keep the system running smoothly.

Key Responsibilities

1. Backend Development & APIs

  • Design, develop, and maintain RESTful (and/or GraphQL) APIs using Node.js (Express, NestJS, or similar).

  • Implement business logic, data validation, and error handling in a clean, structured way.

  • Ensure APIs are secure, reliable, and backward compatible where needed.

2. Database Design, Rules & Optimization

  • Design and maintain database schemas (tables/collections, relationships, indexes).

  • Implement database rules and constraints (foreign keys, unique constraints, validations) to maintain data integrity.

  • Write efficient queries and stored logic where appropriate.

  • Perform query optimization (indexes, query refactoring, avoiding N+1, caching strategies) to improve performance.

  • Work with relational (e.g., PostgreSQL/MySQL) and/or NoSQL (e.g., MongoDB) databases as required.

3. Cron Jobs, Scheduling & Background Tasks

  • Design and implement cron jobs and scheduled tasks (daily/weekly/monthly jobs, maintenance scripts, notifications, clean-ups).

  • Manage background processing using job queues (e.g., BullMQ, Agenda, or similar).

  • Monitor job executions, handle failures, and implement retries and alerting for critical jobs.

  • Ensure that scheduled tasks and jobs are idempotent, fault-tolerant, and efficient.

4. Code Quality & Best Practices

  • Write clean, modular, testable code following best practices and agreed coding standards.

  • Maintain a clear project structure and separation of concerns (services, controllers, repositories, etc.).

  • Participate in code reviews, refactor legacy code where needed, and help improve team standards.

  • Effectively utilize SonarQube for code quality and security. 

  • Add unit and integration tests for critical logic using tools like Jest, Mocha, or similar.

5. Performance, Security & Reliability

  • Optimize backend performance (response time, throughput, memory usage).

  • Implement security best practices: input validation, auth, rate limiting, OWASP considerations, secure storage of secrets.

  • Use logging and monitoring tools to track system health and diagnose issues.

  • Contribute to scaling strategies (horizontal scaling, database optimization, caching layers like Redis).

6. Independent Ownership & Collaboration

  • Work independently on assigned modules/features, from design to deployment.

  • Break down tasks, estimate work, and manage your own timelines effectively.

  • Collaborate with frontend developers, product owners, and other stakeholders to clarify requirements.

  • Provide technical input on architecture, trade-offs, and implementation choices.

Required Skills & Qualifications

Education

  • Degree/Diploma in Computer Science, Software Engineering, IT, or equivalent hands-on experience.

Technical Skills

  • 3–5 years of backend development experience, with strong proficiency in Node.js.

  • Hands-on experience with one or more Node.js frameworks: Express, NestJS, Koa, etc.

  • Strong understanding of relational databases (PostgreSQL/MySQL) and/or NoSQL (MongoDB).

  • Experience with:

    • Database schema design and indexing strategies

    • Query optimization and performance tuning

    • Implementing cron jobs and scheduled tasks (node-cron, Bull, Agenda, or similar)

  • Familiarity with Redis or other caching mechanisms is a plus.

  • Experience with authentication & authorization (JWT, OAuth2, etc.).

  • Comfort with Git and modern development workflows.

Soft Skills & Mindset

  • Works well with minimal supervision, able to take a problem and drive it to completion.

  • Strong sense of ownership and responsibility for stability and quality of backend services.

  • Good communication skills; able to explain technical decisions clearly.

  • Analytical thinker with a habit of documenting decisions and processes.

Nice-to-Have

  • Experience with microservices or distributed systems.

  • Experience with Docker and containerized deployments.

  • Familiarity with CI/CD pipelines.

  • Knowledge of message brokers (e.g., RabbitMQ, Kafka).

  • Experience working in an agile/Scrum environment.

Have a question? Fill out the form or contact us!
We believe in equality of opportunity. To live. To succeed. To grow. To be more than.
Apply for this position

By submitting this form you agree to our Privacy Policy. SegWitz may contact you via email or phone for scheduling or marketing purposes.

Stay Ahead.

Subscribe for Expert Insights.

You can unsubscribe at any time using the link in the footer of our emails. View our Privacy Policy.