Mid Software Developer (React. Node.js. TypeScript) (In Office) - CPT - Datafin IT Recruitment

Cape Town, Western Cape 11 hours ago Permanent Salary - Market Related

Mid Software Developer (React. Node.js. TypeScript) (In Office) - CPT

Datafin IT Recruitment
Cape Town, Western Cape
Date Created : 11 hours ago
Job Type : Permanent
Salary : Market Related

ENVIRONMENT:

An Investment company is seeking a Mid-level Software Developer to join their team in Durbanville, Cape Town.

The Mid-level Software Developer is responsible for designing, building, and maintaining features across the full technology stack of our web platform. The role works across the React/TypeScript frontend, the Node.js/Express backend, and the PostgreSQL database layer, taking ownership of features from specification through to production deployment. Having grown beyond junior responsibilities, this role is expected to deliver production-ready features independently, contribute to technical decisions, handle deployments through our CI/CD pipeline, and integrate the platform with third-party services such as PayFast and transactional email providers.

 

DUTIES:

  • Translate product specifications and designs into working, production-ready features across the full stack.
  • Build and maintain frontend interfaces using React 18, Vite, TailwindCSS, and shadcn/ui (Radix UI), ensuring accessibility and responsive behaviour.
  • Develop backend REST API endpoints using Node.js and Express, following established conventions for authentication, validation, and error handling.
  • Implement client-side state management using TanStack Query and form handling with React Hook Form and Zod validation.
  • Design and maintain PostgreSQL 16 schemas, write efficient SQL queries using the pg. (node-postgres) driver, and manage database migrations.
  • Implement data models that balance performance, integrity, and future extensibility.
  • Ensure backend security through proper use of Helmet, express-rate-limit, and Better Auth session-based authentication (HTTP Only cookies).
  • Convert UI/UX designs into pixel-accurate, accessible interfaces using TailwindCSS and Radix UI component primitives.
  • Implement client-side routing with React Router v6 and add polish through Framer Motion animations where appropriate.
  • Integrate map functionality using Leaflet and maintain a consistent visual language through the Lucide React icon library.
  • Build and maintain integrations with PayFast for payment processing, including handling of ITN (Instant Transaction Notification) callbacks and reconciliation.
  • Implement transactional email flows using NodeMailer (e.g. password reset, account notifications).
  • Integrate additional third-party APIs as required, ensuring secure credential management and graceful error handling.
  • Handle file and image uploads via Multer, including validation, storage management, and persistence through named Docker volumes.
  • Manage container orchestration using Docker Compose and ensure local and staging environments mirror production.
  • Configure and maintain Caddy as a reverse proxy, including automatic HTTPS provisioning.
  • Maintain and improve the CI/CD pipeline using self-hosted GitHub Actions, including staging deploys triggered on push to main.
  • Monitor Better Auth cloud dashboard (dash and sentinel plugins) and respond to authentication-related signals.
  • Diagnose and resolve bugs reported by users, internal stakeholders, or surfaced through monitoring.
  • Refactor and improve existing code to reduce technical debt and improve maintainability.
  • Write clear commit messages, meaningful pull request descriptions, and inline documentation where logic is non-obvious.
  • Ensure security best practices are applied across the stack (input validation, secure cookies, rate limiting, dependency updates).

REQUIREMENTS:

  • Minimum 2 years of professional software development experience.
  • Demonstrated experience building and maintaining production web applications across the full stack.
  • Proven track record of shipping features from specification through to deployment.
  • Experience working in a Git-based collaborative development environment.
  • Self-motivated learner who keeps up with developments in the JavaScript / React / Node.js ecosystem.
  • Reliable, accountable, and proactive in flagging blockers or risks early.
  • React 18 with hooks and modern functional component patterns.
  • Vite as a build tool, including environment configuration.
  • React Router v6 for client-side routing.
  • TanStack Query for server-state management and caching strategies.
  • React Hook Form with Zod schemas for type-safe form validation.
  • Framer Motion for UI animations.
  • Leaflet for map-based interfaces.
  • Node.js with Express framework — routing, middleware, and REST API design.
  • PostgreSQL 16 and SQL fluency, including the pg. (node-postgres) driver.
  • Better Auth (and @better-auth/infra) for session-based authentication using HTTP Only cookies.
  • Multer for file and image upload handling.
  • NodeMailer for transactional email delivery.
  • HTTP security via Helmet and rate limiting via express-rate-limit.
  • PayFast payment integration, including signature validation and ITN handling.
  • Strong proficiency in JavaScript / TypeScript.
  • Git workflows — feature branches, pull requests, code reviews.
  • Understanding of REST API design principles and HTTP fundamentals.

ATTRIBUTES:

  • Strong problem-solving ability and attention to detail.
  • Ability to work independently and take ownership of features end-to-end.
  • Clear written and verbal communication, particularly when discussing technical trade-offs.
  • Collaborative mindset — willing to give and receive constructive code review feedback.

By applying to a job using RecruitmentPartner, you are agreeing to comply with and be subject to RecruitmentPartner Terms for use of our website.

By applying to a job using RecruitmentPartner, you are agreeing to comply with and be subject to RecruitmentPartner Terms for use of our website.

Report job