Back to jobs

Senior System Engineer

Cue
South Africa
Full-time
AI tools:
AI agents
Applications go directly to the hiring team

Full Description

Cue is a modern customer service chat software company. Our Live Chat, Chatbot and Broadcast products help businesses to provide customer support at scale across WhatsApp, Messenger, Web chat, email and Telegram. We are growing rapidly and are now expanding into the international market on our journey to become an international market leader.

We're looking for deeply experienced engineers to join our team in a role that's genuinely new: designing and architecting backend systems, then directing AI agents to build them, and critically verifying the results.

This isn't a traditional coding role. You'll spend your time understanding problems, designing solutions, writing specs, and working with AI tooling to bring those solutions to life — fast. The catch: you need the hard-won experience to know when the AI gets it wrong. That means you've built and operated real systems, dealt with real failures, and developed the instinct for what "right" looks like.

What you'll do

* Architect backend services and distributed systems from first principles

* Write clear design specs and technical proposals

* Use AI agents and tooling to accelerate implementation

* Review and verify AI-generated code and architecture with a critical eye

* Own systems end-to-end: from problem definition through production operation

* Collaborate with the team to evolve our engineering practices as AI tooling matures

What you bring

* Significant experience designing and operating microservices architectures in production

* Strong Linux, networking, and infrastructure fundamentals (SRE/platform background ideal)

* Hands-on experience with containers, Kubernetes, CI/CD, and observability

* Fluency reading and writing code — you don't need to be the fastest coder, but you need to understand code deeply

* Active use of AI coding tools and LLM-based workflows

* The confidence and experience to challenge AI output when it doesn't meet the bar

* A track record of owning projects from conception through production

* A collaborative working style — you enjoy designing in the open, sharing early ideas, and building on other people's thinking

* Genuine curiosity — you explore problems because you want to understand them, not just close tickets

Our stack

You don't need to have used all of this, but this is the world you'll be working in — and the closer your experience, the better your instincts will serve you:

* Infrastructure: AWS (multi-account), Terraform + Terragrunt, Atlantis for automated deployment

* Compute: EKS with Karpenter autoscaling, ECS Fargate, Lambda

* Messaging & streaming: Kafka (MSK), SQS (standard + FIFO) with dead letter queues

* Data: Aurora Serverless v2 (PostgreSQL), Elasticsearch, Redis (ElastiCache), InfluxDB

* Networking: Traefik ingress with NLBs, ExternalDNS, cert-manager, Route53, CloudFront, VPC peering

* Security: GuardDuty, Security Hub, Elasticsearch SIEM, CrowdSec WAF, Firezone (Zero Trust)

* Observability: Grafana, CloudWatch, Fluent Bit, Goldilocks

* CI/CD: ArgoCD, GitHub Actions (OIDC), Atlantis

What we value over credentials

We don't care about your degree, which languages you've used, or whether you can invert a binary tree on a whiteboard. We care that you've built things that worked, fixed things that broke, and learned from both.

This role is a great fit if you...

* Have been the person responsible when production breaks at 3am

* Have strong opinions about system design, backed by experience

* Are excited about AI as a tool, but not naive about its limitations

* Want to spend more time thinking and designing, and less time in an IDE

* Take ownership instinctively — you don't wait to be told

* Have war stories from production Kubernetes — OOMKills, node scaling failures, networking mysteries

* Know what it feels like when a Kafka consumer falls behind or a dead letter queue starts filling up

* Have stared at a database failover and understood why connections didn't recover

* Have debugged a problem that started at the load balancer and ended at a misconfigured secret three layers deep

* Understand that the interesting failures always cross boundaries between systems

* Believe the best architecture comes from discussion, not isolation

* Enjoy pairing, whiteboarding, and poking holes in each other's designs — and having yours poked at in return

* Get energy from working with good people, not just from solving hard problems alone

How we work

We're a small team with high standards. Every engineer here carries real ownership — there's no hiding behind process, and no waiting for someone else to pick something up.

We don't work long hours, but we work hard ones. When you're on, you're focused, making decisions, and shipping. We expect you to unblock yourself, ask for help when it's genuinely needed, and take responsibility for outcomes.

We design together, review each other's work honestly, and assume good intent. If you're the type of engineer who thrives when surrounded by peers who challenge and support you in equal measure — and who does their best work when trusted with real responsibility — you'll fit right in.

This isn't for everyone, and that's fine. If you want well-defined swim lanes and a ticket queue, we're not the right team. If you want ownership, pace, and the satisfaction of seeing your decisions running in production — we are.

Applications go to the hiring team directly