Senior DevOps Engineer (Space)
We are working on a new ambitious project, JetBrains Space – a tool for developer teams to make their day-to-day work more exciting. We offer both a cloud-based service, https://jetbrains.space, and a self-hosted version.
Working closely with the development team and helping make product decisions, we believe that infrastructure is as important for the product's success as its source code.
Our technology stack:
- AWS as the cloud provider.
- NLB and ALB as load balancers, and ECS for service orchestration.
- Several clusters of apps written in Kotlin.
- Several regions in AWS.
- RDS, S3, Elasticsearch, and ElastiCache Redis.
- Two types of traffic: L7 for HTTP and L4 for SSH Git (challenge!).
- ELK for logging, and Grafana for metrics.
- AWS CloudWatch and StatusCake for monitoring.
- HashiCorp Terraform for Infrastructure as Code.
- We talked about our architecture in March 2019, but a lot has changed since then:
- Architecture: https://www.youtube.com/watch?v=tr9osyj9T2s
- How we use CodeDeploy: https://www.youtube.com/watch?v=Utqyc0Gp-KQ
How we work:
- We are big fans of Everything as Code. We strive to minimize manual work and maximize automation.
- All our stages are described in code, and developers can easily deploy a new stage on their own, for example, from their brаnch.
- We deploy with zero downtime, several times a week, and are working on getting this time down even more.
- To avoid creating a bottleneck in product development, we involve developers in managing the infrastructure so that they can handle everything that their work requires on their own. We are building a DevOps culture.
- We have a large Space installation used by the entire company with over 1000 users visiting daily. We use this installation to test all the new features before they get to the Cloud. One of our major plans for 2020 is to migrate this installation from ECS to Kubernetes.
What we expect from you:
- Expertise in AWS to help us create the cloud-based Space. We are still at square one, and much needs to be done.
- Experience with other cloud service providers (Google, Microsoft Azure, Alibaba, Yandex).
- Expertise in K8S for the on-premises Space.
- Experience with SaaS and distributed cloud systems.
- Experience with high-load systems and their optimization.
- Understanding of modern SRE practices, including VCS, Code Review, Autotesting, IaC, Planning, Iterations, Postmortems, and Capacity Planning.