Профессиональный стандарт № 233.
Утвержден приказом
Министерства труда и социальной защиты Российской Федерации
от 20.07.2022 № 424н
Наименование вида профессиональной деятельности: Разработка компьютерного программного обеспечения.
Основная цель вида профессиональной деятельности: Разработка, отладка, проверка работоспособности, модификация компьютерного программного обеспечения.
Группа занятий:
Код ОКЗ |
Наименование группы занятий |
2512 |
Разработчики программного обеспечения |
3512 |
Специалисты-техники по поддержке пользователей ИКТ |
2514 | Программисты приложений |
Стажер-программист
Возможные наименования должностей, профессий |
Помощник программиста |
Требования к образованию и обучению |
Среднее профессиональное образование - программы подготовки квалифицированных рабочих (служащих) |
Требования к опыту практической работы |
- |
020201 Оператор электронно-вычислительных машин (программист) |
|
Техник |
Разработка и отладка программного кода |
|
Трудовая функция |
Трудовые действия |
А/01.3. Формализация и алгоритмизация поставленных задач для разработки программного кода |
● Составление формализованных описаний решений поставленных задач в соответствии с требованиями технического задания или внутренних документов организации ● Разработка алгоритмов решения поставленных задач в соответствии с требованиями технического задания или внутренних документов организации ● Проверка корректности алгоритмов решения поставленных задач ● Оценка и согласование сроков выполнения поставленных задач |
А/02.3. Написание программного кода с использованием языков программирования, определения и манипулирования данными в базах данных |
● Создание программного кода в соответствии с техническим заданием (готовыми спецификациями) ● Оптимизация программного кода с использованием специализированных программных средств ● Оценка и согласование сроков выполнения поставленных задач |
А/03.3. Оформление программного кода в соответствии с установленными требованиями |
● Приведение наименований переменных, функций, классов, структур данных и файлов в соответствие с нормативно-техническими документами (стандартами и регламентами), определяющими требования к оформлению программного кода ● Структурирование исходного программного кода в соответствии с нормативно-техническими документами (стандартами и регламентами), определяющими требования к оформлению программного кода ● Комментирование и разметка программного кода в соответствии с нормативно-техническими документами (стандартами и регламентами), определяющими требования к оформлению программного кода ● Форматирование исходного программного кода в соответствии с нормативно-техническими документами (стандартами и регламентами), определяющими требования к оформлению программного кода ● Оформление технической документации на компьютерное программное обеспечение по заданному стандарту или шаблону |
А/04.3. Работа с системой управления версиями программного кода |
● Регистрация изменений исходного текста программного кода в системе управления версиями ● Слияние, разделение и сравнение исходных текстов программного кода ● Сохранение сделанных изменений программного кода в соответствии с регламентом управления версиями |
А/05.3. Проверка и отладка программного кода |
● Анализ и проверка исходного программного кода ● Отладка программного кода на уровне программных модулей ● Отладка программного кода на уровне межмодульных взаимодействий и взаимодействий с окружением ● Оценка и согласование сроков выполнения поставленных задач |
Умения: ● Использовать методы и приемы формализации поставленных задач ● Использовать методы и приемы алгоритмизации поставленных задач ● Использовать программное обеспечение для графического отображения алгоритмов ● Применять алгоритмы решения типовых задач в соответствующих областях ● Осуществлять коммуникации с заинтересованными сторонами ● Применять выбранные языки программирования для написания программного кода ● Использовать выбранную среду программирования и средства системы управления базами данных ● Использовать возможности имеющейся технической и/или программной архитектуры для написания программного кода ● Осуществлять коммуникации с заинтересованными сторонами ● Применять нормативно-технические документы (стандарты и регламенты), определяющие требования к оформлению программного кода ● Применять инструментарий для создания и актуализации исходных текстов программ ● Применять заданные стандарты и шаблоны для составления и оформления технической документации ● Осуществлять коммуникации с заинтересованными сторонами ● Использовать выбранную систему управления версиями ● Использовать вспомогательные инструментальные программные средства для обработки исходного текста программного кода ● Выполнять действия, соответствующие установленному регламенту используемой системы управления версиями ● Выявлять ошибки в программном коде ● Применять методы и приемы отладки программного кода ● Интерпретировать сообщения об ошибках, предупреждения, записи технологических журналов ● Применять современные компиляторы, отладчики и оптимизаторы программного кода ● Осуществлять коммуникации с заинтересованными сторонами Знания: ● Методы и приемы формализации поставленных задач ● Языки формализации функциональных спецификаций ● Методы и приемы алгоритмизации поставленных задач ● Нотации и программное обеспечение для графического отображения алгоритмов ● Алгоритмы решения типичных задач, области и способы их применения ● Синтаксис выбранного языка программирования, особенности программирования на этом языке, стандартные библиотеки языка программирования ● Методологии разработки компьютерного программного обеспечения ● Методологии и технологии проектирования и использования баз данных ● Технологии программирования ● Особенности выбранной среды программирования и системы управления базами данных ● Компоненты программно-технических архитектур, существующие приложения и интерфейсы взаимодействия с ними ● Инструментарий для создания и актуализации исходных текстов программ ● Методы повышения читаемости программного кода ● Системы кодировки символов, форматы хранения исходных текстов программ ● Нормативно-технические документы (стандарты и регламенты), определяющие требования к оформлению программного кода ● Основные стандарты оформления технической документации на компьютерное программное обеспечение ● Возможности используемой системы управления версиями и вспомогательных инструментальных программных средств ● Установленный регламент использования системы управления версиями ● Методы и приемы отладки программного кода ● Типы и форматы сообщений об ошибках, предупреждений ● Способы использования технологических журналов, форматы и типы записей журналов ● Современные компиляторы, отладчики и оптимизаторы программного кода ● Сообщения о состоянии аппаратных средств |
Младший программист
Возможные наименования должностей, профессий |
Техник-программист |
Требования к образованию и обучению |
Среднее профессиональное образование - программы подготовки квалифицированных рабочих (служащих) |
Требования к опыту практической работы |
Не менее трех месяцев в области разработки компьютерного программного обеспечения |
020201 Оператор электронно-вычислительных машин (программист) |
|
Техник |
Проверка работоспособности и рефакторинг кода программного обеспечения |
|
Трудовая функция |
Трудовые действия |
В/01.4. Разработка процедур проверки работоспособности и измерения характеристик компьютерного программного обеспечения |
● Разработка процедуры проверки работоспособности компьютерного программного обеспечения ● Разработка процедуры сбора диагностических данных проверки работоспособности компьютерного программного обеспечения ● Разработка процедуры измерения требуемых характеристик компьютерного программного обеспечения ● Оформление технической документации на компьютерное программное обеспечение по заданному стандарту или шаблону ● Оценка и согласование сроков выполнения поставленных задач |
В/02.4. Разработка тестовых наборов данных для проверки работоспособности компьютерного программного обеспечения |
● Подготовка тестовых наборов данных в соответствии с выбранной методикой тестирования компьютерного программного обеспечения ● Оценка и согласование сроков выполнения поставленных задач |
В/03.4. Проверка работоспособности компьютерного программного обеспечения |
● Проверка работоспособности компьютерного программного обеспечения на основе разработанных тестовых наборов данных ● Оценка соответствия компьютерного программного обеспечения требуемым характеристикам ● Сбор и анализ полученных результатов проверки работоспособности компьютерного программного обеспечения ● Оценка и согласование сроков выполнения поставленных задач |
В/04.4. Рефакторинг, оптимизация и инспекция программного кода |
● Анализ программного кода на соответствие требованиям по читаемости и производительности ● Инспекция программного кода для поиска не обнаруженных на ранних стадиях разработки компьютерного программного обеспечения ошибок и критических мест ● Внесение изменений в программный код и проверка его работоспособности ● Оценка и согласование сроков выполнения поставленных задач |
В/05.4. Исправление дефектов программного кода, зафиксированных в базе данных дефектов |
● Воспроизведение дефектов программного кода, зафиксированных в базе данных дефектов ● Установление причин возникновения дефектов программного кода ● Внесение изменений в программный код для устранения выявленных дефектов ● Оценка и согласование сроков выполнения поставленных задач |
В/06.4. Осуществление сборки однородных программных модулей в программный проект |
● Сборка однородных (одноязыковых) программных модулей в программный проект в средах разработки компьютерного программного обеспечения ● Проверка работоспособности собранного программного проекта ● Внесение изменений в процедуру сборки однородных (одноязыковых) программных модулей в программный проект ● Оценка и согласование сроков выполнения поставленных задач |
Умения: ● Писать программный код процедур проверки работоспособности компьютерного программного обеспечения на выбранном языке программирования ● Использовать выбранную среду программирования для разработки процедур проверки работоспособности компьютерного программного обеспечения ● Применять заданные стандарты и шаблоны для составления и оформления технической документации ● Осуществлять коммуникации с заинтересованными сторонами ● Разрабатывать и оформлять контрольные примеры для проверки работоспособности компьютерного программного обеспечения ● Разрабатывать процедуры генерации тестовых наборов данных с заданными характеристиками ● Подготавливать наборы данных, используемых в процессе проверки работоспособности компьютерного программного обеспечения ● Использовать командные средства разработки компьютерного программного обеспечения ● Осуществлять коммуникации с заинтересованными сторонами ● Применять методы и средства проверки работоспособности компьютерного программного обеспечения ● Интерпретировать диагностические данные проверки работоспособности компьютерного программного обеспечения ● Анализировать значения полученных характеристик компьютерного программного обеспечения ● Документировать результаты проверки работоспособности компьютерного программного обеспечения ● Осуществлять коммуникации с заинтересованными сторонами ● Применять методы, средства рефакторинга, оптимизации и инспекции программного кода ● Применять инструментальные средства коллективной работы над программным кодом ● Публиковать результаты рефакторинга, оптимизации и инспекции в коллективной базе знаний ● Использовать систему управления версиями для регистрации произведенных изменений ● Применять методы и приемы отладки дефектного программного кода ● Интерпретировать сообщения, предупреждения, записи технологических журналов об ошибках, возникающих при выполнении дефектного кода ● Осуществлять коммуникации с заинтересованными сторонами ● Выполнять процедуры сборки однородных (одноязыковых) программных модулей в программный проект в средах разработки компьютерного программного обеспечения ● Производить настройки параметров программного проекта и осуществлять запуск процедур сборки ● Проводить проверку работоспособности программного проекта ● Документировать произведенные действия, выявленные проблемы и способы их устранения ● Создавать резервные копии программного проекта и данных, выполнять восстановление, обеспечивать целостность программного проекта и данных Знания: ● Методы автоматической и автоматизированной проверки работоспособности компьютерного программного обеспечения ● Основные виды диагностических данных проверки работоспособности компьютерного программного обеспечения и способы их представления ● Языки, утилиты и среды программирования и средства пакетного выполнения процедур ● Типовые метрики компьютерного программного обеспечения ● Основные методы измерения и оценки характеристик компьютерного программного обеспечения ● Основные стандарты оформления технической документации на компьютерное программное обеспечение ● Методы создания и документирования контрольных примеров и тестовых наборов данных ● Правила, алгоритмы и технологии создания тестовых наборов данных ● Требования к структуре и форматам хранения тестовых наборов данных ● Методы и средства проверки работоспособности компьютерного программного обеспечения ● Среды проверки работоспособности и отладки компьютерного программного обеспечения ● Государственные стандарты испытания автоматизированных систем ● Руководящие документы по стандартизации требований к документам автоматизированных систем ● Методы и средства рефакторинга, оптимизации и инспекции программного кода ● Языки программирования и среды разработки ● Нормативно-технические документы (стандарты и регламенты), регламентирующие требования к программному коду, порядок отражения изменений в системе управления версиями, порядок отражения результатов рефакторинга, оптимизации и инспекции в коллективной базе знаний ● Методы и приемы отладки программного кода ● Типичные ошибки, возникающие при разработке компьютерного программного обеспечения, методы их диагностики и исправления ● Методы и средства сборки модулей в программный проект в средах разработки компьютерного программного обеспечения ● Возможности настройки программного проекта в средах разработки компьютерного программного обеспечения ● Интерфейсы взаимодействия внутренних модулей программного проекта ● Методы и средства проверки работоспособности программных проектов ● Языки, утилиты и среды программирования, средства пакетного выполнения процедур |
Программист
Возможные наименования должностей, профессий |
Программист |
Требования к образованию и обучению |
Среднее профессиональное образование - программы подготовки специалистов среднего звена |
Требования к опыту практической работы |
Не менее шести месяцев в области разработки компьютерного программного обеспечения |
020201 Оператор электронно-вычислительных машин (программист) |
|
Техник |
Интеграция программных модулей и компонентов и проверка работоспособности выпусков программного продукта |
|
Трудовая функция |
Трудовые действия |
С/01.5. Разработка процедур интеграции программных модулей |
● Анализ и выявление проблем сопряжения неоднородных модулей и компонентов компьютерного программного обеспечения ● Разработка и документирование программных интерфейсов ● Разработка процедур сборки модулей и компонентов компьютерного программного обеспечения ● Разработка процедур развертывания и обновления компьютерного программного обеспечения ● Разработка процедур миграции и преобразования (конвертации) данных ● Оформление технической документации на компьютерное программное обеспечение по заданному стандарту или шаблону |
С/02.5. Осуществление интеграции программных модулей и компонентов и проверки работоспособности выпусков программного продукта |
● Сборка программных модулей и компонентов в программный продукт ● Подключение программного продукта к компонентам внешней среды ● Проверка работоспособности выпусков программного продукта ● Внесение изменений в процедуры сборки модулей и компонентов компьютерного программного обеспечения, развертывания компьютерного программного обеспечения, миграции и преобразования данных ● Оценка и согласование сроков выполнения поставленных задач |
Умения: ● Писать программный код процедур интеграции программных модулей ● Использовать выбранную среду программирования для разработки процедур интеграции программных модулей ● Применять методы и средства сборки модулей и компонентов компьютерного программного обеспечения, разработки процедур для развертывания компьютерного программного обеспечения, миграции и преобразования данных, создания программных интерфейсов ● Применять заданные стандарты и шаблоны для составления и оформления технической документации ● Осуществлять коммуникации с заинтересованными сторонами ● Выполнять процедуры сборки программных модулей и компонентов в программный продукт ● Производить настройки параметров программного продукта и осуществлять запуск процедур сборки ● Проводить проверку работоспособности программного продукта ● Документировать произведенные действия, выявленные проблемы и способы их устранения ● Использовать командные средства разработки компьютерного программного обеспечения ● Создавать резервные копии программ и данных, выполнять восстановление, обеспечивать целостность программного продукта и данных ● Осуществлять коммуникации с заинтересованными сторонами Знания: ● Методы и средства сборки модулей и компонентов компьютерного программного обеспечения ● Интерфейсы взаимодействия с внешней средой ● Интерфейсы взаимодействия внутренних модулей системы ● Методы и средства разработки процедур для развертывания компьютерного программного обеспечения ● Методы и средства миграции и преобразования данных ● Языки, утилиты и среды программирования, средства пакетного выполнения процедур ● Основные стандарты оформления технической документации на компьютерное программное обеспечение ● Методы и средства сборки и интеграции программных модулей и компонентов ● Интерфейсы взаимодействия программного продукта с внешней средой ● Интерфейсы взаимодействия внутренних модулей программного продукта ● Методы и средства проверки работоспособности выпусков программных продуктов ● Языки, утилиты и среды программирования, средства пакетного выполнения процедур |
Старший программист
Возможные наименования должностей, профессий |
Инженер-программист |
Требования к образованию и обучению |
Высшее образование - бакалавриат |
Требования к опыту практической работы |
Не менее одного года в области разработки компьютерного программного обеспечения |
020201 Оператор электронно-вычислительных машин (программист) |
|
Техник |
Разработка требований и проектирование программного обеспечения |
|
Трудовая функция |
Трудовые действия |
D/01.6. Анализ возможностей реализации требований к компьютерному программному обеспечению |
● Сбор, систематизация, выявление взаимосвязей и документирование требований к компьютерному программному обеспечению ● Оценка времени и трудоемкости реализации требований к компьютерному программному обеспечению ● Согласование требований к компьютерному программному обеспечению с заинтересованными сторонами ● Оценка и согласование сроков выполнения поставленных задач |
D/02.6. Разработка технических спецификаций на программные компоненты и их взаимодействие |
● Разработка и согласование с архитектором программного обеспечения технических спецификаций на программные компоненты и на их взаимодействие ● Распределение заданий между программистами в соответствии с техническими спецификациями ● Осуществление контроля выполнения заданий ● Осуществление обучения и наставничества ● Формирование и предоставление отчетности в соответствии с установленными регламентами ● Оценка и согласование сроков выполнения поставленных задач |
D/03.6. Проектирование компьютерного программного обеспечения |
● Разработка, изменение архитектуры компьютерного программного обеспечения и ее согласование с системным аналитиком и архитектором программного обеспечения ● Проектирование структур данных ● Проектирование баз данных ● Проектирование программных интерфейсов ● Разработка технической документации на компьютерное программное обеспечение с использованием существующих стандартов ● Оценка и согласование сроков выполнения поставленных задач |
Умения: ● Проводить сбор и систематизацию требований к компьютерному программному обеспечению ● Выявлять взаимосвязи и документировать требования к компьютерному программному обеспечению ● Проводить анализ исполнения требований к компьютерному программному обеспечению ● Вырабатывать варианты реализации требований к компьютерному программному обеспечению ● Проводить оценку и обоснование рекомендуемых решений ● Осуществлять коммуникации с заинтересованными сторонами ● Выбирать средства реализации требований к компьютерному программному обеспечению ● Вырабатывать варианты реализации компьютерного программного обеспечения ● Проводить оценку и обоснование рекомендуемых решений ● Осуществлять коммуникации с заинтересованными сторонами ● Использовать существующие типовые решения и шаблоны проектирования компьютерного программного обеспечения ● Применять методы и средства проектирования компьютерного программного обеспечения, структур данных, баз данных, программных интерфейсов ● Использовать командные средства разработки компьютерного программного обеспечения ● Применять существующие стандарты для разработки технической документации на компьютерное программное обеспечение ● Осуществлять коммуникации с заинтересованными сторонами
Знания: ● Возможности существующей программно-технической архитектуры ● Возможности современных и перспективных средств разработки программных продуктов, технических средств ● Методологии разработки компьютерного программного обеспечения и технологии программирования ● Методологии и технологии проектирования и использования баз данных ● Языки формализации функциональных спецификаций ● Методы и приемы формализации задач ● Методы и средства проектирования компьютерного программного обеспечения ● Методы и средства проектирования программных интерфейсов ● Методы и средства проектирования баз данных ● Принципы построения и виды архитектуры компьютерного программного обеспечения ● Типовые решения, библиотеки программных модулей, шаблоны, классы объектов, используемые при разработке компьютерного программного обеспечения ● Нормативно-технические документы (стандарты), определяющие требования к технической документации на компьютерное программное обеспечение ● Методы и средства проектирования компьютерного программного обеспечения ● Методы и средства проектирования баз данных ● Методы и средства проектирования программных интерфейсов |