Western Cape, South Africa
Software engineer building backend services and microservices in a production fintech and connectivity environment — primarily NestJS, TypeScript, PostgreSQL, Redis, and BullMQ, with frontend contributions in React.js and Next.js, and growing hands-on experience with AWS and Kubernetes. Current work typically spans the full slice — database schema design, migrations, REST API implementation, Redis caching, queue-based processing, DevOps configuration, and admin tooling. (Recent work includes a voucher management platform with partner API issuance, payment gateway integrations, an SMS notification management platform, and financial reconciliation alerting.) Also working through AWS certification material, with hands-on exploration of EC2, ALB, S3, CloudFront, CloudWatch, CodePipeline, IAM, and VPC. Background: Accredited Electronic Engineering degree, previously in the unified communications space (VOSS Automate).
- Integrated multiple payment gateways into the platform (Shop2Shop, internal Fibertime Voucher, etc), - Built a configurable event-driven Slack alerting platform, then implemented event triggers on top of it — including queue depth monitoring for live payment processor ops and daily reconciliation report notifications, - Developed SMS notification infrastructure — Redis-cached templates, dynamic variable substitution, microservice consolidation and DevOps cleanup, - Implemented device-based product filtering for TV Connect: hostname-based retailer lookups, portal URL management, per-device product rules, - Delivered Group Buy configuration system — entity design, DB migrations, backend CRUD logic, feature flag, - Investigated and updated AWS CodePipeline builds, managed Kubernetes deployments, and documented internal infrastructure processes - Building a voucher management platform end-to-end: voucher generation, partner API issuance, captive portal redemption, etc. Stack: TypeScript · NestJS · TypeORM · PostgreSQL · Redis · React.js · Next.js · AWS · Kubernetes · Docker · GitLab CI/CD
🔹 Templates Developer Role: Designed and implemented numerous new product features and enhancement-requests, as well as bug-fixes and performance-improvements. Utilized and refined a proprietary json-based templating system (i.e. a data-driven dev language) for defining all of the business logic in the product (e.g. the business-logic in things like transaction workflows, data modeling, and frontend logic behaviour). Besides being responsible for the technical design and development, this templating-layer role also went hand-in-hand with product (i.e. assist with product roadmap, technical design, planning and estimation) - Architected and refined product features, contributing to product strategy and client support. - Developed internal tools using python, for efficiency and debugging. - Optimized build/test/deploy pipelines with Python, Bash, and Jenkins. - Engineered a delta-builder system, greatly reducing client upgrade times. - Leadership: Interviewing, onboarding, client presentations. 🔹 Core API and Platform Development - Transitioned from Perl to Python, embracing containerization and iterative methods. - Skills: Django, Docker, Unit Testing 🔹 Front-end Development - Acquired Angular and TypeScript skills via courses. - Implemented various front-end enhancements. 🔹 Cloud Development - Engaged in Azure Cloud development. - Achieved Azure Fundamentals (AZ-900) certification.
Software Developer (2012 - 2017) , VOSS - Took ownership of a complex, internally developed ticket-syncing system, which was named the "CDET Sync System" (background: The CDET Sync System was used to facilitate the transfer of ops- / ticketing-info between external Cisco's CDET ticketing platform and VOSS-internal Bugzilla ticketing system. Thus, in the time-period when the VOSS engineering team and Cisco engineering team were collaborating on the CUCDM product (several years), this system streamlined some of the ops/ticketing comms between those teams, even while both teams were using their own ticketing and ops systems) + Perl, PostgreSQL, CDET API, Bugzilla API, Bash scripting, + Design, Road-map management, reading and analysis of existing codebase, + Project Management, Dev-effort-estimation and planning. * Made significant improvements to the system's reliability/robustness and performance, * Added new features and enhancements, * Made various design and refactoring changes which made it simpler, more readable, and easier to maintain. * Added reference documentation. * Eventually, this system became reliable and stable enough so that it took less and less effort to maintain. - Worked on the development and continuous improvement of VOSS's main product, at that time called CUCDM, which is a UC management tool utilized by major global telecom service providers (as well as big enterprises directly). That product/project was referred to internally as "VOSS 1", and it used a perl-based stack. Gained experience with: + Perl + JavaScript + Frontend development (using Perl, html, CSS, JavaScript) - Progressed to contributing to the development of the next-generation CUCDM system (aka VOSS 2.0).
Collaborated on the back-end development for a leading South African bank, focusing on enhancing and maintaining a Base24 ISO8583-1 payment switching system. All code and data interactions were exclusively conducted through remote terminal shell sessions, adhering to the stringent procedures and safeguards mandated by the client. Operational Maintenance & Support: - Performed troubleshooting for switch-related issues. - Traced financial transactions through a robust, legacy codebase consisting of C and Fortran. - Applied basic business intelligence to extracted data for future analysis. - Managed and executed client work requests by utilizing development scripts to prepare and refine batch data, followed by batch actions. - Provided production system monitoring and stand-by support. Development & Code Implementation: - Conducted impact analysis alongside senior programmers to gauge implementation effort. - Estimated development effort time for all tasks. - Conducted unit and integration testing. - Implemented code changes in C or Fortran, using Emacs in terminal and internal macro-libraries. - Adhered to technical specifications and guidelines. - Reviewed code collaboratively with senior programmers. - Coordinated testing with external Beta testers in a pre-production staging environment. - Authored various types of documentation, including formal Change Requests, Deployment, and Rollback Procedures.