Ищем на проект Senior Rust Backend разработчика. Готовы рассмотреть людей с опытом работы на других языках, но с желанием развития и базовыми навыками Rust. Ищем именно бекенд разработчика. Будет преимуществом знание нашей доменной области - сервера, системное администрирование и тд.
Требования:
- Глубокое знание Rust:
Владение основными концепциями: владение (ownership), заимствование (borrowing), lifetime, trait-объекты, async/await;
Понимание системы типов, макросов, unsafe-кода;
Опыт работы с популярными крейтами: tokio, axum / actix-web / warp, serde, и др.;
- Backend-архитектура:
Проектирование масштабируемых, отказоустойчивых и производительных систем;
Знание паттернов проектирования (например, CQRS, event sourcing, pipeline);
Знание и опыт работы с различными архитектурами решения (например, гексагональная архитектура);
- Работа с сетью и API:
Построение RESTful и/или gRPC-API;
Понимание HTTP/2, WebSockets, TLS;
- Базы данных:
Опыт работы с реляционными (например PostgreSQL) и NoSQL (Например, Mongo) СУБД;
Понимание ACID, транзакций, индексов, миграций;
- Асинхронное программирование:
Уверенное владение async/await и runtime (tokio или async-std);
Умение отлаживать и оптимизировать async-код (например, избегать блокировок в async-контексте);
- Инструменты:
Контейнеризация (Docker, K8S, Helm);
Знание Linux на базовом уровне;
- Тестирование:
Написание unit и интеграционных тестов;
Использование tokio-test и т.п.
Условия:
- В приоритете сотрудничество с ИП или самозанятым, но, возможно, и оформление в штат.
- Конкурентоспособная, полностью официальная «белая» заработная плата (обсуждается по результатам собеседования);
- Интересные, разнообразные задачи с высоким уровнем ответственности;
- Удаленный формат работы.