Position: Go Developer
Company: Anadea
Experience required: 3y
English level: upper

Requirements:
- 4+ years of back-end development with mainly C++/JAVA/GO/Rust/C and other low-level languages
 - 2+ years of experience with Go and micro-service architecture
 - Strong understanding of Docker and Networking ( including Cluster-networking )
 - Deep experience with both SQL and NoSQL databases
 - Self-ops, ( experience debugging GitLab-CI templates, Docker-files, building new CI-pipeline for new services based on needs )
 - Experience working with different protocols and schema’s ( GRPC, JSON-api, RESTFUL and so on, WebSocket, streams )
 - Experience with Cloud ( AWS, GCP ) as bonus
 - Strong usage of table-tests and load-testing
 - Strong usage of integration tests through test-containers, Makefile, docker and so on
 - Parallel tests
 - Good knowledge of Linux commands
 - Experience working with distributed systems
 - Experience working with message-buses and message-brokers
 - Experience working with high-loaded services
 - Experience working with legacy-code written in other languages as part of application
 - We need English skills in both categories - write and speech. It’s very important to document solutions and requirements, we expect clean, but at the same time deeply-commented code. You need to be confident and be able to share your knowledge, speak with teammates, and present results of your work

Responsibilities
 - You will mostly work with back-end services, sometimes integrate it with some front-end parts
 - Most of the applications will contain legacy-code, it might be big projects, you’ll need to be able to debug and identify issues in such situations
 - Most of the time in projects where we’re working - it’s implementation of the new code-base and new-services, however they might be based on the legacy-requirements or legacy code
 - We expect candidate to produce solid volume of code, including tests. 
 - Sometimes need to think more before start to do something, but routine tasks such as documentation and writing of the tests is required in our team
 - We expect understanding of estimating your work from the point of time. It’s important for big projects and big implementations to follow final goal and be ready to solve it

We offer
 - You will get freedom to show your technical and architecture ambitions, and eventually be rewarded for it, however until you’ll be fully confident - you’ll get support
 - Projects will be challenging and you can grow up there for any level you would like
 - We also aim to expand our client-base with Rust-projects in future. 
 - Our goal is to provide complex back-end services with full end-to-end pipeline, deploying, clustering, monitoring, architecture and implementation, for projects with high level of difficulty