freehire launches on Product Hunt on 26 August.

Follow →

Senior backend engineer (switching systems)

Location: Cape Town, South Africa (Hybrid or On‑site)

Role Overview We are looking for a

Senior Backend Engineer

to design and build

high‑performance switching systems

that route, process, and manage real‑time transactions or communications at scale. This role is deeply technical and backend‑focused, requiring strong experience in

low‑latency systems, concurrency, and reliability engineering. You will play a key role in building the core systems that power critical flows in our platform.

Key Responsibilities Core Systems & Switching Logic Design and implement switching/routing engines for high‑throughput, low‑latency systems Build systems that handle real‑time decisioning, routing, and failover Develop and maintain protocol‑level integrations (e.g., TCP/IP, HTTP, g RPC, or domain‑specific protocols) Ensure correctness, ordering, and idempotency in transaction flows

Performance & Reliability Optimize systems for latency, throughput, and fault tolerance Design for high availability and graceful degradation Implement robust retry, backoff, and circuit‑breaking mechanisms Debug complex production issues in distributed systems

Backend Engineering Build and maintain backend services and APIs Work with data stores (relational and/or No SQL) to support high‑scale workloads Contribute to system design, code reviews, and engineering standards

Infrastructure & Observability Collaborate on deployment architecture (cloud or hybrid environments) Implement monitoring, logging, and tracing for critical paths Improve system visibility and operational readiness

Experience 5–8+ years of backend software engineering experience Proven experience building high‑throughput, low‑latency systems Experience working on switching, routing, or real‑time processing systems (telecom, payments, networking, or similar domains)

Key Competencies Technical Skills: Strong proficiency in one or more backend languages (e.g., Go, Java, C++, Rust, or similar) Deep understanding of concurrency, multithreading, and asynchronous systems Experience with network protocols and system‑level behavior Solid understanding of distributed systems fundamentals Experience with databases under high load Systems Thinking Ability to reason about failure modes, edge cases, and system limits Strong debugging and performance tuning skills Focus on building resilient, production‑grade systems

Nice to Have Experience with telecom switching (e.g., SS7, SIP) or payment switching (e.g., ISO 8583) Experience with event‑driven architectures or streaming systems (e.g., Kafka) Familiarity with kernel‑level or systems programming concepts Experience in regulated or mission‑critical environments

See also

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available