Fullstack Node.js / TypeScript Developer
Remote (worldwide) — $17–$22/hr — 40 hours/week — Long-term
About Majoop
Majoop is a Dutch HR-tech startup building a recruitment platform that combines:
- Job board
- Applicant Tracking System (ATS)
- Recruiter marketplace
This is not an early prototype:
- Production vacancy crawler (thousands of employers)
- Live React job board
- ATS fully designed (72 tables, 121 features, 9 roles)
- Infrastructure running on Leaseweb
You will join a small team:
- CTO (architecture, reviews, security)
- Frontend developer (React → fullstack)
- You (backend + integrations)
What You Will Build
Months 1–3 – Jobboard
- Rewrite Java API → Node.js (Fastify)
- Build Click Gateway (tracking service)
- Connect frontend to new API
Months 4+ – ATS Platform
This is a complex system, not CRUD.
Authentication & Identity (CORE FOCUS)
Keycloak is a critical part of this role:
- Keycloak setup and configuration (realms, clients, flows)
- JWT validation in Node.js (no black-box libraries)
- Role-based access via token claims
- Multi-tenant identity (users across organizations)
- OAuth2 integrations (Microsoft, Google)
- SSO across multiple portals
You will work directly on the authentication layer of the platform
Other domains
- Vacancy management (Kanban pipelines)
- Real-time chat (WebSockets)
- Email sync (Outlook / Gmail APIs)
- CV parsing + PDF generation
- AI/LLM integration (matching, enrichment)
- Interview scheduling + calendar integrations
- Billing (Mollie)
- Multiposting (LinkedIn, Indeed)
Tech Stack
- Node.js 22 + TypeScript (strict mode)
- Fastify
- Drizzle ORM
- PostgreSQL
- Keycloak (auth)
- Zod (validation)
- React (4 apps)
- Turborepo (monorepo)
- Docker + Nginx
- GitHub Actions (CI/CD)
Requirements
- Strong TypeScript (strict mode) — no
any - Node.js backend experience (building APIs)
- PostgreSQL knowledge (queries, indexes, data modeling)
- Experience with authentication systems:
- Keycloak, OAuth2, or JWT flows
- Git workflow (PRs, reviews, clean commits)
- Works independently in a small team
Important
- Daily overlap with Netherlands (CET/CEST)
- Weekly demo (working software)
Nice to Have
- Keycloak experience (strong plus)
- Fastify / Drizzle ORM
- OAuth2 (Microsoft Graph / Google APIs)
- WebSockets / real-time systems
- Docker / CI/CD
- AI/LLM APIs (OpenAI, etc.)
What We Offer
- Real product (not a prototype)
- Direct work with CTO
- Focus on architecture + security (not just endpoints)
- Long-term engagement (12+ months)
- Small team, no bureaucracy
Compensation
- $17–22/hour
- Full-time (40h/week)
- Monthly payment
Hiring Process
- Short assignment – Fastify + Drizzle
- Technical discussion
- Long-term contract
Quality Standards
- No
any - No shortcuts on auth/security
- ESLint + Prettier enforced
- No DB access outside
packages/db - OpenAPI for all endpoints