Overview
Skills
Job Details
Job Description
We are seeking a skilled and experienced Go Microservices Developer to design, build, and maintain scalable, efficient, and secure microservices. The ideal candidate will have expertise in Go programming, service-oriented architecture, and modern cloud-based solutions. This role requires strong analytical skills, hands-on experience with databases, and a deep understanding of monitoring, logging, and self-healing mechanisms.
Primary Responsibilities:
Microservices Development:
Write scalable and efficient microservices using Go.
Utilize Go modules, concurrency (goroutines, channels), and standard libraries effectively.
Develop and maintain RESTful APIs for seamless service-to-service communication.
System Design and Integration:
Implement design patterns such as Singleton, Circuit Breaker, and Retry for resilient services.
Work with databases like Oracle, MongoDB, DB2, MySQL, and PostgreSQL.
Integrate Prometheus, Fluentd, and Loki for log collection, aggregation, and monitoring.
Use Grafana to design and maintain dashboards for data visualization.
Automation and Self-healing:
Design and implement workflow orchestration solutions for automation and self-healing.
Integrate Conductor with microservices for task execution and recovery workflows.
Containerization and Orchestration:
Use Docker for containerizing services.
Manage and orchestrate deployments with Kubernetes.
Data Analysis:
Perform data analysis to find insights, correlate events, and detect anomalies.
Secondary Responsibilities:
Implement efficient connection pooling for database connections in Go.
Create automated build, test, and deployment pipelines using Jenkins.
Integrate structured logging and distributed tracing for better observability.
Implement TLS encryption and manage secrets to ensure secure communication.
Set up API gateways for routing and load balancing to manage traffic effectively.
Write comprehensive unit and integration tests in Go to ensure code quality.
Use Bitbucket for source code management, including version control and collaboration.
Qualifications:
Proficiency in Go programming and strong understanding of its ecosystem.
Hands-on experience with databases, monitoring tools, and cloud-native applications.
Familiarity with containerization, orchestration, and DevOps practices.
Familiarity with modern authentication mechanisms such as OAuth2 and JWT.
Strong problem-solving skills and ability to work in a fast-paced environment.
Knowledge of distributed systems and scalable architectures.
Experience with API gateways.
Excellent communication and teamwork skills.