Position: Senior Backend Golang Engineer
Company: Marusich
Experience required: 3y
Category: Golang
English level: upper
Published: 2022-05-01T00:00:00+03:00

Now our company focused on creating internal tools for making supply chains more efficient and productive. There are some new incoming projects related to improving processes of comparing orders from the ordering tool (OT), goods received from the FCMS, and invoices from vendors. Some regions have developed stand-alone tools (i.e. Shark in AU), however, those tools do not scale company-wide and do not enable finance teams to work within the tools they are already using (i.e. Oracle).

Responsibilities:
Our Backend Engineers assume development and operational responsibility for the our platform that serves millions globally to deliver the best experience for our customers and internal users.

-  Take ownership of the architecture, design, development, deployment and operations of the microservices you will develop, using DevOps practices, pair programming and other cutting edge methodologies;
-  Be active, solution-oriented member of autonomous, cross-functional agile teams collaborating with Product Owners, Front-end Engineers, Designers, and Business Intelligence teams;
-  Having an in-depth understanding of our core product and architecture, and act as ambassador for software solutions offering support and mentorship to colleagues;
-  Work with state-of-the-art technologies like Kafka, RabbitMQ, Spark, Kubernetes, Istio, and more.

Requirements:
- English Upper-Intermediate;
- Solid back-end experience within Microservice architecture using Golang;
- Background working with event-driven architectures using Kafka;
- Experience working with relational and document databases, including PostgreSQL, MySQL, MongoDB;
- Experience working with Docker and container orchestration technologies such as Kubernetes;
- As well as experience in CI/CD methods and practices;
- Practical experience of TDD, BDD, DDD and distributed architectural patterns;
- Experienced in end-to-end development processes, including unit, integration & functional testing, distributed architecture, application tuning/profiling, and continuous integration;
- You thrive in the opportunity to collaborate and mentor team members, while also sharing practical knowledge and trends.