About the Company:
Vama is an innovative chat and payment platform committed to revolutionising communication and transactions. Our team is passionate about creating seamless, secure, and user-friendly experiences for our customers.
About the Role:
We are seeking a skilled Senior Backend Developer to join our talented team. As a backend developer at Vama, you will be vital in designing, developing, and maintaining the backend infrastructure that powers our cutting-edge chat and payment platform. If you are a tech enthusiast with a strong background in Go, distributed systems, and cloud infrastructure, we want to hear from you.
Responsibilities:
- Collaborate with cross-functional teams to design and implement backend services using Golang and other relevant technologies.
- Work with databases such as Cassandra and ScyllaDB, ensuring efficient data storage, retrieval, and maintenance.
- Implement messaging solutions using NATS.io or similar messaging brokers for reliable communication within our messaging app architecture.
- Utilise in-memory caching systems like Redis to optimise data access.
- Implement and maintain infrastructure as code using Docker and Terraform.
- Monitor, troubleshoot, and optimise system performance using Grafana, Loki, and Prometheus.
- Contribute to the development of scalable and robust cloud-based solutions on GCP, including CloudRun, BigQuery, and Datastore.
- Write clear and concise API documentation and design APIs that adhere to best practices using OpenAPI Gateway.
- Collaborate with front-end developers to integrate user-facing elements using server-side logic.
- Write unit and end-to-end tests to ensure the reliability and stability of developed features.
- Demonstrate expertise in Unix systems and a comfort level with Bash scripting.
Qualifications:
8+ years of professional experience as a Backend Developer.
Required Skills:
- 3+ years of professional experience in Golang.
- Solid understanding of databases, tables, indices, and distributed systems.
- Knowledge of parallelism, locking, synchronisation, and race conditions in software development.
- Familiarity with caching mechanisms and cache invalidation strategies.
- Experience in cloud infrastructure, preferably GCP or AWS.
- Proficiency in Unix systems and comfort in the terminal.
- Strong commitment to writing comprehensive tests for all developed features.
- Good understanding of API design principles and best practices.
Preferred Skills:
- Previous experience with Cassandra or ScyllaDB and other distributed databases.
- Familiarity with Docker, Redis, Terraform, and Grafana.
- Experience with CloudRun, BigQuery, and Datastore.
- Knowledge of NATS.io or similar messaging brokers.
- Knowledge of Kubernetes (experience optional but beneficial).
Pay range and compensation package:
Competitive salary and benefits.
Equal Opportunity Statement:
Include a statement on commitment to diversity and inclusivity.