Golang developer
Role details
Job location
Tech stack
Job description
Develop and maintain applications: Design, build, and deploy highly scalable and reliable backend services using Go (Golang). Collaborate on architecture: Work with a team of engineers to design and implement a microservices architecture. Write clean, efficient code: Write well-documented, tested, and maintainable code with a focus on performance and concurrency. Integrate with cloud services: Develop and deploy applications in a cloud environment, primarily on AWS. Ensure system reliability: Participate in code reviews, optimize system performance, and troubleshoot issues to ensure high availability and reliability. Work with data: Design and interact with various databases, including both relational and non-relational systems (e.g., PostgreSQL, Redis, DynamoDB). Collaborate and communicate: Work closely with cross-functional teams, including product managers, designers, and other engineers, to define and implement new features.
Requirements
Experience: Proven professional experience as a Golang developer. Core Competencies: Strong knowledge of Go programming language, its concurrency primitives, and goroutines. Distributed Systems: Experience designing and building highly scalable, distributed systems. Cloud Platforms: Hands-on experience with cloud platforms, preferably AWS (including services like ECS, Lambda, and RDS). Containerization: Proficiency with Docker and Kubernetes. Databases: Experience with both SQL and NoSQL databases. APIs: Experience building and consuming RESTful and gRPC APIs. Version Control: Familiarity with Git and CI/CD pipelines. Nice-to-Have Skills Experience with other programming languages like Python or Java. Knowledge of event-driven architecture and message queues (e.g., Kafka). Experience in the automotive or connected vehicle industry. Familiarity with observability tools like Datadog