Acronis is a global leader in cyber protection, delivering AI-powered protection for productive MSPs in a single, natively integrated platform that unifies operations management, cybersecurity, and data protection. Driven by our mission to protect, manage and automate every workload that businesses and lives depend on, we've built the industry's only all-in-one solution.
We are looking for a Senior Backend Developer who will be responsible for the design and development of the management backend of our hyperconverged infrastructure and IaaS platform — the services and APIs behind the admin and self-service panels that let service providers and their customers run compute, storage and networking as a service — with a focus on multitenancy, cluster lifecycle automation, and reliability under production load.
WHAT YOU'LL DO
Design, develop and maintain backend services and public APIs (Python and Go) for new and existing features of the platform's management layer, translating software requirements into stable, high-quality, high-performance code.
Build the services that orchestrate the platform itself: cluster and node lifecycle (deployment, adding and releasing nodes, maintenance mode, high availability), rolling updates of the whole stack, configuration management, and recovery from partial failures.
Develop the multi-tenant and multi-tier model behind the product: projects and tenants, quotas and limits, role-based access control, authentication and authorization, audit, and the self-service surface exposed to a service provider's own customers.
Develop monitoring, alerting, metrics and reporting pipelines, and the telemetry the platform and our support teams rely on to see what a cluster is doing.
Design data models and work with the databases and message queues behind the services, keeping schema and API changes backward compatible across supported upgrade paths.
Investigate and resolve complex issues in development and production clusters — API and service failures, concurrency and race conditions, stuck orchestration tasks, performance and scalability bottlenecks — and drive them from root-cause analysis through implementation, validation and production.
Contribute to the architecture and interface design of management components and their integration with higher-level Acronis products and partner-facing APIs.
Own the quality of what you build: unit, functional and integration tests, API contract tests, fault-injection and scale testing, code reviews, and CI coverage for your services.
Leverage AI-assisted engineering tools for development, code analysis, debugging, root-cause investigation, trace/log analysis and technical research.
Write software and operational documentation, and work closely with QA, support and the product team to deliver high-quality software to service providers and their customers.
Share expertise in backend and distributed systems design through technical discussions, design and code reviews, and documentation, and mentor engineers joining the team.
Maintain clear communication with the Management Backend Team lead on progress, technical challenges, risks, dependencies and critical issues.
WHO WE'RE LOOKING FOR
5+ years of relevant backend software development experience, with a track record of shipping and supporting production services.
Strong Python; solid Go, or the ability and willingness to work across both languages day to day.
Proven experience designing and building microservices and REST APIs that run under high load, including their versioning, compatibility and documentation.
Solid understanding of distributed systems: asynchronous task processing and orchestration, idempotency and retries, consistency and failure handling, and how a service behaves when its dependencies are slow or gone.
Hands-on experience with relational databases (schema design, migrations, query performance) and with message queues or brokers; experience with key-value or distributed configuration stores is a…