About the Role
We are seeking an experienced Go Developer who is passionate about building scalable, high-performance applications and working with event-driven architectures. The ideal candidate will have strong expertise in Golang, microservices, and messaging systems, with the ability to debug and optimize complex systems from scratch.
Mandatory Skills
-
Experience: Minimum 4+ years in backend development with Go (Golang).
-
REST API (mux/GIN, gRPC): Proven experience in API development and service integration.
-
Goroutines: Expertise in Go’s concurrency model for high-performance applications.
-
Messaging Queues (Kafka/RabbitMQ): Strong exposure to building event-driven systems.
-
Programming (Golang, Java): Hands-on expertise in Go, with working knowledge of Java.
-
Kafka: Practical experience with distributed event streaming platforms.
-
Frameworks (kit, gin): Strong experience in Go frameworks for microservices development.
-
Microservices & Design Patterns: Deep understanding of distributed architecture and software design patterns.
-
Databases: Proficient in PostgreSQL and MongoDB, with strong database design skills.
-
Version Control: Strong working knowledge of Git and collaborative workflows.
Key Responsibilities
-
Design, develop, and maintain highly performant backend services using Go (Golang).
-
Build and integrate REST APIs, gRPC services, and other backend components.
-
Work with goroutines and concurrency patterns for scalable, distributed systems.
-
Implement and optimize messaging solutions using Kafka or RabbitMQ.
-
Apply microservices architecture principles and established design patterns.
-
Collaborate with cross-functional teams (Developers, Architects, QA, DevOps) to deliver high-quality products.
-
Write clean, maintainable, and testable code, following best practices.
-
Debug and resolve issues in complex, distributed systems.
-
Participate in Agile ceremonies and contribute to continuous improvement.
-
Design and maintain database schemas with PostgreSQL and MongoDB.
-
Work with Camunda (optional) for workflow automation and process orchestration.
-
Use GitHub Actions (optional) for CI/CD pipelines and automation.
-
Manage version control and branching strategies using Git effectively.