Общее описание
Ищем разработчика для развития и поддержки Windows desktop-приложений на C# с использованием WinForms и WPF.
Обязанности
Разработка и поддержка desktop-приложений под Windows на C# (WinForms / WPF) Доработка UI, обработчиков, логики приложения, исправление багов Работа с репозиториями и процессом разработки через Git (ветки, PR/ревью, теги) Поддержка и настройка сборки проекта с использованием CMake, включая проекты с нативными частями Опционально: взаимодействие с нативным кодом, анализ и обработка бинарных данных, улучшение стабильности и производительности
разработка и поддержка desktop-приложений под windows на c# (winforms / wpf) доработка ui, обработчиков, логики приложения, исправление багов работа с репозиториями и процессом разработки через git (ветки, pr/ревью, теги) поддержка и настройка сборки проекта с использованием cmake, включая проекты с нативными частями опционально взаимодействие с нативным кодом, анализ и обработка бинарных данных, улучшение стабильности и производительности
Требования
Уверенное владение C# Опыт разработки под Windows на WinForms и/или WPF Умение работать с Git в повседневном workflow Практическое понимание сборки проектов через CMake Желательно базовое понимание C++ для чтения и исправления кода Плюсы Знание регулярных выражений и умение применять их в задачах Навыки reverse engineering (native / managed / mobile) Понимание принципов работы Windows (процессы, потоки, память, загрузка модулей, права) Опыт работы с инжекцией в процессы, хуками и взаимодействием с чужими процессами в легальных задачах Работа с бинарными данными (парсинг протоколов, endianess, структуры) Базовые знания криптографии (хэши, симметричное/асимметричное шифрование, подписи) к кандидату Умение аккуратно разбираться в чужом коде и доводить задачи до результата Внимательность к деталям, особенно при работе с UI, бинарными форматами и сборкой Самостоятельность в диагностике проблем с использованием логов, дебага и минимальных воспроизводимых кейсов
к кандидату умение аккуратно разбираться в чужом коде и доводить задачи до результата внимательность к деталям, особенно при работе с ui, бинарными форматами и сборкой самостоятельность в диагностике проблем с использованием логов, дебага и минимальных воспроизводимых кейсов