The Messaging team develops and maintains a collaborative tool—a messenger that provides a unified workspace for teams. It enables users to exchange messages, files, links, notes, collaborate on documents, manage shared calendars, and utilize bots and integrations.
The service is part of a unified communication system that supports internal calls within the service (WebRTC), calls to traditional and mobile phones, video chats, webinars, and integrations with cloud PBX, contact centers, and omnichannel platforms.
This is a fault-tolerant, low-latency system with a distributed architecture, operating 24/7 with a 99.999% availability level.
We are currently looking for passionate professionals to strengthen our team!
Our technology stack includes Java, Node.js, Redis, Kafka, MongoDB, Elasticsearch, Docker, ELK, Prometheus Stack, and Kubernetes. The service is hosted on AWS.
Responsibilities:
Automation of database processes — a primary focus, covering version upgrades, configuration and feature management, schema migrations, testing, analysis, and other database-related tasks.
Implementing and optimizing CI/CD and DevOps practices to streamline and accelerate database management.
Installing, configuring, administering, and maintaining databases to ensure high availability, reliability, and optimal performance through thorough monitoring and proactive troubleshooting.
Testing new database versions and related tools to evaluate compatibility and integration potential.
Implementing and overseeing regular backups with successful recovery testing.
Ensuring database security and resilience against potential failures.
Developing and supporting a robust monitoring and alerting system with ongoing improvement and optimization.
Enhancing and expanding logging systems for improved transparency and effective diagnostics.
Proposing and implementing new tools and practices to enhance team efficiency and operational quality.
Participate in the design of distributed database system architecture.
Act as an expert for development teams: review migration, update, and other change procedures.
Maintain and update documentation.
Requirements:
Hard Skills:
Over 3 years of experience working with distributed databases in high-load production systems
Experience in process automation and configuration management
Hands-on experience with Linux systems (Red Hat-based) in large-scale production environments over the past several years.
Hands-on experience with git, Python, and Docker
Experience in database performance optimization (DB Engine, host/os settings)
Hands-on experience with database migrations, patching, and deploying architectural changes
Deep understanding of database monitoring principles and monitoring in general
Proven experience in monitoring database performance and managing database reliability
Experience with MongoDB
Soft Skills:
Written and verbal English communication skills.
Open-mindedness toward adopting new technologies and tools, with a proactive attitude toward automating routine tasks.
Ability to engage in constructive discussions and communicate effectively in an asynchronous environment.
Preferred Qualifications:
Strong knowledge of SQL and MongoDB CRUD operations.
Experience with database sharding.
Proficiency in data modeling and design.
Experience with Redis, PostgreSQL, and Kafka.
Knowledge of Kubernetes, Terraform, Ansible, and GitLab CI.
Familiarity with Prometheus, Grafana, Alertmanager, ELK, and Kibana.
We offer:
Well-coordinated professional team
Cutting edge technologies, interesting and challenging tasks, dynamic project, great opportunities for self-realization, professional and career growth
Additional Health and Life Insurance Package
Employee Assistance Program
25 vacation days
ReBenefit Platform Account.