codefest 2010. Платов А. — Производство ПО для разработчиков

Post on 11-May-2015

2.053 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Платов on SoftwareCodeFest, Новосибирск, 2010

Гусары, молчать!хотя бы минут пятнадцать

Два Путипо версии Кремниевой Долины

• Assistant

• Project Manager

• Senior Project Manager

• Program Manager

• Senior Program Manager

• Director of ...

• ...

• Jr. Software/QA Engineer

• Software/QA Engineer

• Sr. Software/QA Engineer

• (QA) Team Leader

• Principal Engineer

• Director of Engineering

• ...

Российский Путь™технического специалиста

основано на реальных событияхне все фамилии изменены

Начало путинетипичная версия

• Выпускник ВУЗа• Начинающий специалист• Овладевший профессией (годам к 25)

• Профессионал (годам к 30)

Начало путистандартная версия

• Выпускник ВУЗа• Профессионал

Два Путипосле 30 лет

•Менеджер•Лузер

Реклама Славы ПанкратоваИли когда пора идти к карьерному консультанту для “перехода на новый профессиональный уровень”

http://www.it4business.ru/consulting/

• Я уперся в потолок по своей специальности, куда двигаться дальше?

• Мне уже 30, а я до сих пор разработчик/тестировщик/внедренец…

• Я хочу быть менеджером проектов, потому что не знаю как еще расти в IT.

Роль Менеджера ПроектаВ российском IT

Заставь их работать!

Типы “Менеджеров”что имеем в результате

• Мальчик, минимизирующий риски• Менджер-таксист/переговорщик • Обаятельный полуменеджер-тестировщик

• Обычный российский, в обе стороны стимулирующий менеджер

А в это время...в соседней галактике

Роль Менеджера Проектана примере Scrum

Roles in ScrumАккуратно скопировано с Wikipedia.org

• Product Owner The person responsible for maintaining the Product Backlog by representing the interests of the stakeholders.

• ScrumMasterThe person responsible for the Scrum process, making sure it is used correctly and maximizing its benefits.

• Team

A cross-functional group of people responsible for managing itself to develop the product.

• Scrum TeamProduct Owner, ScrumMaster and Team

“Pig” roles

• ScrumMaster (or Facilitator)The ScrumMaster is not the leader of the team (as the team is self-organizing) but acts as a buffer between the team and any distracting influences. The ScrumMaster ensures that the Scrum process is used as intended. The ScrumMaster is the enforcer of rules.

• TeamThe team has the responsibility to deliver the product. A team is typically made up of 5–9 people with

cross-functional skills who do the actual work (design, develop, test, technical communication, etc.).

• Product OwnerThe Product Owner represents the voice of the customer. He/she ensures that the Scrum Team works with the “right things” from a business perspective. The Product Owner writes customer-centric items (typically user stories), prioritizes them and then places them in the product backlog.

“Chicken” rolesChicken roles are not part of the actual Scrum process, but must be

taken into account.

• StakeholdersThey are people for whom the software is being built.These are the people who enable the project and for whom the project will produce the agreed-upon benefit[s], which justify its production. They are only directly involved in the process during the sprint reviews.

• ManagersPeople who will set up the environment for the product development organizations. Period.

Почему Россия – не Калифорния

• Быдло-Oriented Development Processes (БODP)

• Недооценка профессионала со стороны общества и работодателя

• Стремление потенциально хорошего специалиста стать лицом начальствующим вследствии его недооценки или паталогии

АвтотестРоссийская инновация в тестировании

Нам просто необходимокак компании разрабатывающей ПО

• Deliver around of 50 of user stories per 2 week-long iteration having 5-6 software engineers in a team

• Ensure that every 2-week release is of perfect quality and we have no regressions

• This means we need to develop 50-200 of functional tests per 2 week iteration

• We want all of existing functional test base to run in continuous integration environment on each commit within reasonable (less than an hour) amount of time

• We want a single QA engineer without serious programming skills per such team to develop and maintain all those tests

• Keep this process ongoing during years

Идеальный тестировщик

Серверная стойка, забитая соответствующим железом

Проблемы

• Почти нулевые знания менеджмента и технических специалистов о том как работает мировая индустрия разработки ПО

• Паталогическое мнение о том что мы сейчас решим проблему лучше всех (и научим других на CodeFest)

• Миф о профессионализме российских программистов (поддерживаемый на уровне правительства)

• Что такое хэш-таблица?

Решения

• Учиться, учиться, и еще раз учиться!– В.И. Ленин

• Стремиться стать профессионалом в своей области

top related