Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 12 лет назад пользователемMikhailPayson
1 Как воспитать программиста Несколько теоретических и три практических совета по воспитанию эффективного программиста Михаил Пайсон
2 План Основной капитал Software компании Откуда берутся программисты? – Как найти готового специалиста? – Как найти студента? – Как сделать что-то с уже существующими людьми? Уровни мастерства – Источники плохого кода – Три шага становления программиста Практические советы – Чему учить? – Основные ценности – Инспекция кода
3 Основной капитал Software компании Что является основным продуктом Software компании?
4 Основной капитал Software компании Программный продукт! –П–Производство –И–Интеграция –П–Поддержка –М–Маркетинг и продажи
5 Какие ресурсы идут на производство продукта?
6 Основной капитал Software компании Единственное, что требуется для производства ПО - Человеческая мысль!
7 Основной капитал Software компании Основной капитал Software компании- люди, которые в ней работают А конкретно – программисты, которые пишут ПО
8 Откуда берутся программисты? Как найти готового специалиста? Как найти студента? Как сделать что-то с уже существующими людьми?
9 Откуда берутся программисты? Как найти готового специалиста?
10 Откуда берутся программисты? Как найти готового специалиста? Переманить деньгами Переманить интересной работой Переманить карьерным ростом Переманить условиями труда Получить готового специалиста в связи с его переездом
11 Откуда берутся программисты? Как найти студента?
12 Откуда берутся программисты? Как найти студента? Создать высокий имидж компании Договориться с кафедрами Прочитать курс лекций Организовать СКБ или НИРС
13 Откуда берутся программисты? Как сделать что-то с уже существующими людьми?
14 Откуда берутся программисты? Как сделать что-то с уже существующими людьми? Учить Направлять Воодушевлять Контролировать!
15 Откуда берутся программисты? Кейс Вы приходите в новую группу Есть разработчик: – Большой опыт и знания – Не удовлетворяет начальство, т.к. не может в срок выполнить задачу – «Слил» важный проект Решение начальства: «надо увольнять» Ваши действия?
16 Уровни мастерства Источники плохого кода Три шага становления программиста Кривая обучения
17 Источники плохого кода Никто и никогда сознательно не пишет плохо Основной источник – отсутствие «воспитания» Второй источник – отсутствие контроля Третий источник – отсутствие времени
18 Три шага становления программиста НизкаяВысокая Низкое Высокое Производительность Качество ТупимКолбасим УмничаемПрограммируем Эффективное развитие Бесконтрольное развитие Надо что-то делать! Не бывает! Исправление ситуации Производительность упала!
19 Шаг 1. Ненависть Научите программиста ненавидеть: – Некачественный код – «Сделать как побыстрее» – Костыли и заплатки – «Сейчас начнём, а потом увидим – что получится»
20 Шаг 2. Страсть Программист начинает: – Любить «умничать» – Писать «красивые решения» – Наворачивать паттерны и методологии – Отшлифовывать код до блеска – Гордиться своей профессиональной компетентностью
21 Шаг 3. Здравомыслие Программист осознаёт: – Думаем прежде, чем пишем – Нет универсальных решений – Чем проще, тем легче работать – Эффективность прежде всего
22 Кривая обучения Первое время любой программист тратит время команды С определённого момента он начинает работать сам, но работает неэффективно Для того, чтобы программист вышел на свою полную мощность требуется много времени Опять инвестиции! Производительность Недели Убытки Неэффективная работа Затраты на обучение
23 Практические советы Чему учить? Основные ценности Инспекция кода
24 Чему учить? Подумай каждый раз перед тем, как писать Код вероятно придётся модифицировать: чем «грязнее» код, тем больше проблем у тебя будет потом Аккуратное приложение без ошибок выглядит круто. И все любят его автора. Трус не играет в хоккей, а профессионал не «колбасит»
25 Чему учить? Общие соглашения написания кода (унификация) Низкоуровневая архитектура (паттерны) Использование сторонних компонентов и готовых решений
26 Основные ценности Код должен быть Продуман Аккуратен Эффективен Быстро, просто и аккуратно решать поставленную задачу
27 Инспекция кода Проводится еженедельно для кода, написанного за неделю Проводится опытными программистами по очереди Время на подготовку – 4 часа Время на проведение – 1 час
28 Инспекция кода. Проведение Проводится в виде обсуждения Ведущий готовит список недочётов (по его мнению) Имена авторов «плохого кода» не указываются Команда обсуждает каждый из недочётов Обязательно подводятся итоги Принимается решение о исправлении либо рефакторинге части недочётов
29 Инспекция кода. Junior Для junior – Нахождение «плохого кода», пока он не врос в систему – контроль профессионального развития программиста – Обучение: обсуждение и применение подходящей архитектуры
30 Инспекция кода. Senior Для senior – «Свежий взгляд» на код – Обдумывание более быстрых и эффективных решений – Иногда и профессионалы «колбасят»
31 Инспекция кода. Команда Для команды в целом – Возможность обсудить качество кода и архитектурных решений – Стимул писать аккуратно, чтобы потом не краснеть на review – Постоянное поддержание необходимости «писать хорошо»
32 Инспекция кода. Проблемы Поиск серьёзных архитектурных недочётов малоэффективен Очень сложно избежать перехода на личности Вечный недостаток времени
33 Обсуждение
Еще похожие презентации в нашем архиве:
© 2023 MyShared Inc.
All rights reserved.