Node.js Developer – Live Fleet Telematics Platform (Kenya) | Contract
Budżet: $25.0 - $47.0
HOURLY / PART_TIME
⭐ 0.00 (0)
United States
node.js, amazon-web-services, api-integration, javascript, api, web-programming, restful-api, express-js, database-architecture, web-application
Kuwamatics is a live fleet and cargo telematics platform running in production in Kenya. Built on Traccar + Node.js, it tracks vehicles, cargo e-seals, fuel, geofences, and M-Pesa payments for B2B logistics clients. Real GPS devices are reporting live right now. This is not a concept — it's a working product with a paying customer.
Important: Applications that appear AI-generated will be rejected without response. We want a human engineer who can think and communicate clearly.
The stack:
Backend: Node.js + Express, PostgreSQL, PM2
Frontend: Vanilla JS + ~25 modular JS files
Engine: Traccar (self-hosted, local API)
Auth: Session-based, 5 roles, multi-tenant B2B
Infrastructure: DigitalOcean droplet, GitHub private repo, Spaces backups
What you'll work on:
Set up a staging environment (mirror of production)
Build the billing engine (subscriptions, invoicing, M-Pesa reconciliation)
Activate SMS alerts via Africa's Talking (API keys ready, code deployed)
Security hardening and independent auth/tenancy review
Performance tuning toward 800+ live devices
Ongoing bug fixes and feature improvements on a live codebase
You must have:
Node.js + PostgreSQL (3+ years on real projects)
Ability to read and work confidently in someone else's codebase
Git/GitHub workflow
Clear written communication in English
Available ~20hrs/week, fully remote
Nice to have:
Traccar or GPS/IoT experience
Kenya/East Africa market familiarity
PostgreSQL performance tuning experience
How we work:
I am not a developer. I review diffs, test features, and approve changes. You write the code, explain what you did and why, and work independently from clear task descriptions. Good written communication matters as much as technical skill. You will have full access to the GitHub repo and a detailed handover document from day one.
To apply — all four required, no exceptions:
What port does the Traccar HTTP API run on by default, and what is it used for?
Complete this sentence in your own words: "PM2 is used to..."
A Node.js server returns this error: Error: connect ECONNREFUSED 127.0.0.1:5432 — what does it mean, what are the two most likely causes, and what is the first command you would run to diagnose it?
Record a 2-minute Loom video (loom.com, free) walking through any Node.js + PostgreSQL project you have built. Show the code and explain one interesting problem you solved. No video = no response.
What is your hourly rate in USD?
Otwórz na Upwork