Mid Software Developer (React. Node.js. TypeScript) (In Office) - CPT - Datafin IT Recruitment
Cape Town, Western Cape 7 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 : 7 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.