О роли
Мы развиваем платформу, построенную на .NET и PostgreSQL, с событийной архитектурой поверх Kafka и потоковой репликацией данных между PostgreSQL и MS SQL. Ищем сильного инженера, который возьмёт на себя проектирование и развитие backend-сервисов, интеграционных пайплайнов данных и веб-интерфейсов на Blazor.
Это роль про архитектурные решения и ответственность за результат, а не про закрытие тикетов по готовому ТЗ.
Чем предстоит заниматься:
- Проектирование и разработка backend-сервисов на .NET (C#): доменная логика, API, фоновые обработчики;
- Развитие событийной архитектуры на Apache Kafka: продюсеры/консьюмеры, схемы сообщений, идемпотентность, гарантии доставки, обработка ретраев и dead-letter сценариев;
- Построение и сопровождение пайплайнов CDC на PostgreSQL (logical replication, replication slots, Debezium/Kafka Connect или собственные коннекторы);
- Реализация и поддержка репликации данных PostgreSQL → MS SQL: маппинг типов, разрешение конфликтов, контроль консистентности и лага, мониторинг;
- Работа с данными через Entity Framework Core и Marten (document store / event sourcing поверх PostgreSQL): моделирование, миграции, оптимизация запросов;
- Разработка внутренних веб-интерфейсов на Blazor + MudBlazor: компоненты, формы, таблицы с серверной пагинацией, состояние;
- Реализация системы отчётности на jsreport: шаблоны, генерация PDF/XLSX, интеграция с сервисами;
- Настройка и развитие GitLab CI/CD: сборка, тесты, статический анализ, контейнеризация, автоматический деплой по окружениям;
- Code review, менторинг мидлов, участие в выработке технических стандартов команды.
Что мы ожидаем:
- 5+ лет коммерческой разработки на C# / .NET, из них опыт на позиции Senior или Tech Lead;
- Глубокое знание .NET 8/9, ASP.NET Core, async/await, DI, многопоточности;
- Уверенная работа с PostgreSQL: индексы, планы выполнения, транзакции и уровни изоляции, логическая репликация;
- Практический опыт с Kafka в продакшене: партиционирование, consumer groups, offset management, семантика доставки;
- Опыт построения CDC-пайплайнов и потоковой синхронизации данных между разнородными СУБД;
- Entity Framework Core на уровне понимания генерируемого SQL, tracking/no-tracking, проблем N+1 и способов их решения;
- Опыт работы с MS SQL Server (миграции, T-SQL, специфика типов данных);
- Blazor (Server и/или WebAssembly), опыт с MudBlazor или аналогичной компонентной библиотекой;
- GitLab CI/CD, Docker, понимание принципов построения пайплайнов и деплоя;
- Опыт проектирования архитектуры распределённых систем, знание паттернов интеграции (Outbox, Saga, CQRS, Event Sourcing).
Будет плюсом:
- Marten — практический опыт с document store и event sourcing на PostgreSQL.
- jsreport или другие движки отчётности (FastReport, Telerik Reporting).
- Debezium, Kafka Connect, Schema Registry.
- Kubernetes, Helm, observability-стек (OpenTelemetry, Prometheus, Grafana, Seq/ELK).
- Опыт миграции legacy-систем и работы с высоконагруженными данными.
Мы предлагаем:
- Полностью удаленный формат работы;
- Прозрачную систему мотивации: ЗП в валюте + годовые премии по результатам выполнения KPI (уровень оклада обсуждается индивидуально);
- Отсутствие бюрократии, высокая степень свободы. Решения принимаются очень быстро;
- Перспективы карьерного роста, прямое влияние на бизнес и возможность использовать новейшие технологии.