Описание вакансии
Чем придётся заниматься
1. Разрабатывать программное обеспечение:
- писать код на высокоуровневых языках (преимущественно C#, но не ограничиваясь);
- тестировать написанное;
- уточнять требования, постановку задачи (agile);
- взаимодействовать с другими разработчиками;
- рефакторить свой и иногда чужой код;
- изучать новые языки, библиотеки, фреймворки, технологии и т.п., искать пути решения.
2. Конфигурировать и дорабатывать коробочное прикладное ПО:
- развернуть, настроить необходимое ПО в соответствии с требованиями;
- уточнять требования работы ПО;
- изучать новые продукты и решения;
- находить и предлагать варианты решения поставленных задач.
3. Участвовать в реализации проектов:
- готовность участия в проектах связанных в основном с большими промышленными производствами;
- погружение в предметную область (иногда специфическую) проекта/заказчика;
- подготовка документации — написание раздела или его части в зависимости от задач и стадии проекта (ТП, РД, ЭД и т.д.);
- создание и актуализация статей в корпоративной вики.
Что нужно иметь в опыте обязательно
- Опыт создания приложений (веб или десктопных) и библиотек.
- Отладка программного кода и использования отладчика среды разработки.
- Понимание общей структуры и жизненного цикла программы/библиотеки, разработки в целом.
- Понимание и применение особенностей объектно-ориентированного, функционального и структурного парадигм программирования, когда и какой вариант необходим и наиболее эффективен.
- Понимание принципов, используемых в разработке (SOLID, KISS и пр.).
- Базовые структуры и алгоритмы (массивы, списки, словари, методы сортировки и т.п.), опыт их использования, понимание отличий, преимуществ и эффективного применения.
- Внимание к деталям, желание работать в команде, расти профессионально, разбираться с разными программными системами, платформами и добиваться поставленных целей.
- Базовые знания SQL:
- создание запросов, хранимых процедур, пользовательских функций и т.п.;
- уметь писать объединения (join);
- NoSQL (зачем, когда и что применять).
Какой опыт ещё желательно иметь, как преимущество
- Опыт разработки на MS Visual Studio/Code.
- Разработка на С#.
- Опыт разработки под веб (ASP.NET Core, JS, CSS, Angular).
- Работа с СУБД MS SQL Server 2012+ (создание схемы БД, индексов, job’ов и т.д.).
- Использование сторонних библиотек и фреймворков.
- Понимание работы сети и сетевых проколов разных уровней (модель OSI, TCP/IP/UDP, DNS и т.д.).
- Работа с системой контроля версий (у нас используется gitlab).
- Опыт работы/интеграции с промышленными платформами:
- иностранный стек: Schneider Electric, Siemens, AVEVA и др.;
- российский: ZIIoT (Цифра), Aggregate (Tibbo), Alpha Platform (Атомик Софт), MasterScada 4D и т.д.
- Умение работать в команде.
- Чтение технической документации на английском языке.
Условия
- Заработная плата обсуждается индивидуально, в зависимости от квалификации и опыта.
- Оформление по ТК РФ, отпуск и больничный в соответствии с действующим законодательством.
- Дистанционный режим работы.
- Официальная заработная плата (фиксированный оклад + премии).
- Увеличение зарплаты по мере профессионального роста, возможность карьерного роста.