Senior DevOps Engineer (Business Applications Development)
JetBrains would not be able to operate effectively without a multitude of internal applications that serve the company's most important needs. The JetBrains Business Applications Development team develops and supports an online license store, a customer database (which stores all licenses and their history), a CRM system, the JetBrains Account license management service, various license servers, and more. With the growth of the company, our family of applications has grown as well, and our team must grow to keep pace.
Our entire infrastructure is deployed in AWS and described in Terraform. All services are launched in ECS, and for CI/CD we use TeamCity with Kotlin DSL. We also use AWS Lambda and AWS Fargate to solve infrastructure-related tasks (alerts, backups, and integrations). That is why we are looking for a DevOps Engineer who is ready and willing to write code and develop both software and infrastructure.
The technology stack we work with includes AWS, Docker (ECS/K8S), Apache Tomcat, nginx, Kotlin applications, Redis, MySQL, and ClickHouse.
As part of our team, you will:
- Design and develop infrastructure and CI/CD pipelines for a variety of services, both in-house and third-party
- Cooperate with developers and QA engineers to solve problems that arise during service operation
- Investigate incidents and tackle problems related to services
- Setup modern security practices for all the steps of the software development/delivery process
We'll be happy to have you on our team if you:
- Know Linux administration (Expert level)
- Have worked with AWS and know how to set up and use EC2, ECS, ALB, RDS, CloudWatch and other AWS services using Infrastructure as Code approach
- Have built Docker images pipelines and are experienced with container orchestration tools
- Are familiar with the Infrastructure as Code (IaC) approach, especially if you know how to use Terraform and how to apply infrastructure changes while working in a team of other engineers
- Have built CI/CD using modern tools (TeamCity/Jenkins/GitLab CI)
- Can analyze metrics and logs and provide an easy-to-use way of keeping developers attention on what is important while services are running in a production environments
- Have a practical experience in setting up alerts/alarms for the services you operate
- Can write code in scripting languages (Bash/Python/Ruby/etc.)
- Have experience with databases (SQL, NOSQL, Purpose-Built)
We’ll be especially thrilled if you:
- Have experience in Java application administration (within docker containers)
- Have a hands-on experience with Kubernetes ecosystem
- Have completed projects that use event-driven architecture patterns
- Understand when, where and why to use serverless services
- Have an experience with services running in a multicloud environment (AWS, CGP, on-premise)
- Can read and write code in Kotlin/Java
- Speak English well
Benefits and perks
- Fascinating work in a friendly team.
- A flexible working schedule.
- 30 days of paid vacation (local regulations apply).
- An office library with specialized work-related books and magazines.
- A comfortable working environment, ergonomic workstations, a gym and leisure facilities, and a range of commuter benefits.
- Excellent opportunities for professional and personal development, including travel to professional conferences worldwide, access to the LinkedIn Learning platform, and more.
- Additional benefits include: lunch, free refreshments, and snacks provided in the office, and much more.