Указание сегмента сферы труда

Квалификационные требования

Профессиональный стандарт) в области информационных технологий

«ПРОГРАММИСТ»

Утвержден на заседании Управляющего комитета проекта по разработке профессиональных стандартов 4 июня 2007 г.

МОСКВА, 2007


Содержание


Область применения........................................................................................................ 8

Разработка программных систем..................................................................................... 9


Введение

Стандарт создан в рамках проекта разработки профессиональных стандартов в области информационных технологий (ИТ).

Цель проекта — формирование профессиональных стандартов по наиболее массовым и востребованным профессиям в области ИТ, описывающих должности, профессиональные компетенции, требования к уровням образования, стажу работы и сертификации в соответствии с квалификационными уровнями.

Проект осуществлялся в соответствии с решением заседания от 5 июня 2006 года Совета по ИТ при Министре информационных технологий и связи РФ при организационной поддержке Мининформсвязи РФ и Ассоциации Предприятий Компьютерных и Информационных Технологий (АП КИТ).

Работа над профессиональными стандартами для отрасли ИТ проводилась с сентября 2006 г. по июнь 2007 г.

Руководители проекта — проректор ГУ-ВШЭ Никитин В.В., директор Центра развития профессиональных квалификаций ГУ-ВШЭ Машукова Н.Д.

Финансовую поддержку проекта осуществляли ведущие компании ИТ-отрасли:

«АйТи» (президент — Яппаров Т.Г.),

Verysell, группа компаний (председатель координационного совета — Краснов М.П.),

IBM (генеральный директор представительства в Восточной Европе и Азии — Корнильев К.Г.)

IBS, группа компаний (президент — Карачинский А.М.),

Intel (президент в России — Чейз С.),

«Лаборатория Касперского» (генеральный директор – Касперская Н.И.),

Microsoft (президент в России и странах СНГ — Дергунова О.К.),

«Прогноз» (генеральный директор — Андрианов Д.Л.)

R-Style, группа компаний (президент — Васин В.И.),

«Техносерв А/С» (председатель консультативного совета — Ананьев А.Н.),

«Яндекс» (генеральный директор — Волож А.Ю.),

«1С» (директор — Нуралиев Б.Г.).



Контроль проекта осуществлял управляющий комитет из представителей компаний-работодателей:

Адлер М.А. («Лаборатория Касперского»)

Белов С.А. (IBM)

Годин В.В. («Техносерв А/С»)

Гудков П.Г. («1С»)

Комлев Н.В. (АП КИТ)

Лавренова Е.В. («АйТи»)

Никитин И.Н. («Прогноз»)

Николаев А.В. (Intel)

Силантьев А.Ю. (IBS)

Швецова Л.Е. («Яндекс»)

Шершульский В.И. (Microsoft)

Финансовый менеджмент проекта — Артамонов Д.Б. (АП КИТ).

Список профессий, по которым осуществлялась разработка стандартов:

1. Программист

2. Системный архитектор

3. Специалист по информационным системам

4. Системный аналитик

5. Специалист по системному администрированию

6. Менеджер информационных технологий

7. Менеджер по продажам решений и сложных технических систем

8. Специалист по информационным ресурсам

9. Администратор баз данных

10. Специалист по цифровой технике

11. Специалист по сборке изделий цифровой техники

12. Специалист по ремонту изделий цифровой техники

Профессиональные стандарты опубликованы на сайте АП КИТ http://www.apkit.ru/default.asp?artID=5573

Авторский коллектив

Методисты разработки профессионального стандарта.

ФИО Место работы Должность
1. Буров Василий Владимирович Аналитический центр REAL-IT Генеральный директор

Экспертная группа разработки профессионального стандарта.

ФИО Место работы Должность
1. Авдошин Сергей Михайлович Государственный университет - Высшая Школа Экономики Руководитель Отделения программной инженерии, заведующий кафедрой “Управление разработкой программного обеспечения”
2. Всеволод Павлович Котляров Motorola Ведущий специалист (внс), профессор Факультета технической кибернетики С-ПбГПУ
3. Долгов Дмитрий Геннадиевич Технический продюсер
4. Жеребина Ольга Георгиевна Руководитель направления по развитию компетенций партнерской сети в области коммуникаций и продаж, методист-эксперт
5. Петренко Александр Константинович ИСП РАН Ведущий научный сотрудник, руководитель группы RedVerst
6. Поваляев Егор Александрович Группа компаний IBS (компания Luxoft) руководитель Центра Экспертиз
7. Швецов Владимир Иванович Лаборатория Касперского Заместителя технического директора



Рецензенты.

ФИО Место работы Должность
1. Адигеев Михаил Георгиевич "ГЭНДАЛЬФ" Начальник отдела программных разработок
2. Анисимович Константин Владимирович ABBYY Директор по исследованиям и разработкам
3. Бербека Андрей Петрович 1С-Рарус Руководитель отдела проектной автоматизации
4. Варламов Анатолий Викторович ООО "Аудит-новые технологии" филиал в г.Ростов-на-Дону Главный специалист отдела разработки
5. Владимир Габриель Microsoft Советник по стратегическим технологиям
6. Гаврилов Александр Викторович Microsoft Менеджер по связям с университетами
7. Гвоздев Дмитрий ИК СИБИНТЕК Директор центра сервисных проектов
8. Даниэлян Татьяна Владимировна ABBYY Директор по управлению проектами
9. Заренков Константин Владимирович ООО "Аудит-новые технологии" филиал в г.Ростов-на-Дону Руководитель группы отдела разработки
10. Корнев Данила Алексеевич Microsoft Эксперт по технологиям разработки ПО
11. Леонов Александр Викторович «Аудит-новые технологии» филиал в г.Ростов-на-Дону Руководитель группы отдела разработки
12. Ли Валерий Александрович "Инфосьют" Старший консультант
13. Логинов Алексей Рудольфович 1С: ВЕКТРО Руководитель
14. Ложечкин Александр Владимирович Microsoft Руководитель группы технических экспертов
15. Магдануров Гайдар Ильдарович Microsoft Эксперт по технологиям разработки ПО
16. Образцов Артем Александрович "1С-Рарус" Руководитель Отдела Сопровождения
17. Павлов Дмитрий Алексеевич Скайт Ведущий программист
18. Портнов Николай Михайлович Компьютерное агентство КАПИТАН Директор
19. Федоров Алексей Microsoft Отдел стратегических технологий
20. Цыганков Михаил Арнольдович Microsoft Руководитель группы по работе с партнерами, клиентами и технологическими предпринимателями. Департамент стратегических технологий
21. Чащин Антон Дмитриевич «Аудит-новые технологии» филиал в г.Ростов-на-Дону Руководитель группы отдела разработки
22. Шершульский Владислав Microsoft Менеджер по стратегии платформ
23. Ясько А.В. "ВДГБ" Ведущий программист

Область применения

Настоящий стандарт устанавливает требования к профессиональным компетенциям по квалификационным уровням. Рекомендован для применения в организациях всех форм собственности; для организаций крупного, среднего и малого бизнеса.

Стандарт применяется в качестве нормативного документа, применяемого для подбора и расстановки кадров; планирования и нормирования труда; развития систем управления персоналом; для решения задач по профессиональной ориентации; для создания системы добровольной сертификации персонала и оценки уровня компетентности работников; для разработки образовательных стандартов и программ обучения в соответствии с требованиями работодателей; для проведения профессиональной подготовки, переподготовки и повышения квалификации персонала.

Указание сегмента сферы труда

Сектор Информационные технологии
Количество квалификационных уровней в профессиональном стандарте С 1 по 4

Профессиональный стандарт по профессии

«Программист»

Сектор Информационные технологии
Подсектор Разработка программных систем
Первый квалификационный уровень
Направление деятельности работников Создает код модулей или тестовых наборов для модулей системы или небольших приложений низкого уровня сложности по готовым спецификациям под руководством специалиста более высокого квалификационного уровня.
Требования к практическому опыту работы Не предъявляются
Требования к необходимости сертификации Не подлежит
Требования к состоянию здоровья Особых требований нет
Наименование должностей Стажер Кодировщик Младший программист Младший разработчик
Требуемый уровень профессионального образования и обучения Среднее профессиональное образование Повышение квалификации Профессиональная переподготовка

Перечень должностных обязанностей для первого квалификационного уровня:
1. Участие в анализе требований и создании сценариев использования продукта
2. Участие в разработке различных типов требований к программному продукту
3. Разработка кода программного продукта на основе готовых спецификаций на уровне модулей
4. Отладка и тестирование кода на уровне модулей
5. Участие в интеграции программных компонент в единое целое
6. Анализ и оптимизация кода c использованием инструментальных средств для повышения качества изделий и производительности разработки
7. Разработка тестовых наборов и тестовых процедур
8. Разработка и ведение проектной и технической документации по порученным задачам
9. Участие в ревьюировании технических документов
10. Участие в измерении характеристик программного проекта
11. Саморазвитие

Перечень основных умений, навыков и знаний, требуемых для выполнения должностных обязанностей
Должностные обязанности Основные умения, навыки, необходимые для выполнения должностных обязанностей Основные знания, необходимые для выполнения должностных обязанностей
1. Участие в анализе требований и создании сценариев использования продукта Вырабатывать требования к программному обеспечению Использовать средства и методы разработки требований и спецификаций Работать в команде Основные методы и средства эффективной разработки Типовые роли в процессе разработки программного обеспечения Методологии разработки программного обеспечения Внутренние нормы и регламенты разработки
2. Участие в разработке различных типов требований к программному продукту Вырабатывать требования к программному обеспечению Использовать средства и методы разработки требований и спецификаций Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки для генерации исполняемого кода Использовать методы и технологии разработки для генерации тестов по формальным описаниям Работать с документацией и технической литературой Работать в команде Основные методы и средства эффективной разработки Объектно-ориентированная разработка Методологии разработки программного обеспечения Внутренние нормы и регламенты разработки
3. Разработка кода программного продукта на основе готовых спецификаций на уровне модулей Владеть основными методологиями процессов разработки программного обеспечения Оптимизировать программный код с использованием специализированных программных средств Осуществлять разработку программного обеспечения на современных языках программирования Осуществлять объектно-ориентированную разработку Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Основные методы и средства эффективной разработки Типовые роли в процессе разработки программного обеспечния Методологии разработки программного обеспечения Внутренние нормы и регламенты разработки Стандартные алгоритмы и области их применения
4. Отладка и тестирование кода на уровне модулей Осуществлять отладку программ Использовать методы и средства разработки тестовых сценариев и тестового кода Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Методы и средства разработки тестовых сценариев и тестового кода Методы тестирования программного обеспечения Отладка автономно работающих приложений Отладка распределенных приложений
5. Участие в интеграции программных компонент в единое целое Владеть основными методами разработки программного обеспечения Работать в команде Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Методики разработки программного обеспечения Основы теории организации и применения баз данных Особенности программирования обмена с окружающей средой Системы контроля версий
6. Анализ и оптимизация кода c использованием инструменталь-ных средств для повышения качества изделий и производительности разработки Владеть основными методоиками процессов разработки программного обеспечения Применять эффективные методы разработки Оптимизировать программный код с использованием специализированных программных средств Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Методики разработки программного обеспечения Методы тестирования программного обеспечения Основные прикладные средства управления изменениями Особенности программирования обмена с окружающей средой
7. Разработка тестовых наборов и тестовых процедур Использовать методы и средства разработки тестовых сценариев и тестового кода Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Методы и средства разработки тестовых сценариев и тестового кода Методы тестирования программного обеспечения
8. Разработка и ведение проектной и технической документации по порученным задачам Разрабатывать проектную документацию, используя графические языки спецификаций Разрабатывать технологическую документацию Основы разработки и ведения проектной документации Стандарты документирования Методологии разработки программного обеспечения
9. Участие в ревьюировании технических документов Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Читать проектную документацию, разработанную с использованием графических языков спецификаций Работать в команде Методы и технологии ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Основы психологии и конфликтологии
10. Участие в измерении характеристик программного проекта Владеть основными методологиями процессов разработки программного обеспечения Работать в команде Основные принципы оценки проектов Основные принципы процесса разработки программного обеспечения Основные стандарты в области жизненного цикла производства программного обеспечения
12. Саморазвитие Развивать в себе аккуратность, аналитическое мышление, методичность, ответственность, дисциплинированность, коммуникабельность, креативность, исполнительность, организованность, инициативность Планировать и организовывать собственную работу Организовывать самообучение и повышение своей квалификации Осваивать новые методы и технологии в области информационных систем Читать профессиональную литературу на английском языке Письменно и устно излагать свои предложения и полученные результаты для различных аудиторий Отраслевая нормативно-техническая документация Корпоративная культура Специальная литература в области информационных технологий Русский язык и культура речи Английский язык на техническом уровне Развитие профессиональной компетенции на базе совершенствования знаний по фундаментальным дисциплинам: Теория алгоритмов Дискретная математика Математическая логика Численный анализ и оптимизация

Направление деятельности работников Самостоятельно создает спецификации, код модулей или тестовых наборов для компонент и подсистем; интегрирует модули в подсистемы, обеспечивая согласованное функционирование и требуемый уровень качества; руководит работой младших программистов; ответственность в пределах своего рабочего задания.
Требования к практическому опыту работы 2 года
Требования к необходимости сертификации Подлежит добровольной сертификации
Требования к состоянию здоровья Особых требований нет
Второй квалификационный уровень
Наименование должностей Программист Разработчик Инженер
Требуемый уровень профессионального образования и обучения Среднее профессиональное образование – Квалификация (степень) бакалавра Квалификация (степень) бакалавра Квалификация "дипломированный специалист" Профессиональная переподготовка Повышение квалификации
Перечень должностных обязанностей для второго квалификационного уровня:
1. Сбор и анализ требований, создание сценариев использования продукта
2. Разработка различных типов требований к программному продукту
3. Восстановление требований по коду в процессе ре-инжиниринга
4. Разработка детальной технической спецификации на основе высокоуровневых спецификаций по полученным требованиям
5. Формализация и контроль корректности требований и/или спецификаций, сформулированных на неформальном языке
6. Разработка кода программного продукта на основе готовых спецификаций
7. Отладка кода на уровне модулей, межмодульных взаимодействий и взаимодействий с окружением
8. Разработка и отладка сосредоточенных, распределенных и многопоточных приложений
9. Интеграция программных компонент
10. Анализ и оптимизация кода c использованием инструментальных средств для повышения качества продуктов и производительности разработки
11. Планирование тестирования и разработка тестовых наборов и процедур
12. Разработка и адаптация к проекту средств автоматизации тестирования
13. Разработка и ведение проектной и технической документации по порученным задачам
14. Ревьюирование технических документов
15. Измерение характеристик программного проекта
16. Анализ эффективности инструментальных средств для проекта
17. Инспекция программного обеспечения
18. Обучение и консультирование персонала
19. Саморазвитие

Перечень основных умений, навыков и знаний, требуемых для выполнения должностных обязанностей
Должностные обязанности Основные умения, навыки, необходимые для выполнения должностных обязанностей Основные знания, необходимые для выполнения должностных обязанностей
1. Сбор и анализ требований, создание сценариев использования продукта Вырабатывать требования к программному обеспечению Использовать средства и методы разработки требований и спецификаций Методы и средства сбора требований Методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода Объектно-ориентированный анализ Основные методы и средства эффективного анализа
2. Разработка различных типов требований к программному продукту Вырабатывать требования к программному обеспечению Использовать средства и методы разработки требований и спецификаций Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода и тестов по формальным описаниям Работать с документацией и технической литературой Методы и средства сбора требований Методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода Объектно-ориентированный анализ Основные методы и средства эффективного анализа
3. Восстановление требований по коду в процессе ре-инжиниринга Владеть технологией реинжиниринга Владеть методами абстрагирования спецификаций до уровня требований Владеть основными методами процессов разработки программного обеспечения Проводить объектно-ориентированный анализ Проектировать программное обеспечение с использованием специализированных программных пакетов Методы и средства сбора требований Методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода Объектно-ориентированное проектирование Объектно-ориентированный анализ Основные методы и средства эффективного анализа Основные методы и средства эффективного проектирования
4. Разработка детальной технической спецификации на основе высокоуровневых спецификаций по полученным требованиям Владеть основными методами процессов разработки программного обеспечения Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода и тестов по формальным описаниям Осуществлять объектно-ориентированное проектирование Средства и методы разработки требований и спецификаций Принципы архитектурного дизайна программного обеспечения Принципы поддержки целостности конфигурации в течение жизненного цикла разработки программного обеспечения Проектирование многопоточных приложений
5. Формализация и контроль корректности требований и/или спецификаций, сформулирован-ных на неформальном языке Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода и тестов по формальным описаниям Средства и методы разработки требований и спецификаций Принципы архитектурного дизайна программного обеспечения Принципы поддержки целостности конфигурации в течение жизненного цикла разработки программного обеспечения Проектирование многопоточных приложений
6. Разработка кода программного продукта на основе готовых спецификаций Владеть основными методами процессов разработки программного обеспечения Оптимизировать программный код с использованием специализированных программных средств Осуществлять разработку программного обеспечения на современных языках программирования Осуществлять объектно-ориентированную разработку Методы разработки программного обеспечения Методы и технологии использования средств разработки для получения кода с заданной функциональностью и степенью качества Объектно-ориентированная разработка Основные методы и средства эффективной разработки Особенности программирования обмена с окружающей средой Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках
7. Отладка кода на уровне модулей, межмодульных взаимодействий и взаимодействий с окружением Осуществлять отладку программ Использовать методы и средства разработки тестовых сценариев и тестового кода Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Особенности программирования обмена с окружающей средой Отладка автономных распределённых и многопоточных приложений
8. Разработка и отладка сосредоточенных, распределенных и многопоточных приложений Осуществлять объектно-ориентированную разработку Осуществлять отладку программ Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Методы разработки программного обеспечения Объектно-ориентированная разработка Основные методы и средства эффективной разработки Отладка автономных распределённых и многопоточных приложений Проектирование многопоточных приложений
9. Интеграция программных компонент Владеть основными методами процессов разработки программного обеспечения Осуществлять разработку программного обеспечения на современных языках программирования Осуществлять объектно-ориентированную разработку Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Основные методы и средства эффективной разработки Основы теории организации и применения баз данных Особенности программирования обмена с окружающей средой Отладка автономных распределённых и многопоточных приложений Принципы поддержки целостности конфигурации в течение жизненного цикла разработки программного обеспечения Системы контроля версий
10. Анализ и оптимизация кода c использованием инструменталь-ных средств для повышения качества изделий и производитель-ности разработки Владеть основными методологиями процессов разработки программного обеспечения Оценивать качество программного кода Применять эффективные методы разработки Оптимизировать программный код с использованием специализированных программных средств Методы разработки программного обеспечения Основные принципы управления качеством продукта Принципы контроля изменений конфигураций
11. Планирование тестирования и разработка тестовых наборов и процедур Использовать методы и средства разработки тестовых сценариев и тестового кода Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Методы и средства разработки тестовых сценариев и тестового кода Методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Методы тестирования программного обеспечения
12. Разработка и адаптация к проекту средств автоматизации тестирования Использовать методы и средства разработки тестовых сценариев и тестового кода Осуществлять разработку программного обеспечения на современных языках программирования Вносить изменения в работу разработанных программ Использовать методы и технологии использования средств разработки для получения кода с заданной функциональностью и степенью качества Методы тестирования программного обеспечения Методы и средства разработки тестовых сценариев и тестового кода Методы и технологии разработки формализованных требований и спецификаций для тестов по неформальным описаниям Методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте
13. Разработка и ведение проектной и технической документации по порученным задачам Разрабатывать проектную документацию, используя графические языки спецификаций Разрабатывать технологическую документацию Поддерживать актуальность проектной и технической документации Разработка и ведение проектной документации в соответствии со стандартами Методологии разработки программного обеспечения
14. Ревьюирование технических документов Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Читать проектную документацию, разработанную с использованием графических языков спецификаций Методы и технологии ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте
15.Измерение характеристик программного проекта Владеть основными методами процессов разработки программного обеспечения Использовать метрики программного проекта для измерения его характеристик Методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Основы CASE-средств и принципов их использования Основные положения для различных систем качества Основные принципы оценки проектов Основные стандарты в области жизненного цикла производства программного обеспечения
16. Анализ эффективности инструментальных средств для проекта Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Оценивать эффективность инструментальных средств Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Основные методы и средства эффективной разработки Основные принципы оценки проектов Основы CASE-средств и принципов их использования Основные положения для различных систем качества Основные стандарты в области жизненного цикла производства программного обеспечения
17. Инспекция программного обеспечения Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Оценивать качество программного обеспечения Оценивать функциональность программного обеспечения Методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Основы CASE-средств и принципов их использования Основы принципов управления качеством продукта Основные положения для различных систем качества Основные принципы оценки проектов Основные принципы процесса разработки программного обеспечения Основные стандарты в области жизненного цикла производства программного обеспечения
18. Обучение и консультирование персонала Осуществлять наставничество Осуществлять обучение персонала Работать с документацией и технической литературой Читать документацию и техническую литературу на английском языке Современные технологии в области работы специалиста Стандартные алгоритмы и области их применимости Численные методы Парадигмы программирования Дискретная математика Операционные системы Основы защиты информации
19. Саморазвитие Развивать в себе аккуратность, аналитическое мышление, методичность, ответственность, дисциплинированность, коммуникабельность, креативность, исполнительность, организованность, инициативность Планировать и организовывать собственную работу Организовывать самообучение и повышение своей квалификации Осваивать новые методы и технологии в области информационных систем Читать профессиональную литературу на английском языке Письменно и устно излагать свои предложения и полученные результаты для различных аудиторий Отраслевая нормативно-техническая документация Корпоративная культура Специальная литература в области информационных технологий Русский язык и культура речи Английский язык на техническом уровне Развитие профессиональной компетенции на базе совершенствования знаний по фундаментальным дисциплинам

Направление деятельности работников Разрабатывает и согласует спецификации, код и тесты на уровне системы; тестирует и оптимизирует код приложений на системном уровне; руководит группой разработчиков; возложена определенная ответственность, имеет некоторую автономность в принятии решений
Требования к практическому опыту работы 2 года
Требования к необходимости сертификации Подлежит добровольной сертификации
Специфические требования к состоянию здоровья Особых требований нет
Третий квалификационный уровень
Наименование должностей Инженер Старший разработчик Старший программист
Требуемый уровень профессионального образования и обучения Квалификация (степень) магистра Квалификация "дипломированный специалист" Повышение квалификации Профессиональная переподготовка

Перечень должностных обязанностей для третьего квалификационного уровня:
1. Сбор и анализ требований, создание сценариев использования продукта
2. Разработка различных типов требований к программному продукту
3. Восстановление требований по коду в процессе реинжиниринга
4. Разработка требований к техническим ресурсам
5. Разработка концепции реализации требований и критериев ее успешности
6. Разработка технической спецификации по полученным требованиям
7. Формализация и контроль корректности требований и спецификаций, сформулированных на неформальном языке
8. Разработка кода программного продукта на основе готовых спецификаций
9. Отладка кода на уровне модулей, межмодульных взаимодействий и взаимодействий с окружением
10. Разработка и отладка сосредоточенных, распределенных и многопоточных приложений
11. Интеграция программных компонент
12. Анализ и оптимизация кода c использованием инструментальных средств для повышения качества изделий и производительности разработки
13. Планирование тестирования и разработка тестовых наборов и процедур
14. Разработка и адаптация к проекту средств автоматизации тестирования
15. Планирование выполнения и процесса измерения проекта
16. Разработка и ведение проектной и технической документации
17. Ревьюирование технических документов
18. Сдача документации и программного обеспечения заказчику
19. Управление выполнением проекта
20. Руководство проектной группой
21. Взаимодействие с заказчиками
22. Измерение характеристик программного проекта
23. Анализ эффективности инструментальных средств для проекта
24. Инспекция программного обеспечения
25. Участие в совершенствовании процесса разработки в рабочих группах и технических советах
26. Участие в выработке корпоративных и проектных стандартов разработки
27. Обучение и консультирование персонала в рамках своей компетенции
28. Саморазвитие

Перечень основных умений, навыков и знаний, требуемых для выполнения должностных обязанностей
Должностные обязанности Основные умения, навыки, необходимые для выполнения должностных обязанностей Основные знания, необходимые для выполнения должностных обязанностей
1. Сбор и анализ требований, создание сценариев использования продукта Вырабатывать требования к программному обеспечению Использовать средства и методы разработки требований и спецификаций Оценивать требования Разрабатывать сценарии использования продуктов Методы и средства сбора требований Методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода Объектно-ориентированный анализ Основные методы и средства эффективного анализа
2. Разработка различных типов требований к программному продукту Вырабатывать требования к программному обеспечению Использовать средства и методы разработки требований и спецификаций Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода и тестов по формальным описаниям Работать с документацией и технической литературой Методы и средства сбора требований Методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода Объектно-ориентированный анализ Основные методы и средства эффективного анализа
3. Восстановление требований по коду в процессе реинжиниринга Владеть технологией реинжиниринга Владеть методами абстрагирования спецификаций до уровня требований. Владеть основными методами процессов разработки программного обеспечения Проводить объектно-ориентированный анализ Проектировать программное обеспечение с использованием специализированных программных пакетов Методы и средства сбора требований Методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода Объектно-ориентированное проектирование Объектно-ориентированный анализ Основные методы и средства эффективного анализа Основные методы и средства эффективного проектирования
4. Разработка требований к техническим ресурсам Владеть основными методологиями процессов разработки программного обеспечения Разрабатывать формализованные требования и спецификации для контроля заказанной функциональности и качества продукта Осуществлять объектно-ориентированное проектирование Работать с документацией и технической литературой Средства и методы разработки требований и спецификаций Принципы архитектурного дизайна программного обеспечения Принципы поддержки целостности конфигурации в течение жизненного цикла разработки программного обеспечения Проектирование многопоточных приложений
5. Разработка концепции реализации требований и критериев ее успешности Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода и тестов по формальным описаниям Применять инструментарий управления проектом Применять эффективные методы проектирования Методы и средства сбора требований Методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода Объектно-ориентированное проектирование Объектно-ориентированный анализ Основные методы и средства эффективного анализа Основные методы и средства эффективного проектирования
6. Разработка технической спецификации по полученным требованиям Владеть основными методами процессов разработки программного обеспечения Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода и тестов по формальным описаниям Осуществлять объектно-ориентированное проектирование Средства и методы разработки требований и спецификаций Принципы архитектурного дизайна программного обеспечения Принципы поддержки целостности конфигурации в течение жизненного цикла разработки программного обеспечения Проектирование многопоточных приложений
7. Формализация и контроль корректности требований и спецификаций, сформулированных на неформальном языке Использовать методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Использовать методы и технологии разработки формализованных требований и спецификаций для генерации исполняемого кода и тестов по формальным описаниям Осуществлять сопоставление требований Проверять корректность требований и спецификаций Средства и методы разработки требований и спецификаций Принципы архитектурного дизайна программного обеспечения Принципы поддержки целостности конфигурации в течение жизненного цикла разработки программного обеспечения Проектирование многопоточных приложений
8. Разработка кода программного продукта на основе готовых спецификаций Владеть основными методологиями процессов разработки программного обеспечения Оптимизировать программный код с использованием специализированных программных средств Осуществлять разработку программного обеспечения на современных языках программирования Осуществлять объектно-ориентированную разработку Методологии разработки программного обеспечения Методы и технологии использования средств разработки для получения кода с заданной функциональностью и степенью качества Объектно-ориентированная разработка Основные методы и средства эффективной разработки Особенности программирования обмена с окружающей средой Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках
9. Отладка кода на уровне модулей, межмодульных взаимодействий и взаимодействий с окружением Осуществлять отладку программ Использовать методы и средства разработки тестовых сценариев и тестового кода Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Особенности программирования обмена с окружающей средой Отладка автономных распределённых и многопоточных приложений
10. Разработка и отладка сосредоточенных, распределенных и многопоточных приложений Осуществлять объектно-ориентированную разработку Осуществлять отладку программ Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Методологии разработки программного обеспечения Объектно-ориентированная разработка Основные методы и средства эффективной разработки Отладка автономных распределённых и многопоточных приложений Проектирование многопоточных приложений
11. Интеграция программных компонент Владеть основными методологиями процессов разработки программного обеспечения Осуществлять разработку программного обеспечения на современных языках программирования Осуществлять объектно-ориентированную разработку Методологии разработки программного обеспечения Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Основные методы и средства эффективной разработки Основы теории организации и применения баз данных Особенности программирования обмена с окружающей средой Отладка автономных распределённых и многопоточных приложений Принципы поддержки целостности конфигурации в течение жизненного цикла разработки программного обеспечения
12. Анализ и оптимизация кода c использованием инструменталь-ных средств для повышения качества изделий и производительно-сти разработки Владеть основными методологиями процессов разработки программного обеспечения Применять эффективные методы разработки Оптимизировать программный код с использованием специализированных программных средств Оценивать оптимальность кода Оценивать производительность разработки Методологии разработки программного обеспечения Основные принципы управления качеством продукта Принципы контроля изменений конфигураций Методы оценки сроков и стоимости разработки
13. Планирование тестирования и разработка тестовых наборов и процедур Использовать методы и средства разработки тестовых сценариев и тестового кода Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Разрабатывать тестовые сценарии по спецификациям требований Планировать проведение технических работ Методы и средства разработки тестовых сценариев и тестового кода Методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Методы тестирования программного обеспечения Методы и технологии разработки формализованных требований и спецификаций для тестов по формальным описаниям
14. Разработка и адаптация к проекту средств автоматизации тестирования Осуществлять разработку программного обеспечения на современных языках программирования Использовать методы и технологии использования средств разработки для получения кода с заданной функциональностью и степенью качества Вносить изменения в работу разработанных программ Использовать методы и средства разработки тестовых сценариев и тестового кода Методы тестирования программного обеспечения Методы и средства разработки тестовых сценариев и тестового кода Методы и технологии разработки формализованных требований и спецификаций для тестов по неформальным описаниям Методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте
15. Планирование выполнения проекта и процесса измерения проекта Применять эффективные методы проектирования Владеть методами оценки проекта Планировать технические работы Внутренние нормы и регламенты разработки Модели и методологии жизненного цикла разработки программного обеспечения Принципы идентификации и планирования ресурсов Принципы проектного подхода к разработке программного обеспечения и соотношения проекта и жизненного цикла
16. Разработка и ведение проектной и технической документации Вести проектную документацию, используя графические языки спецификаций Разрабатывать технологическую документацию Разработка и ведение проектной документации в соответствии со стандартами Методологии разработки программного обеспечения
17. Ревьюирование технических документов Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Читать проектную документацию, разработанную с использованием графических языков спецификаций Методы и технологии ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте
18. Сдача документации и программного обеспечения заказчику Взаимодействовать с представителями заказчика или специалистами в предметной области Вести деловую переписку Принимать решения в рамках профессиональной компетентности Принципы взаимодействия с заказчиком для понимания его требований Основы конфликтологии и психологии
19.Управление выполнением проекта Применять инструментарий управления проектом Владеть основными методологиями процессов разработки программного обеспечения Сопоставлять метрики различных проектов Оценивать на основе метрик отдельные параметры исполнения проекта Применять инструментарий управления проектом Управлять персоналом Основные принципы оценки проектов Основы CASE-средств и принципов их использования Основные положения для различных систем качества Основные стандарты в области жизненного цикла производства программного обеспечения Типовые роли в процессе разработки программного обеспечения Основы управления изменениями Принципы определения конфигурации программного продукта и контроля ее изменений Принципы управления версиями и релизами программного обеспечения Этапы и принципы управления качеством процессов разработки в течение жизненного цикла производства программного обеспечения Управление персоналом
20.Руководство проектной группой Планирование проекта Проведение совещаний Применять инструментарий управления проектом Управлять персоналом Работать в команде Принимать решения в рамках профессиональной компетентности Методы оценки компетенций разработчиков Основы управления персоналом Принципы мотивации персонала Основы конфликтологии и психологии Управление персоналом
21.Взамодействие с заказчиками Взаимодействовать с представителями заказчика или специалистами в предметной области Описывать основные проектные решения Вести деловую переписку Принимать решения в рамках компетентности Разбираться в терминологии заказчика Проводить презентации Принципы взаимодействия с заказчиком для понимания его требований Объектно-ориентированное проектирование и анализ Основные методы и средства эффективного анализа и проектирования Основы психологии и конфликтологии
22.Измерение характеристик программного проекта Определять основные метрики проекта Оценивать точности измерения Владеть основными методологиями процессов разработки программного обеспечения Методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Основы CASE-средств и принципов их использования Основные положения для различных систем качества Основные принципы оценки проектов Основные стандарты в области жизненного цикла производства программного обеспечения
24. Анализ эффективности инструментальных средств для проекта Оценивать эффективность инструментальных средств Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Владеть основными методологиями процессов разработки программного обеспечения Языки программирования и инструментарий разработки программного обеспечения на соответствующих языках Основные методы и средства эффективной разработки Основные принципы оценки проектов Основы CASE-средств и принципов их использования Основные положения для различных систем качества Основные стандарты в области жизненного цикла производства программного обеспечения
24. Инспекция программного обеспечения Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Оценивать функциональность и качество программного продукта Планировать изменения на основе проведенной оценки Методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Основы CASE-средств и принципов их использования Основы принципов управления качеством продукта Основные положения для различных систем качества Основные принципы оценки проектов Основные принципы процесса разработки программного обеспечения Стандарты в области жизненного цикла производства программного обеспечения
26. Участие в совершенствова-нии процесса разработки программного обеспечения в рабочих группах и технических советах Анализировать результаты выполненных проектов Обобщать эффективные технологии и проектные решения Предлагать эффективные процессные решения для реализации выбранной архитектуры и процесса ее реализации Планировать выполнение работ по совершенствованию процесса Применять эффективные методы проектирования Применять инструментарий управления проектом Владеть основными методологиями процессов разработки программного обеспечения Принимать решения в рамках профессиональной компетентности Подготавливать аргументацию Работать в команде Основные принципы процесса разработки программного обеспечения Основы принципов управления качеством продукта Основные положения для различных систем качества Основные принципы оценки проектов Основные стандарты в области жизненного цикла производства программного обеспечения Основы конфликтологии и психологии Управление персоналом
27. Участие в выработке корпоративных и проектных стандартов разработки Обобщать эффективные методы и технологии разработки проектов на основе знаний технологического процесса и опыта разработки проектов и собирать предложения по их совершенствованию. Участвовать в разработке корпоративных и проектных стандартов разработки Вырабатывать требования к программному обеспечению Использовать методы и технологии тестирования и ревьюирования кода и проектной документации для контроля достижения заданной функциональности и качества в программном проекте Разрабатывать проектную документацию, используя графические языки спецификаций Разрабатывать технологическую документацию Принимать решения в рамках профессиональной компетентности Методы и технологии разработки формализованных требований и спецификаций для контроля заказанной функциональности и качества продукта Основые CASE-средств и принципов их использования Основы принципов управления качеством продукта Основные положения для различных систем качества Основные принципы оценки проектов Основные принципы процесса разработки программного обеспечения Основные стандарты в области жизненного цикла производства программного обеспечения Основы конфликтологии и психологии Управление персоналом
28. Обучение и консультирование персонала в рамках своей компетенции Осуществлять наставничество Осуществлять обучение персонала Работать с документацией и технической литературой Читать документацию и техническую литературу на английском языке Проводить презентацию Современные технологии в области работы специалиста Стандартные алгоритмы и области их применимости Парадигмы программирования Операционные системы Основы защиты информации Основы педагогики и психологии
29. Саморазвитие Развивать в себе аккуратность, аналитическое мышление, методичность, ответственность, дисциплинированность, коммуникабельность, креативность, исполнительность, организованность, инициативность Планировать и организовывать собственную работу Организовывать самообучение и повышение своей квалификации Осваивать новые методы и технологии в области информационных систем Читать профессиональную литературу на английском языке Письменно и устно излагать свои предложения и полученные результаты для различных аудиторий Отраслевая нормативно-техническая документация Корпоративная культура Специальная литература в области информационных технологий Русский язык и культура речи Английский язык на техническом уровне Развитие профессиональной компетенции путем совершенствования знаний по фундаментальным дисциплинам


7830940095434893.html
7831040437113050.html
    PR.RU™