Загрузка...

Жизнь программиста

Преподаватель:

Власенко Олег
Власенко Олег Федосович
SimbirSoft

 

Заместитель директора
 

 

Окончил Ульяновский государственный технический университет, специальность «Вычислительные машины, комплексы, системы и сети» в 1995 г. Опыт в разработке ПО более 20 лет, в коммерческой разработке ПО – более 10 лет. Как программист и руководитель активно участвовал в ряде международных  проектов. С 2003 года работает в компании SimbirSoft. Прошел путь от рядового разработчика до заместителя директора. Кроме того более 15 лет преподает в УлГТУ на кафедре «Вычислительная техника». Обучает студентов ФИСТ программированию и технологиям разработки ПО. Сотни его учеников работают во всех значимых ИТ компаниях города, занимаясь профессиональной разработкой ПО, используя полученные знания.

Мастер справедливого контроля и эффективной мотивации.

 

Аннотация курса:

 

Курс «Жизнь программиста» является путеводителем для студентов и представителей всех других категорий слушателей, желающих себя посвятить разработке ПО. Информация, предоставляемая, в рамках этого курса, будет полезна всем будущим специалистам в разработке ПО: программистам, тестерам, дизайнерам, руководителям проектов, аналитикам и другим. Информация, даваемая в курсе, позволит ориентироваться во множестве всех вариантов карьеры ИТ специалиста. Изучение курса позволит также слушателю с минимальными затратами времени, сил и денежных средств выйти на те профессиональные позиции, на которые он стремится, и на те технологии, с которыми он хотел бы работать.

Курс состоит из 4 встреч.

 

Целевая аудитория: 

 

студенты, желающие работать в разработке ПО
специалисты других направлений, желающие перейти в работать в ИТ сферу

 

Цель курса:

 

Ориентация выпускников вузов в пространстве возможных вариантов карьеры в ИТ
Задание выпускникам направлений самообучения для того, чтобы они смогли стать профессионалами в области ИТ

 

Какие курсы рекомендованы после данного:

 

Курсы и самостоятельное обучение: English, технологические курсы (.NET, php, java, тестирование, и т.д.), базовая подготовка (алгоритмы, структуры данных), изучение инструментария (применение IDE, системы контроля версий, и т.д.)

 

 

Содержание курса

 

Занятие 1 — Введение в курс. Основные ИТ профессии. Типичный рабочий день специалиста ИТ

Введение в курс. Место ИТ в мире – бизнес, государственные органы, повседневная жизнь. Чем полезно ИТ для мира. Основные должности ИТ специалистов: администратор, ИТ поддержка в офисе, программист, тестер, руководитель ИТ, зам. директора/директор по ИТ. Как выглядит типичный день специалиста в ИТ. Чем занимается программист? Чем занимается тестер? Чем занимается аналитик? Чем занимается PM? Чем отличается работа в ИТ организации от работы не в ИТ организации?

 

Занятие 2 — Типичный проект разработки ПО. Индивидуальный инструментарий программиста
Что такое программный продукт? Жизненный цикл (ЖЦ) разработки программного продукта. За что в жизненном цикле отвечает разработчик? Примеры разработки реальных проектов.

Языки программирования – история развития. Популярность сегодня.

Операционные системы – зачем нужны? История развития. Популярность сегодня.

«Сапожник без сапог»? Какие инструменты увеличивают эффективность программиста. Системы поиска, IDE, редакторы, отладчики и т.п. Вопросы эффективности: эффективность алгоритмов – O нотация, профайлеры, зло преждевременной оптимизации.  (Пример - поиск в массиве)

 

 

Занятие 3 - Разработка ПО – коллективная игра
Еще раз о разных ролях в проекте. Необходимость сотрудничества и коммуникации как неизбежное зло для разработчиков.

О чем не говорят в вузах. Особенности совместной работы. Коммуникации. Инструменты коммуникации: живое общение, документация, системы контроля версий (git, svn и т.п.), системы багтрекинга и управления задачами, и т.д. Роль документации при коллективной разработке. 

Основные методологии разработки – «Водопадная модель» vs «Agile».

 

 

Занятие 4— Как стать профи в разработке
Типичная карьера успешного разработчика. Что делать если вы не попали в «типичную карьеру». Как стать разработчиком вопреки всему. Самообучение – чем заниматься, как заниматься. Опыт – где получать. Как продвигать себя. Вопрос цены – сколько я стою. Собственная голова как главный инструмент разработчика. Как заточить голову? Необходимые для разработчика навыки.

Почему компании не хотят брать «детей со скамьи», а хотят «готовых профи». Чем отличаются «дети» от «профи». Как делать качественный код. Как обеспечить – читабельность и сопровождаемость, эффективность, гибкость. Как сочетать несочетаемое.

Личностные качества, которые повышают шансы стать профи.