Senior Golang Backend Developer (Docker & SQL/NoSQL)
We're seeking an experienced Golang Backend Developer to join our innovative team on a remote basis (Remote / Worldwide). In this role, you'll develop and maintain scalable backend systems using Golang, implement containerization with Docker, and work with both SQL and NoSQL databases. The ideal candidate has a strong foundation in backend development with specialized expertise in Go programming language and modern cloud infrastructure.
Key Responsibilities
- Design and develop high-performance, scalable backend services using Golang.
- Architect and implement microservices using Go's powerful concurrency features.
- Create and optimize RESTful APIs for frontend and third-party integrations.
- Containerize applications using Docker and implement efficient deployment strategies.
- Design and manage SQL and NoSQL database schemas and optimize query performance.
- Collaborate with frontend developers to integrate user-facing elements with server-side logic.
- Implement comprehensive automated testing, including unit and integration tests.
- Set up and maintain CI/CD pipelines for continuous deployment.
- Participate in code reviews and provide constructive feedback to peers.
- Troubleshoot and debug production issues in a timely manner.
- Document code, APIs, and technical specifications for knowledge sharing.
- Stay current with emerging technologies and best practices in Go development.
Required Skills
- 2+ years of hands-on development experience with Golang (Go 1.22+).
- 4+ years of overall backend development experience in any language.
- Proficient knowledge of Docker containerization and related workflows.
- Strong experience with SQL databases (PostgreSQL, MySQL) and query optimization.
- Practical knowledge of NoSQL solutions (MongoDB, Redis, etc.) for appropriate use cases.
- Excellent understanding of RESTful API design principles and best practices.
- Experience with version control systems, particularly Git and GitHub/GitLab workflows.
- Strong problem-solving abilities and analytical thinking skills.
- Ability to write clean, maintainable, and efficient code following Go idioms.
- Good communication skills for effective collaboration in a remote team environment.
- Self-motivated attitude with the ability to work independently when needed.
Nice to Have
- Knowledge of Azure cloud platform and services (AKS, App Service, Azure Functions).
- Experience with Kubernetes for container orchestration and management.
- Familiarity with CI/CD tools such as Jenkins, GitLab CI, or GitHub Actions.
- Understanding of microservices architecture patterns and distributed systems.
- Experience with message queuing systems like RabbitMQ, Kafka, or NATS.
- Contributions to open-source Go projects or personal projects on GitHub.
- Knowledge of infrastructure as code using Terraform, Pulumi, or ARM templates.
- Experience with observability tools like Prometheus, Grafana, and ELK stack.
- Understanding of security best practices for backend systems and APIs.
- Experience with GraphQL as an alternative to REST APIs.
