Role : Golang Developer (Mid Level)
Experience : 5 - 8 Years
Notice : Immediate - 20 days
Required Qualifications
- Must-Have :
- Professional Experience :
- 5-8 years of professional backend development experience.
- Go Proficiency :
- Strong proficiency in Go (at least 3+ years of hands-on experience in a professional setting), with a solid understanding of its concurrency model and standard library.
- API Development :
- Experience building and consuming RESTful APIs.
- Database Skills :
- Good working knowledge of relational databases (PostgreSQL / TimescaleDB preferred) and experience with efficient data access patterns in Go.
- Testing :
- A strong commitment to quality with experience in writing tests for Go applications.
- Containerization :
- Familiarity with Docker for containerizing applications.
- Problem-Solving :
- Excellent problem-solving and analytical skills, with the ability to reason about concurrent and distributed systems.
- Nice-to-Have (Highly Desirable) :
- Financial / Crypto Domain Interest :
- An interest in or experience with FinTech, market data systems, or cryptocurrency.
- gRPC / Protobuf :
- Exposure to building services with gRPC.
- Kubernetes :
- Familiarity with deploying applications to a Kubernetes environment.
- Performance Tools :
- Some experience with Go's profiling tools (e.g., pprof).
- CI / CD :
- Experience working with continuous integration and deployment pipelines.
Key Responsibilities
Develop and Maintain Go Microservices :Write clean, idiomatic, and efficient Go code to build and maintain features for our high-performance backend services.Contribute to critical components like the real-time crypto pricer, oracle signer, and data aggregator.Implement and manage concurrent routines effectively using goroutines and channels.Build and Integrate APIs :Develop and consume RESTful and potentially gRPC APIs for low-latency, internal service-to-service communication.Work with other teams to ensure seamless integration between Go services and the rest of the platform.Ensure Code Quality and Reliability :Write comprehensive unit and integration tests to ensure the correctness and robustness of your code.Actively participate in code reviews, providing and receiving constructive feedback to maintain high code quality.Debug and troubleshoot issues in a distributed, containerized environment.Collaborate within an Agile Team :Work effectively within an agile squad, participating in sprint planning, daily stand-ups, and retrospectives.Collaborate with senior developers on design decisions and architectural patterns.