Инженер-разработчик программного обеспечения на платформе
Введение
EPAM Systems представляет программу обучения – “Инженер-разработчик программного обеспечения на платформе ”.
Программа формирует комплекс знаний и практических навыков, соответствующих квалификации инженер-разработчик программного обеспечения на платформе промышленного уровня. Программа формирует знания и практические навыки в следующих областях: промышленный процесс производства ПО, процесс разработки ПО, технологические аспекты процесса разработки ПО на платформе . Программа состоит из тематических модулей, формирующих системный подход решения задач разработки ПО на платформе .
Мы используем уникальную, собственную методику обучения, благодаря которой специалисты приобретают комплекс знаний и практических навыков профессионального уровня, необходимых для работы на проектах по разработке ПО различной степени сложности.
Главным результатом успешного обучения является предложение слушателю позиции разработчика программного обеспечения в компании EPAM Systems, а также реализация приобретенных знаний и навыков непосредственно в работе на различных проектах.
Цель курса
Целью данной программы является:
· Обеспечение комплекса необходимых знаний и практических навыков, соответствующих квалификации инженер-разработчик программного обеспечения на платформе . промышленного уровня.
· Обеспечение гарантии успешной реализации специалистом полученных знаний и навыков на практике.
· Развитие потенциальных способностей и таланта специалиста в области разработки ПО.
Программа формирует у слушателя следующий комплекс знаний и практических навыков
Профессиональные знания и практические навыки работы с технологическими аспектами процесса разработки ПО:
· Понимание современной концепции разработки ПО, в том числе, с использованием трехуровневой архитектуры.
· Знания и навыки работы c технологиями и серверами приложений платформы .
· Знания и навыки применения языков: HTML, XML/XSL, UML.
Профессиональные знания и практические навыки работы с процессом разработки ПО:
· Знания и навыки работы с процессом разработки программного обеспечения.
Профессиональные знания и практические навыки работы с процессом производства ПО промышленного масштаба:
· Знания и навыки работы с процессом производства программного обеспечения.
· Умение работать в команде и выполнять задачи в срок с требуемым уровнем качества.
· Умение планировать свою работу и вести отчетность.
· Умение самостоятельно разбираться в проблемах и проводить исследовательские работы.
Содержание программы и сроки обучения
Программа состоит из тематических модулей, сформированных согласно требованиям к уровню подготовки по программе, а также серии курсов, содержащихся в каждом модуле. Содержание программы по желанию может меняться в зависимости от первоначального уровня подготовки студента.
Следующая Таблица 1. отражает состав программы и сроки обучения:
Состав программы | Длительность (час) |
Тема Основы языка С# Создание собственных типов в C# Задание Библиотека. Разработка модели данных для библиотеки и консольного тестового приложения | 32 |
Тема Введение в базовую библиотеку классов (строки, потоки данных, коллекции) Инструменты разработки (SVN, Code Style, NUnit) Задание Библиотека. Переписывание библиотеки на коллекции и работу с файлами. Добавление модульных тестов | 32 |
Тема Расширенные возможности C# (делегаты, события, lambda-выражения, атрибуты, LINQ, …) Расширенные возможности базовой библиотеки. Net (интернационализация, конфигурирование, ...) Задание Библиотека. Добавление сложных поисков. Обработка исключений (с тестами). Локализованные сборки. Использование конфигураций. | 32 |
Тема Введение в Web (HTML, CSS, Java Script) Задание Интернет-магазин. Верстка интерфейса. | 40 |
Тема Основы XML (XML, XPath, XSD, XSLT) Использование XML в. Net Задание Библиотека. Переделка библиотеки на хранение данных в XML (ручной разбор и XML-сериализация). Использование DOM. Разработка XML-схемы и проверка по схеме. Формирование HTML-отчета (XSLT). | 40 |
Тема Введение в MVC Задание Интернет-магазин. Базовый функционал (показ, поиск, ввод). Хранение модели в XML | 40 |
Тема Расширенный MVC (Безопасность, Сессии, jQuery, Ajax) Задание Интернет-магазин. Расширение функционала (корзина, разделение по пользователям, клиентская валидация). Сортировка и пейджинг (ajax) | 60 |
Тема Основы TSQL (создание объектов БД, манипулирование данными, хранимые процедуры, введение в транзакции) Основы мониторинга запросов Задание Практикум по TSQL Интернет-магазин. Проектирование базы данных | 40 |
Тема Основы Отчеты в Reporting Services Задание Интернет-магазин. Перевод на , создание нескольких отчетов | 40 |
Тема Entity Framework Тестирование Web-приложений (MVC Contrib, WatiN) Задание Интернет-магазин. Переписывание модели на EF. Покрытие тестами. | 40 |
Тема Основы Windows Communication Foundation (WCF) Задание Интернет-магазин. Создание внешнего интерфейса заказов на базе web services. Введение мультивалютности (получение внешнего курса валют) | 24 |
Тема Основы MSBuild Подготовка дистрибутива (MS Deploy) Администрирование IIS Задание Интернет-магазин. Подготовка дистрибутива. | 32 |
ИТОГО: | 452 часа. |
Входные требования к студентам
1. Английский технический.
- Знание английского языка в объеме чтения и понимания технической документации.
2. Знание основ SQL
- Представление и умение объяснить, что такое базы данных
- Нормализиция / Третья нормальная форма
- Умение таблично представить связь многие ко многим
- Понимание, для чего нужны Primary Key в таблицах
- Понимание элементарных действий с данными одной таблицы (Select/Insert/Update/Delete)
3-4. ООП и современный язык программирование поддерживающий ООП
- Понимание базовых понятий ООП:
* Инкапсуляция
* Наследование
* Виртуальные и не виртуальные методы
* Статические методы, свойства
- Умение на примере языка показать
* особенности языка программирования
* что такое исключения и их обработка
* умение превратить абстрактный текст в модель классов (как минимум с наследованием)
· понимание событий и их обработка
· понимание делегатов


