Job Summary:
We are seeking a 8- 10y experienced Senior Golang Developer, will be responsible for crafting high-performance, scalable, and resilient distributed systems that handle large volumes of traffic and data.
Key Responsibilities:
• Write reusable, testable, and efficient code, following best practices and design patterns.
• Optimize existing systems for speed and improve their fault tolerance, functional coverage, unit coverage
• Contribute to all phases of the development lifecycle.
• Develop and deploy microservices architectures.
• Automate the processes and implement continuous delivery.
Technical Skills and Expertise:
• Proficient with Go and its standard library.
• Deep understanding of Goroutine and channel usage, and adept at writing concurrent code.
• Experience with Go's templating, web frameworks, and tools, such as Echo, Gin, or Beego.
• Familiarity with Go's toolchain, including go vet, go fmt, and race detector.
• Knowledge of Go's package ecosystem and dependency management tools like Go Modules.
• Expertise in implementing RESTful APIs and understanding of gRPC for inter-service communication.
• Experience with SQL and NoSQL databases, including PostgreSQL, MySQL, MongoDB, and Redis, and the ability to design and optimize queries.
• Understanding of server-side templating languages and websockets.
• Proficiency in software containerization platforms like Docker and container orchestration with Kubernetes.
• Experience of Infrastructure as Code (IaC).
• Familiarity with continuous integration (CI) and continuous deployment (CD), and relevant tools such as Jenkins, ArgoCD.
• Solid understanding of fundamental software engineering principles and Agile methodologies.
• Experience with automated testing platforms and unit tests.