Part-Time Junior TypeScript / Node.js Developer for SaaS Bug Fixes & updates

Part-Time Junior TypeScript / Node.js Developer for SaaS Bug Fixes & updates

Part-Time Junior TypeScript / Node.js Developer for SaaS Bug Fixes & updates

Upwork

Upwork

Remoto

3 hours ago

No application

About

GovText is a SaaS platform that helps elected officials, campaigns, and civic organizations communicate with their constituents through SMS, email, automated workflows, and audience management. The MVP is fully deployed and stable — but like any production app, we need someone who can help: • Fix bugs and backend crashes • Improve reliability by debugging issues across the stack • Ensure integrations like Datadog • Help with monitoring, observability, and performance • Support small stability improvements across the codebase This role is ideal for a junior developer who wants real production experience while working on a meaningful civic-tech product. ⸻ 🧰 Tech Stack You’ll Work With Based on our main backend entrypoint (server/index.ts): Backend (Primary Focus) • Node.js (TypeScript) • Express • Supabase / PostgreSQL • Custom middleware: • CORS • Rate limiting • Request timeouts • Cookie parsing • Helmet w/ CSP security settings • Background services • Custom error handling + logging • Monitoring • Datadog • Log sanitization + metadata • Performance and request metrics Frontend (Secondary) • React • Vite (dev server) • Static build for production Frontend experience is nice to have for fixing UI bugs, but not required. ⸻ 🎯 Your Responsibilities 1. Fix Backend & Frontend Bugs You’ll diagnose and fix issues such as: • API 500 errors • Errors thrown in Express routes • CORS issues and preflight failures • Rate limiter false positives • Request timeouts • CSP errors and Helmet misconfigurations • “Cannot set headers after they are sent” issues • Supabase/Postgres connection failures • Occasional UI bugs in the React frontend 2. Ensure & Maintain Monitoring Integrations (Datadog + Logging) GovText relies on monitoring to catch issues before customers do. You will help: • Verify Datadog logs, metrics, and traces are flowing correctly • Add missing tags, metadata, and tenant identifiers • Ensure background job failures appear in monitoring • Improve log clarity (adding context, IDs, status codes) • Help set up proper dashboards or alerts (optional but a bonus) You don’t need deep Datadog experience — only the ability to read docs and ensure integrations work end-to-end. 3. Improve Logging, Error Handling, and Observability Tasks include: • Adding key log lines in critical areas • Ensuring error IDs are being generated properly • Improving our async error handler where needed • Helping reduce noisy or duplicate logs • Ensuring our logger doesn’t leak sensitive data 4. Small Incremental Improvements Examples: • Improve edge case validation • Fix small API inconsistencies • Adjust TypeScript types in routes • Clean up minor tech debt You are not expected to ship huge features immediately — this role is stability-first. ⸻ ✅ Required Skills • Strong JavaScript & TypeScript fundamentals • Experience with Node.js and Express • Ability to debug crashes, stack traces, and API errors • Basic understanding of SQL / PostgreSQL • Ability to read and interpret server logs • Comfortable understanding environment-based behavior (dev vs prod) • Git + GitHub workflow ⸻ 🌟 Nice-to-Have Skills (Bonus) • Supabase • Datadog (or Sentry, New Relic, Posthog, etc.) • React or Vite • Experience with security middleware (Helmet, rate limiting, CORS) • Experience debugging production SaaS systems • Understanding of Railway or Vercel deployment environments Not required — you’ll grow into it. ⸻ ⏱️ Time Commitment • 10 or so hours (flexible) • Longer-term engagement expected • Must be able to respond to new bug reports reasonably quickly ⸻ 💼 Workflow & Expectations You will: 1. Pick bug tickets from our backlog in Linear 2. Debug using logs, error IDs, Datadog, or console traces 3. Submit clean pull requests 4. Receive feedback & merge 5. Move to the next task ⸻ 📝 How to Apply Please include: 1. A short introduction 2. Links to your GitHub or examples of Node.js/TypeScript projects 3. A description of a bug or crash you debugged recently and how you fixed it as well as other systems you have worked or built 4. Your hourly rate 5. Hours per week you can commit + your timezone