Напиши текст вакансии для должности "Senior Software Developer (Toolbox Enterprise)". Название компании: "JetBrains". Расположение: Санкт-Петербург. График работы: Полный день. Опыт работы: От 3 до 6 лет. Ключевые навыки: 

We are working on a product that will help companies manage their IntelliJ-based IDEs on their developers’ machines. Large companies have dedicated teams supporting the development process, including making sure the IDEs are running smoothly, and we want to help them work more efficiently. Shaving off even 10 minutes per developer per day would add up to large savings for a company with thousands of developers. Toolbox Enterprise is an on-premises server solution that customers install on their network, which means it can work even in isolated environments with no internet connection. The server collects analytics such as data about freezes and exception reports from developers’ machines. Toolbox Enterprise also allows the customer to manage which specific builds of IntelliJ-based IDEs and/or plugins are available to their employees. The main component of our product is the on-premises server, which we’re developing using Kotlin and SpringBoot. It is a reactive application from top to bottom that communicates with JetBrains services, databases, and file storages using Project Reactor, R2DBC, and other reactive APIs. The server collects data from IntelliJ-based IDEs and distributes configurations and binaries back to hundreds of clients. We are looking for a Senior Software Developer to join our team and help make Toolbox Enterprise as good as it can be. You will work with the following components of the product:   Server-side (Kotlin, SpringBoot, Project Reactor, Docker, OAuth)   Client-side (JavaScript, React, Redux)   The Toolbox App (Kotlin, Jetpack Compose)   The IntelliJ-platform plugin (Java, Kotlin, IntelliJ SDK)   In this role, you will:   Create, design, and implement new cross-product features.   Integrate different solutions together based on customer feedback.   Participate in the development of various internal and open-source projects at JetBrains.   Be a part of our brand-new ambitious team.   We expect you to:   Have previously developed in Java or Kotlin.   Speak English well enough to communicate with your teammates and with other JetBrains colleagues.   Be good at solving complex real-world tasks.   Have a good knowledge of basic algorithms, data structures, and the principles of multi-threaded applications.   Understand how client-server systems are designed and implemented.   Know how to design simple yet powerful architectures.   Be able to learn new technologies quickly.