About the Role
Senior Go Developer to design, build, and operate high-performance Go-based microservices, deployed on Kubernetes, and integrate AI / ML models into production systems in collaboration with Data Science / ML teams.
Key Responsibilities
- Design & Development
- Architect, design, and implement microservices in Go following best practices (clean code, SOLID principles, hexagonal / clean architecture when appropriate).
- Build robust, scalable, and secure APIs (REST / gRPC) for internal and external consumers.
- Collaborate with Data Scientists / ML Engineers to integrate AI / ML models into production services (model serving, feature pipelines, inference endpoints).
- Write high-quality, testable, and maintainable code, including unit, integration, and contract tests.
- Microservices & System Architecture
- Decompose monoliths or larger systems into well-bounded microservices with clear ownership and interfaces.
- Design and implement inter-service communication (gRPC, REST, messaging / streaming) with an eye on latency, reliability, and observability.
- Contribute to the overall system architecture, including data flows, API design, and integration with external systems.
- Kubernetes & Cloud-Native Operations
- Containerize applications (Docker or similar) and define Kubernetes manifests / Helm charts for deploying services.
- Collaborate with the DevOps / SRE team to ensure services are resilient, observable, and autoscalable in Kubernetes.
- Implement and maintain monitoring, alerting, and logging (e.g., Prometheus, Grafana, OpenTelemetry, ELK, etc.).
- Participate in performance tuning, load testing, and capacity planning for production workloads.
- AI / ML Integration.
- Work with ML teams to operationalize models :
- Model inference services
- Feature preprocessing in real-time
- Batch / offline inference pipelines
- Ensure latency, scalability, and reliability of AI / ML-driven microservices.
- Help define and implement A / B testing, canary deployments, and monitoring for model performance and drift (in collaboration with ML team).
- Technical Leadership & Collaboration
- Act as a technical mentor to mid-level and junior developers (code reviews, pair programming, design reviews).
- Contribute to and help enforce engineering standards, coding guidelines, and best practices.
- Participate in architecture and technical roadmap discussions, providing input based on hands-on experience.
- Collaborate closely with Product Managers to refine requirements into technical solutions and clear delivery plans.
- Quality, Security & Reliability
- Champion test-driven development (TDD) and / or robust testing strategies.
- Ensure solutions adhere to security best practices (authentication, authorization, data protection, secrets management).
- Contribute to incident response and post-mortems, and drive improvements to prevent recurrence.
Technical Skills :
5+ years of professional software development experience, with 3+ years focused on Go (Golang).Goroutines and channels (concurrency patterns)Context usage and cancellationError handling patternsModules and dependency managementExperience building high-performance backend services and APIs (REST, gRPC).Microservices & Distributed SystemsHands-on experience designing and implementing microservice architectures.Understanding of service discovery, API gateways, load balancing, and fault tolerance patterns (circuit breakers, retries, backoff, rate limiting).Solid grasp of distributed systems concepts : eventual consistency, idempotency, transactions across services, etc.Kubernetes & CloudPractical experience deploying, running, and debugging applications on Kubernetes (e.g., GKE, EKS, AKS, or self-managed clusters).Familiarity with :Writing / understanding Kubernetes manifests (Deployments, Services, ConfigMaps, Ingress, etc.)Containerization with Docker or equivalentCI / CD pipelines for building and deploying Go servicesExperience with at least one major cloud provider (AWS, GCP, Azure, etc.).AI / ML Concepts (for Integration)Understanding of basic ML concepts : training vs. inference, features, model versions, evaluation metrics.Experience integrating machine learning models into applications or microservices (using frameworks, REST endpoints, or libraries).Familiarity with patterns likeOnline / real-time inference (You don't need to build models from scratch, but you should be able to collaborate effectively with ML teams and design production-ready integration.)Batch inferenceFeature engineering pipelinesData & StorageStrong experience with relational databases (e.g., PostgreSQL, MySQL) and SQL.Familiarity with NoSQL / datastores (e.g., Redis, MongoDB, DynamoDB, etc.).Understanding of caching, message queues / streaming (e.g., Kafka, RabbitMQ, NATS, etc.).Testing, Observability & ToolingExperience with testing in Go (testing package, mocks, integration tests).Familiarity with observability tools : metrics, logging, tracing (e.g., Prometheus, Grafana, Jaeger,OpenTelemetry).Experience using Git and standard development workflows (code review, branching strategies).Soft SkillsStrong communication skills : able to explain complex technical topics to both technical and non- technical stakeholders.Ownership mindset : you care about the entire lifecycle of the service – from design and implementation to deployment and monitoring.Mentorship and leadership capabilities : willing to support, guide, and challenge peers constructively.Comfortable working in an agile environment (Scrum / Kanban), with iterative delivery and continuous improvement.Problem-solving and critical thinking : you enjoy digging into complex issues and finding pragmatic solutions.Skills Required
Golang, Distributed Systems, Postgresql, Dynamodb, Prometheus, Go, Kafka, Grafana, Redis, Microservices, GRPC, Rabbitmq, Git, Rest, Gcp, Docker, Mysql, Mongodb, Azure, Kubernetes, Aws