About the position
ENVIRONMENT:
Our client is a specialist technology consultancy that provides expert developers to leading banking, financial services and technology organisations across South Africa. They are seeking a Go Developer to join a backend engineering team responsible for designing, developing and maintaining modern, high-performance services, APIs and microservices. The role is suited to a developer who writes clean, efficient and reliable code, understands distributed systems and is comfortable working within cloud-native, containerised environments.
DUTIES:
- Design, develop and maintain backend services and microservices using Go (Golang).
- Build and integrate RESTful and gRPC APIs with internal and third-party systems.
- Work with relational and NoSQL databases, designing data models and writing efficient queries.
- Build services that are reliable under load, using Go's concurrency features (goroutines and channels) effectively.
- Containerise and deploy services using Docker and Kubernetes on a cloud platform.
- Write clean, tested and well-documented code, and take part in code reviews.
- Contribute to CI/CD pipelines, monitoring and production support.
- Collaborate with product owners, architects, testers and other developers in an Agile team.
- At Senior level, guide and mentor intermediate developers and contribute to technical design and architecture decisions.
REQUIREMENTS:
- Intermediate: around 3 to 5 years' commercial software development experience, with solid hands-on Go. Senior: 5+ years, with strong production Go experience.
- Strong experience building backend services, REST APIs and microservices in Go.
- Good understanding of concurrency, distributed systems and performance optimisation.
- Experience with gRPC, message queues or event streaming (such as Kafka) advantageous.
- Experience with relational databases (such as PostgreSQL or MySQL) and ideally a NoSQL database (such as MongoDB or Redis).
- Hands-on experience with Docker, Kubernetes and a cloud platform (AWS, Azure or GCP).
- Experience with Git, CI/CD pipelines, automated testing and Agile ways of working.
- Banking, payments or financial services experience advantageous.
- A relevant degree or diploma in Computer Science, IT or a related field advantageous.
ATTRIBUTES:
- Strong problem-solving and analytical skills, with good attention to detail.
- Clear communicator who works well in a team and with business stakeholders.
- Takes ownership of work and delivers reliably to deadlines.
- Curious and keen to keep learning, especially around cloud-native and distributed systems.
Desired Skills: