Seeking talented GoLang Engineers with three to seven years of experience to join our Platform Engineering Team focussing on developing Microservices/API in Go.
As a Go Microservices/API Developer, you will be responsible for designing, implementing, and maintaining high-performance, scalable Go Components, Microservices / API. You will partner with Leads / Architects in collaborative environment to build, deploy and maintain the solutions in both Non-Production and Production environments.
Technical Qualifications:
- Hands-on experience with Go programming language, Go Frameworks / Tools, including concurrency patterns, channel mechanisms, and memory management.
- Experience with other languages like Java, Springframework, Javascript, YAML, JSON, SQL etc..
- Exposure to and experience with gRPC (HTTP2 Protocol buffers)
- Strong knowledge of common Goroutine and channel patterns
- Strong software design and programming fundamentals of gRPC and REST API Architectures
- Good understanding of dependency management tools such as Godep, Sltr, etc
- Knowledge of Go templating language and code generation tools, such as Stringer
- Understanding of Relational, and NoSQL Databases
- Basic Understanding of Basic Auth, two-way SSL, oauth2 or token-based security
- Experience in developing back-end components and connecting applications to other Microservices
- Experience with Bitbucket, Git/GitHub, or other version control systems
- Ability to develop and extend CI/CD pipelines (Jenkins, Docker)
- Fundamental understanding of GitOps, Kubernetes, Cloud Infrastructure
Preferred Qualifications:
- Experience porting Java Springboot Microservices to GoLang
- Experience in Envoy based API Gateway products
- Experience in API Security based on OAuth, OpenID Connect 2.0, JWT token based authentication flows
- Experience in building scalable services to handle high concurrency / throughput
- Deployment in Kubernetes infrastructure
Generic Qualifications:
- Experience in communicating with users, other technical teams, and management to collect requirements, describe software product features, and technical designs
- Ability to manage time wisely across projects and competing priorities, meet agreed upon deadlines, and be accountable for work
- Experience in working with a cross-functional team or large-scale software development life cycle, including waterfall and agile methodologies
- You must love staying current with technology and mentoring others
- Able to write maintainable and functionally tested modules
Education:
- Bachelors / Masters degree in Computer Science or Engineering
Note:
This is a short term contract position. Later based on engagement can be converted to full time.