инженер-программист
Summary
Инженер-программист в АО «РУСКИТИНВЕСТ» (Томская область): полный цикл разработки — анализ требований, проектирование архитектуры, написание кода, тестирование, оптимизация, документирование и код-ревью. Требуется высшее образование и стаж от 3 лет; конкретный язык программирования или стек не указаны.
Обязанности:
Проектирование и разработка. Анализ требований: перевод бизнес-задач в технические спецификации. Проектирование архитектуры: создание структуры программы, определение компонентов и их взаимодействия. Написание кода на выбранном языке программирования. Тестирование и отладка. Подготовка тестовых наборов данных, проверка работоспособности ПО. Выявление ошибок, их воспроизведение и анализ причин. Исправление дефектного кода. Оптимизация. Улучшение производительности и эффективности кода. Упрощение структуры без изменения внешнего поведения для повышения читаемости и удобства дальнейшей поддержки. Сопровождение и поддержка. Внесение изменений после внедрения, исправление ошибок в уже выпущенных версиях, добавление новых функций. Мониторинг работы системы в реальных условиях и оптимизация на основе обратной связи. Работа с документацией. Составление технической документации: инструкций для пользователей, описаний архитектуры, комментариев в коде. Интеграция. Обеспечение взаимодействия разрабатываемого ПО с другими системами и сервисами. Участие в процессах команды. Код-ревью (анализ кода коллег), участие в планировании задач, оценка и согласование сроков выполнения работ. Административные задачи. Настройка параметров программных продуктов, запуск процедур сборки, создание резервных копий данных и их восстановление. Консультирование. Ответы на вопросы сотрудников по работе с программами. Соблюдение норм. Работа в рамках политик информационной безопасности, сохранение конфиденциальности данных (кодов, паролей), соблюдение правил охраны труда.
Требования:
Образование и опыт: Высшее образование . Стаж работы не менее 3 лет. Знания: синтаксис и особенности выбранного языка программирования, стандартные библиотеки; методологии разработки ПО, технологии программирования; методологии и технологии проектирования и работы с базами данных; особенности выбранной среды программирования и СУБД; компоненты программно-технических архитектур, существующие приложения и интерфейсы взаимодействия с ними; методы и приёмы формализации задач, языки формализации функциональных спецификаций; методы алгоритмизации задач, нотации и ПО для графического отображения алгоритмов; алгоритмы решения типовых задач в соответствующей области; нормативно-технические документы (стандарты, регламенты), определяющие требования к оформлению кода и технической документации. Умения: применять языки программирования для написания кода; использовать среду программирования и средства СУБД; использовать возможности имеющейся технической или программной архитектуры для написания кода; структурировать, комментировать и форматировать код в соответствии с установленными стандартами; оформлять техническую документацию по заданному стандарту или шаблону; оценивать и согласовывать сроки выполнения задач; осуществлять коммуникации с заинтересованными сторонами.