.Job DescriptionHi there!We are Semrush, a global IT company developing our own product – a platform for digital marketers. This is our role Java Developer for those who want to turn ideas into reality using code, algorithms, and maybe a bit of magic.Tasks in the role:Help the team to transfer several legacy backend services to the microservice architecture and k8sIdentify and mitigate new risks in a technical base to evolve the product and make new users happyDevelop and grow core functionality of the product, implement new features to make the product perform in new niches for new usersContribute to team technical strategy with your knowledge and experience to reach new goalsParticipate in the planning of architecture and quality aspects of the new featuresCreate the server-side code with Kotlin/JavaCreate the autotestsContribute to the product observability and monitorability. Participate in improving, supporting, and analyzing application metrics and alertsTroubleshoot and fix the issuesPerform a refactoring/improvements of legacy functionalityPerform code review sessionsWork with the issues from support specialists (on duty)Be proactive and productiveRequirements:Who we are looking for:Strong expertise in JavaStrong expertise in Spring and Spring BootKnowledge of architectural design patterns and principlesExpertise in creating and optimizing SQL queriesExperience with queue brokers (RabbitMQ)Experience with Docker and k8sExperience with any observability stack (logging-tracing-metrics)Not required, but a plus:Experience with GitLabCIKotlinNon-SQL databases and MongoDB in particularRedisCloud stack (GCP or other vendors)Application monitoringSocial Networks APIAnd develop and improve infrastructure through DevOps practiceA bit about the team:Our Solar team is developing tools for Social Media Marketers to cover their needs, from publishing content to performing competitive analysis. We are looking for a new colleague - Java Developer!We're looking for someone who wants to develop. There are many experienced colleagues on the team, and they will always be able to help and guide you. It's important for us that our future Java Developer is ready to work in a team and make decisions together.Our stack:Backend: Java, Kotlin, PostgreSQL, MongoDB, Redis, Kafka, RabbitMQWe're also using GitLab CI, Docker, Kubernetes(GKE), and Google CloudWorkstations: MacWe will try to create all the right conditions for you to work and rest comfortably:It's up to you to decide what work format works best for you