Middle+/Senior C# Desktop/Backend Developer

Уровень зарплаты: от 180 000 руб.
Местоположение: Россия, Санкт-Петербург и область (МСК +0ч)

Резюме: Middle+/Senior C# Desktop/Backend Developer

Обо мне
Более 14 лет опыта в разработке на платформе .NET с фокусом на высокопроизводительные десктопные решения (WPF) и глубоким пониманием серверной архитектуры.

Специализируюсь на миграции легаси-систем (WinForms, .NET Framework 4.x) на современный стек (.NET 8/9) и интеграции клиентских приложений со сложными backend-сервисами (WCF, REST API).

В рамках последнего года прошел интенсивное обучение микросервисной архитектуре по материалам М. Прайса: реализовал Proof of Concept распределенного приложения (InvestLens) с использованием Ocelot/YARP, JWT-аутентификации, EF Core и брокеров сообщений (RabbitMQ/MassTransit). Имею практический опыт работы с Docker, PostgreSQL и Redis.

Рассматриваю позиции Middle+/Senior Desktop Engineer или Backend/.NET Developer. Открыт к выполнению тестового задания для подтверждения навыков.

Опыт работы

Пет-проекты и профессиональное развитие

Февраль 2025 — настоящее время 1 год 6 месяцев

Углубленное изучение современного бэкенда (.NET 8/9)

Изучение архитектуры микросервисов и современных практик разработки на основе серии книг М. Прайса (Mark J. Price) "Modern Cross-Platform Development" и "Real-World Web Development".

Технологии: Изучены принципы работы gRPC, SignalR, GraphQL (HotChocolate), Minimal API.
Инфраструктура: Изучено практическое применение инструментов контейнеризации (Docker и Docker-compose), брокеров сообщений (RabbitMQ) и систем фоновых задач (Hangfire).
Проект InvestLens: Практика построения микросервисной архитектуры
Разработка учебного проекта инвестиционного трекера для закрепления знаний современной инфраструктуры .NET. Проект находится в статусе Proof of Concept (код доступен на GitHub).

Стек: .NET 8/9, ASP.NET Core Web API, Ocelot и Yarp (API Gateway), Entity Framework Core, PostgreSQL, Redis.
Реализовано: Настройка аутентификации через JWT, интеграция Swagger со сложной конфигурацией Ocelot, реализация базовых CRUD-сервисов.
Особенности процесса: На первом этапе активно использовал нейросети как справочник и инструмент генерации шаблонного кода для ускорения погружения в незнакомые технологии. Впоследствии переписал ключевые модули вручную для глубокого понимания механизмов Dependency Injection и конвейера запросов Middleware, с использование Yarp и gRPC.

Исследование кросс-платформенных технологий
Avalonia UI (Февраль 2026): Реализовал тестовое задание (проект KPI-Pulse) для оценки возможностей фреймворка. Быстро освоил XAML-подобный синтаксис и реактивную модель данных MVU-RX.
WpfPerfBench (Июнь 2026 – настоящее время): Текущий проект по созданию бенчмарка производительности WPF-контролов. Цель — замер накладных расходов различных подходов к биндингу и виртуализации списков. Разработка ведется в локальном git-репозитории.

WaveAccess
Санкт-Петербург

Информационные технологии, системная интеграция, интернет

Разработка программного обеспечения
Февраль 2018 — Январь 2025 7 лет

C# / .NET Developer

Основной проект (Enterprise Desktop Solution)
Разработка и поддержка крупного коммерческого enterprise-приложения для управления сложными конфигурациями данных. Клиент-серверная архитектура на базе WPF (.NET Framework 4.7), XAML, паттерна MVVM. Использование библиотеки Telerik, сервисов WCF, базы данных MS SQL. Архитектура построена на принципах Dependency Injection с использованием контейнера Prism.

Ключевые обязанности:

Развитие модулей десктопного приложения с богатым UI (более 10 функциональных блоков).
Создание кастомных элементов управления (UserControls) сложной вложенности.
Поддержка обратной совместимости при миграции данных из устаревших систем.

Технические достижения:

Модуль FormDesigner: Разработал конструктор иерархических шаблонов форм. На базе компонента TreeListView (Telerik) создал кастомный контрол, позволяющий пользователям собирать структуру из текстовых полей и заданных компонентов-шаблонов через Drag-and-Drop интерфейс. Модуль позволил другой команде генерировать формы на основе данных настроек без привлечения разработчиков.
Миграция модуля импорта: Успешно интегрировал легаси-утилиту (standalone-приложение) внутрь основного монолитного решения. Адаптировал слой маппинга значений, что позволило бесшовно перенести данные клиентов из старого формата хранения в новую схему БД без потери информации.
Локализация интерфейса: Расширил архитектуру приложения, внедрив динамическую смену языка во время работы программы с использованием ResourceDictionary и привязок DynamicResource.
Рефакторинг плагина Autodesk Revit: Выполнил изолированную задачу по переносу базового плагина с WinForms на WPF (.NET Framework). Обернул существующий legacy-код в современную MVVM-оболочку, сохранив полную функциональную идентичность алгоритмов обработки макетов.

Исследование современных технологий (R&D Phase)
Октябрь 2023 — Январь 2025

После завершения контракта с иностранным заказчиком прошел внутреннюю ротацию. Оценивал возможность перехода на современный стек разработки (.NET Core+) для дальнейшего развития собственных компетенций.

Backend Research (.NET 6/8): Изучил принципы работы ASP.NET Core Web API, внедрение фоновых задач (Hangfire) и брокеров сообщений (MassTransit/RabbitMQ). Реализовал прототипы REST-сервисов.
Python Integration: Участвовал в интеграции сервисов на Python. Провел аудит кода и рефакторинг интеграционных тестов для проверки корректности миграции бизнес-логики между версиями интерпретатора.
Выводы этапа: Получил практическое представление о микросервисной архитектуре. Принял решение вернуться к профильной экспертизе в Desktop/.NET Backend для углубления знаний, а не поверхностного изучения множества инструментов одновременно.

ТИМ ЭКСПЕРТ
Москва

Ноябрь 2016 — Январь 2018 1 год 3 месяца

C#/WPF разработчик

Разработка десктопных приложений на C# в распределенной команде (первый опыт полностью удаленной работы).

Ключевые обязанности:

Разработка клиентской части коммерческого программного продукта на базе WPF, XAML, паттерна MVVM и библиотеки компонентов DevExpress (.NET Framework).
Реализация логики получения данных с сервера (JSON), десериализация с использованием библиотеки Newtonsoft.Json.
Работа в системе контроля версий Git (миграция с TFS), согласование форматов обмена данными (контрактов API) с backend-командой.

Технические достижения:

Продуктовая разработка Frog-системы: Участвовал в создании основного модуля коммерческого desktop-приложения. Реализовал UI-части для визуализации конфигураций билд-серверов. Настроил асинхронное получение данных с использованием async/await, что обеспечило стабильную работу интерфейса при сетевых задержках во время тестирования MVP-версии.
Интеграция со сторонним сервисом: Разработал слой интеграции с внешним API заказчика. На основе спецификаций сервиса создал иерархию POCO-классов (DTO). Подготовленные модели легли в основу Web API другой команды, сократив время на согласование форматов обмена данными.
Адаптация к стандартам качества: Успешно прошел онбординг в процессы Code Review под руководством senior-разработчиков компании, быстро адаптировав стиль написания кода под требования enterprise-проекта.

НЕОЛАНТ Калининград
Калининград

Информационные технологии, системная интеграция, интернет

Разработка программного обеспечения
Системная интеграция, автоматизация технологических и бизнес-процессов предприятия, ИТ-консалтинг
Декабрь 2011 — Ноябрь 2016 5 лет

C#/WPF разработчик

Разработка десктопных приложений для государственных заказчиков и корпоративного сектора. Работа в команде по методологиям Agile и Scrum.

Ключевые обязанности и стек:

Разработка клиент-серверных систем на базе WPF, Silverlight и .NET Framework 4.x.
Проектирование UI сложной структуры с использованием библиотеки Telerik: визуализация больших массивов данных, иерархические редакторы справочников, кастомизация графиков и диаграммы Ганта.
Реализация бизнес-логики и доступа к данным (MS SQL) через NHibernate и Entity Framework 6 поверх сервисов WCF.
Технические достижения:

Интеграция нативного компонента: Совместно с C++ разработчиком внедрил OCX-компонент для визуализации интерактивной 3D-модели объекта во внешний Web-портал. Разработал JavaScript-обвязку (bridge) для взаимодействия: подписывался на события интерфейса портала (выбор элемента в списке) и программно передавал команды управления в OCX-контрол.
Оптимизация тяжелых форм: Провел рефакторинг экранов редактирования мастер-данных. Заменил стандартные таблицы на виртуализированные грид-компоненты Telerik, что позволило работать с выборками свыше 50 000 строк без зависания интерфейса.