23
Современный программист Что ждет студента на рынке труда

kranonit s00e01 Андрей Пономарёв: Современный программист

Embed Size (px)

DESCRIPTION

http://stokito.wordpress.com/2012/01/31/lecture-it/ Лекция Андрея Пономарёва http://linkedin.com/in/andreyponomarev/ для студентов Криворожского Технического Университета о устройстве IT рынка и как устроится на работу. Где работают программисты Какие программисты нужны Сколько получают программисты Как работают программисты С кем работают программисты Как искать работу Чуть переработанная эта презентация была разбита на две часати и рассказана на первой встрече Клуба анонимных айтишников http://kranonit.wordpress.com/2012/09/16/%D0%BE%D1%82%D1%87%D1%91%D1%82-%D0%BE-%D0%BF%D0%B5%D1%80%D0%B2%D0%BE%D0%B9-%D0%B2%D1%81%D1%82%D1%80%D0%B5%D1%87%D0%B5-%D0%BA%D0%BB%D1%83%D0%B1%D0%B0-%D0%B0%D0%BD%D0%BE%D0%BD%D0%B8%D0%BC%D0%BD%D1%8B/

Citation preview

Page 1: kranonit s00e01 Андрей Пономарёв: Современный программист

Современный программистЧто ждет студента на рынке труда

Page 3: kranonit s00e01 Андрей Пономарёв: Современный программист

О чем пойдет речь

● Где работают программисты● Какие программисты нужны● Сколько получают программисты● Как работают программисты● С кем работают программисты● Как искать работу

Page 4: kranonit s00e01 Андрей Пономарёв: Современный программист

Где работают программисты

● Фриланс● "Рога и Копыта"● IT отдел● IT компания

○ Outsource○ Outstaff○ Product

Page 5: kranonit s00e01 Андрей Пономарёв: Современный программист

Какие программисты нужны

Page 6: kranonit s00e01 Андрей Пономарёв: Современный программист

Какие программисты нужны

Page 7: kranonit s00e01 Андрей Пономарёв: Современный программист

Какие программисты нужныПример объявления

Junior Java разработчик● Высшее профильное образование, РАССМОТРИМ

СТУДЕНТОВ ПОСЛЕДНИХ КУРСОВ● Математический склад ума ● Уверенное знание J2SE, понимание принципов ООП.● Опыт работы с ОС Linux.● Знания SQL, Spring, Hibernate, JavaScript, JUnit.● Опыт работы со средствами сборки ANT, Maven.● Опыт разработки многопоточных систем.● Опыт работы с базами данных MySql, Oracle.● Английский - технический

Page 8: kranonit s00e01 Андрей Пономарёв: Современный программист

Сколько получают программисты

Киев, декабрь 2011, по данным developers.org.uaВыборка по Delphi не репрезентативна из-за малого кол-ва анкет

Page 9: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программисты

● Баг-трекер● Процесс разработки● Парное программирование● Система контроля версий● Тесты● Автоматическая сборка● Непрерывная интеграция● Шаблоны проектирования● Рефакторинг

Page 10: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыПарное программирование● Роли: "штурман" и "водитель"● Больше глаз - меньше дефектов● Лучше архитектура● Понятнее код● Обмен знаниями● Больше производительность

Page 11: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыБаг-трекер

Page 12: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыПроцесс разработки

Из книги Х. Книберг "Scrum и XP: заметки с передовой"

Page 13: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыСистема контроля версий

Page 14: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыСистема контроля версий

Page 15: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыТестыВиды тестов:● Модульные● Интеграционные● Приемочные● Нагрузочные

Структура теста:1. Given2. When3. Then

Page 16: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыТестыПример модульного теста:

Page 17: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыАвтоматическая сборкаТипичные действия во время сборки:● Генерация кода● Компиляция● Копирование ресурсов (картинок, файлов конфигураций)● Упаковка● Сборка инсталлятора

Page 18: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыНеперывная интеграция● Выполняется автоматически● Типичные шаги:

○ Получить код из репозитория○ Прогнать модульные тесты○ Выполнить сборку○ Установить приложение○ Прогнать приемочные тесты○ Прогнать статические анализаторы○ Если найдена проблема, поднять тревогу

Page 19: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыШаблоны проектирования● Стандартные решения типичных проблем● Не привязаны к какому-либо конкретному языку

программирования● Примеры: Factory, Adapter, Strategy● Самая главная книга: GoF

Page 20: kranonit s00e01 Андрей Пономарёв: Современный программист

Как работают программистыРефакторингРефакторинг (англ. refactoring) — процесс изменения внутренней структуры программы, не затрагивающий её внешнего поведения и имеющий целью облегчить понимание её работы.

Не рефакторинг:● Исправление дифектов● Оптимизация● Переписывание "с нуля"

Page 21: kranonit s00e01 Андрей Пономарёв: Современный программист

С кем работают программисты

● Разработчики● Тестировщики (QA)● Team Lead● Менеджер проекта● Бизнес аналитик● Владелец продукта

Page 22: kranonit s00e01 Андрей Пономарёв: Современный программист

Как искать работу

● Резюме● Ресурсы

○ Сайты поиска работы○ Социальные сети○ Ресурсы для программистов○ Сайты IT компаний

● Собеседование

Page 23: kranonit s00e01 Андрей Пономарёв: Современный программист

Вопросы

?