← All jobs

Senior Go Developer

About the role

• Design, develop, and maintain robust, scalable, and reliable backend services according to business needs
• Drive technical research, architecture design, and implementation of backend services and new features
• Collaborate across teams to deliver cohesive and optimal solutions
• Participate in code reviews and architectural discussions
• Help raise the overall technical level of backend services
• Write clean, effective, and maintainable code according to company standards
• Own the backend services lifecycle, including delivery, monitoring, and production maintenance
• Set up and maintain observability infrastructure, including metrics, logging, dashboards, and tracing
• Mentor and guide other engineers while advocating best practices and high standards
• Work on the end-to-end passenger experience for a ride-hailing application
• Complete English check, internal technical interview, client interview, and client cultural-fit interview stages

• Intermediate English proficiency
• Candidate must be located in the EU, Georgia, Armenia, Serbia, or Kazakhstan
• Ability to work in the CET time zone
• 5+ years of commercial backend engineering experience in production environments
• Strong Go expertise, including concurrency, synchronization primitives, context propagation, goroutine lifecycle management, and graceful shutdown patterns
• Experience building and supporting high-load distributed systems
• Recent product development experience involving complex business logic and evolving requirements
• Strong SQL and data modelling skills, including schema design, joins, aggregations, composite indexes, data type selection, query analysis, replication, partitioning, and sharding
• Experience with MySQL or PostgreSQL
• Strong understanding of caching strategies, including Redis, cache-aside, warm-up, and background refresh
• Experience with synchronous and asynchronous inter-service communication, including gRPC and message brokers, delivery guarantees, idempotency, and load-balancing trade-offs
• Deep understanding of microservice architecture patterns and efficient client-server interactions, including trade-offs and limitations
• Hands-on experience with observability tools and practices, including metrics, logging, distributed tracing, alerting, and Go profiling with pprof
• Understanding of non-functional requirements, SLA, SLO, and SLI
• Experience with Docker, Kubernetes, CI/CD pipelines, and cloud platforms
• Ability to write maintainable, testable code with solid unit and integration test coverage
• Proficiency with Git and modern code review workflows
• Ability to explain project architecture at the required level of depth
• Ability to independently transform ambiguous problems into solutions by clarifying requirements and workload
• Nice to have: event-driven architecture experience with Kafka, NATS, or RabbitMQ
• Nice to have: familiarity with infrastructure-as-code tools
• Nice to have: Go performance profiling and optimisation using pprof and trace
• Nice to have: familiarity with design handoff tools and cross-platform collaboration workflows
• Nice to have: experience using AI-assisted development tools

• B2B contract with Bonapolia
• Monthly invoicing and payment, usually on the same schedule the client pays Bonapolia (usually 30 days)
• Contract written under the candidate's country's law
• Bonapolia handles client-side paperwork, including MSA, NDA, and invoicing