Team Lead GO

Team Lead GO


Responsibilities

  • Designing and developing high-load services from scratch
  • Identify problems in application's code and form refactoring tasks, decompose story and tasks
  • Tech debt structuring and management
  • Conducting code review
  • Analysis of product requirements, design of development plans
  • Constant interaction with Sub-Stream Software Engineers, technical support, project managers, and other stakeholders to optimize processes and improve product quality
  • Responsibility for product quality and reliability
  • System technical analysis and elimination of bottlenecks
  • Improving system stability under heavy loads

Obligatory:

  • Strong proficiency in the Go programming language with a solid understanding of its core concepts and idiomatic usage and the principles of writing concurrent code
  • At least 4 years of practical experience in commercial Go development
  • 1+ year experience managing development team of 3+ people
  • Experience in developing high-loaded applications (thousands of RPS)
  • Deep understanding of synchronization mechanisms
  • Basic understanding of Linux principles and commands
  • Strong skills in code profiling and debugging.
  • Strong problem-solving skills and ability to analyze complex technical issues.
  • Experience in writing unit tests and integration tests.
  • Experience working with message brokers and a deep understanding of how they operate.
  • Experience with external caching servers
  • Advanced understanding of microservices architecture design principles
  • Confident command of SQL databases and skills in working with them
  • Experience with OpenAPI, Protobuf and GRPC
  • Deep understanding of CI/CD
  • Knowledge of SOLID, design patterns, the experience of applying them
  • Experience with other programming languages and technologies (e.g., PHP, Docker, Kubernetes) is a plus.



Report Page