Компьютер-Информ || Архив || Рубрики || Поиск || Подписка || Работа || О "КИ" || Карта


Новости СПб

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


На разработке программного обеспечения зарабатывает себе на жизнь значительное число специалистов ИТ-индустрии Питера. Эту тему в КИ обсуждают уже более 10 лет. Все эти годы редакция КИ старалась, с одной стороны, показать истории успешной деятельности в этой сфере питерских специалистов, а с другой выявить и обозначить узкие, острые и прочие нерадостные стороны данного бизнес-процесса. После январского совещания по вопросам развития информационных технологий с президентом страны В. В. Путиным началась эпопея по созданию технопарков. Вот редакция КИ и задалась вопросами: а как сейчас живут и работают фирмы, которые без какой-либо государственной опеки фактически создали отрасль заказного ПО и дали работу множеству специалистов?
Есть еще один момент: все вновь создаваемые фирмы рассчитывают где-то найти себе работников, а как неоднократно отмечалось в публикациях в СМИ на эту тему, программистов уже сейчас остро не хватает. Чтобы молодежь могла учиться на программиста, надо, конечно, учителей для них набрать побольше, и зарплаты преподавательские довести до мало-мальски приемлемого уровня. И надо как-то пропагандировать эту специальность, чтобы молодежь вообще ПОШЛА.
Так что у данной серии интервью с руководителями ведущих организаций нашего города, производящих программное обеспечение на заказ, изначально было две задачи:
1) показать профессиональный уровень работы фирм нашего города, и
2) пропагандировать труд программиста и менеджера в этой сфере среди молодого поколения СПб.
Организации для серии интервью отбирались по базе данных редакции КИ, как чисто российские, так и филиалы иностранных фирм.
Что ж, нам не дано предугадать, как наше слово отзовется, но надеемся, что совместная работа авторов интервью и редакторов КИ будет полезна, в первую очередь, студентам и абитуриентам.
Гл. редактор КИ Ольга Андронова, editor@ci.ru


Александр Пресняк,
CTO компании SoftDev SPb

В.: В области производства какого ПО специализируется ваша компания?
О.: SoftDev работает над проектами довольно широкого спектра, однако примерно 70 % наших разработок имеет непосредственное отношение к CAD (computer added design). Я стараюсь избегать термина САПР, поскольку он порой слишком широко трактуется в отечественной литературе.

В.: Как вы разыскиваете себе заказы?
О.: Был момент в нашей деятельности, когда нам остро потребовались новые заказы. Мы разослали тысячи писем IT-компаниям с предложением о сотрудничестве. Итог этой акции был нулевым.
Каким же образом мы получаем заказы? Почти все наши новые проекты мы получили от людей, которые ранее с нами работали, либо по рекомендациям таких людей. Вывод однозначен: надо работу выполнять всегда так, чтобы клиент был доволен, а люди, непосредственно работающие с вами, ценили ваш профессиональный уровень.

В.: Как организовано взаимодействие с заказчиком?
О.: Не бывает одинаковых проектов. Одни проекты предполагают разработку с нуля, другие использование существующего кода, созданного неизвестно кем, в качестве основы для выпуска новой версии продукта. В одних случаях предельно ясно, что и как нужно делать, в других необходимо провести исследовательскую работу с не очень предсказуемым результатом.
Не бывает также и одинаковых заказчиков. Одни заказчики предоставляют детальную спецификацию, другие лишь общее видение. Многие заказчики предпочитают отдать нам всю разработку, другие лишь небольшую часть большого проекта.
Тип проекта и стиль работы заказчика диктуют и организацию взаимодействия с ним при реализации совместного проекта. Мы не диктуем заказчику, как он должен с нами взаимодействовать. Скорее подстраиваемся под его стиль работы.

В.: Для выполнения проекта у вас организуется единая команда или на каждый этап разработки и внедрения формируется отдельный коллектив?
О.: В основном схема следующая. Для работы с каждым заказчиком по всем его проектам организуется группа разработчиков. Руководитель группы отвечает за технические контакты с заказчиком, а старшие инженеры за отдельные проекты. Имеются также две группы, общие для всех проектов: QA и Release Engineering, отвечающие за тестирование и техническую работу по подготовке билдов, соответственно.

В.: Каким образом производится тестирование ПО?
О.: Ручное (70 %) и автоматическое (30 %) с предварительным согласованием тест-планов (заказчик, группа разработки, группа тестирования).

В.: Каким образом нормируется труд программистов и других участников проекта?
О.: Зачем его нормировать?

В.: Нормирование, как мне представляется, необходимо для составления графика выполнения работ. А как ина-
че объективно определить, сколько в графике отвести на ту или иную задачу? Представь себе диалог: работник утверждает месяц, а ты ему недели хватит. Ну, и кто прав? Как-то этот вопрос в жизни решается, ведь не просто командным голосом?

О.: Слово нормировать я, видимо, понимаю иначе. Вспоминаются нормировщицы, тонно-километры и прочая атрибутика недалекого прошлого.
Лет 15 назад труд программистов часто оценивался в кило-строках исходного кода. Помню, что норма составляла порядка 1015 написанных и полностью отлаженных строк в день. Вот это было нормирование! Потом китайские программисты освоили метод copy-paste, и этот показатель потерял свою актуальность.
То, что ты называешь нормированием, мы называем оценкой трудоемкости. Очень важно, что первым размер продолжительности работы называет работник. Если его оценка месяц, а твоя неделя, то ты просто должен спросить, какие работник видит трудности и на какие подзадачи он разбивает свою задачу. Общепринятым подходом является введение ограничения на длительность нераскрытых подзадач. Например, если ты считаешь, что некоторая работа займет у тебя больше недели, то будь добр, разбей эту работу на более мелкие. Кстати, часто работник предлагает слишком оптимистическую оценку. Это бывает в случае, когда он не совсем понял задачу или включил в оценку только время, которое потребуется для получения первого результата (программа работает в принципе, но далеко не во всех случаях).
Очень важно хранить первоначальные оценки для последующего анализа. Только в этом случае можно надеяться, что работник будет раз от разу лучше оценивать задачи.
Еще один важный момент. Решение задачи программистом состоит из двух этапов: собственно разработка программы и ее отладка (bug fixing). Одни программисты стремятся поскорее покончить с первым этапом и отдать ПО на тестирование, другие предпочитают исправить все известные им дефекты, даже если сроки на разработку превышены. Анализируя статистику (время, потраченное по отдельным задачам на имплементацию и отладку), руководитель может легко понять who is who. Тех, кто в итоге больше времени тратит на отладку своей программы, затыкая дыры заплатками, надо вежливо попросить поискать себе другое место. А командный голос в нашем деле не помощник!

В.: Каким образом осуществляется контроль за временными рамками проекта?
О.: Здесь путь один. Составляется и согласовывается с заказчиком детальный график выполнения работ. Контроль выполняется путем сравнения еженедельных отчетов группы с графиком. Основные проблемы возникают, когда по ходу выполнения проекта у заказчика возникают новые идеи, или когда выясняется, что разработчики и заказчики по-разному понимают отдельные пункты спецификации.

В.: Внедрение определенных программных продуктов у заказчика требует обучения их специалистов. Каким образом у вас организован этот процесс?
О.: Наши заказчики не являются конечными пользователями разработанного ПО. Являясь его владельцем, они его продают по своим каналам.

В.: Есть ли у вас единый стандарт на средства разработки и программные платформы или для каждого проекта подбираются наиболее эффективные решения?
О.: Подбираются наиболее эффективные решения.

Данные о предприятии:
Год основания 1994.
Наиболее интересные выполненные заказы TurboCAD, FloorPlan, TurboProject, OpenDWG, DWGDirect, FormTool, OrgPlus, etc.
Наличие сертификатов нет.


Дмитрий Ковригин,
начальник управления
разработки программного
обеспечения и аппаратных средств, компания Эврика

В.: В области производства какого ПО специализируется компания Эврика?
О.: В области ПО автоматизированных рабочих мест и автоматизированных систем для решения задач заказчиков.

В.: Как компания Эврика разыскивает себе заказы?
О.: Первый заказ от нового заказчика находят коммерческие службы нашей компании, а дальше часто бывают повторные заказы. Т. е., заказчик сам обращается к нам, видя качество работы.

В.: Как организовано взаимодействие с заказчиком?
О.: В компании Эврика культура разработки ориентирована на потребности заказчиков из министерства обороны России (МО РФ), так что все работы выполняются либо в строгом соответствии с ГОСТами (для государственных заказчиков) либо близко к ГОСТ (для коммерческих заказчиков).
В области программирования в России, как известно, применяются ГОСТы, входящие в Единую систему программной документации (ЕСПД). В основном используются группы ГОСТов 19 и 34.
Порядок работы над заказом таков: сначала формируется техническое задание (ТЗ), далее осуществляется эскизное и/или техническое проектирование, потом ведется собственно разработка программ и их тестирование. Готовая продукция последовательно проходит следующие этапы: предварительные испытания, опытная эксплуатация, приемо-сдаточные (Государственные) испытания.
Формально все взаимодействие с заказчиками реализуется через дополнения к ТЗ. Конечно, для выполнения работ, особенно сложных, необходимы прямые неформальные контакты разработчиков и заказчиков, и они организуются и поощряются.

В.: Для выполнения проекта у вас организуется единая команда или на каждый этап разработки и внедрения формируется отдельный коллектив?
О.: Для выполнения всех этапов разработки организуется единая команда (группа) во главе с менеджером проекта (ответственным исполнителем проекта). Конечно, в зависимости от потребности, возможно подключение дополнительных специалистов на этапе внедрения.

В.: Каким образом производится тестирование ПО?
О.: В отделе разработки ПО есть тестеры, которые занимаются только тестированием. Тестеры включаются в группы проектов.

В.: Каким образом нормируется труд программистов и других участников проекта?
О.: НОРМИРОВАНИЕ ТРУДА разработка нормы времени, требующегося для выполнения конкретной производственной операции, какого-либо задания.
Если жестко следовать этому определению, то формального нормирования труда программистов нет. Мы не считаем строки кода, функции, классы и т. п.
При подготовке плана выполнения проекта ответственный исполнитель проекта с начальником отдела и другими специалистами дают экспертную оценку (иначе говоря, определяют на глазок) длительности разработки подзадач проекта теми программистами, которые включены в группу проекта.
Работа других членов группы тестеров, технических писателей привязана к результатам работы программистов и планируется более жестко. Конечно, в ходе проектов авралы бывают, но, в целом, планы исполняются.

В.: Каким образом осуществляется контроль за временными рамками проекта?
О.: Если говорить о мониторинге, то получением отчетов от членов группы и отслеживанием по этим отчетам выполнения работ. Мы используем Microsoft Project.
Если говорить об управляющих воздействиях, то тут, как в классическом контуре управления, могут быть и корректировка процессов выполнения, т. е. изменение мотивации, подключение дополнительных ресурсов, и даже авралы; и корректировка целей от переноса сроков внутренних этапов до внесения дополнений в ТЗ.

В.: Внедрение определенных программных продуктов у заказчика требует обучения их специалистов. Каким образом у вас организован этот процесс?
О.: В ЗАО Эврика есть учебный центр, и мы пользуемся его возможностями. Это возможность обучить сотрудников заказчика общесистемному ПО (например, работе c MS Windows и MS Office или администрированию Linux), а также возможность использовать оборудованные учебные классы для проведения занятий по разработанным продуктам (например, при внедрении информационной системы Диафарм-Поликлиника-ИД за короткий период с 22 по 30 декабря 2004 года было проведено 18 занятий и обучено около 240 сотрудников поликлиник Санкт-Петербурга).

В.: Есть ли у вас единый стандарт на средства разработки и программные платформы или для каждого проекта подбираются наиболее эффективные решения?
О.: Единого стандарта нет, но метания из стороны в сторону тоже нет. Для каждого проекта среда разработки выбирается с учетом знаний и опыта сотрудников, особенностей проекта и изменения ситуации на рынке средств разработки.

Данные о предприятии:
Год основания 1990 г.
Штатная численность 280 чел.
Наиболее интересные выполненные заказы ИС Базикмед, выполненная в интересах Главного Военно-медицинского управления МО РФ, прошла в 2005 году Государственные испытания и в настоящее время находится в опытной эксплуатации.



       КОМПЬЮТЕР-ИНФОРМ 
          Главная страница || Статьи 1'2003 (20 января - 2 февраля) || Новости СПб || Новости России || Новости мира

Рубрики || Работа || Услуги || Поиск || Архив || Дни рождения
О "КИ" || График выхода || Карта сайта || Подписка

Рассылка анонсов газеты по электронной почте

Главная страница

Сайт газеты "Компьютер-Информ" является зарегистрированным электронным СМИ.
Свидетельство Эл 77-4461 от 2 апреля 2001 г.
Перепечатка материалов без письменного согласия редакции запрещена.
При использовании материалов газеты в Интернет гиперссылка обязательна.

Телефон редакции (812) 718-6666, 718-6555.
Адрес: 196084, СПб, ул.Заставская, д.23, БЦ "Авиатор", 3-й этаж, офис 307
e-mail: editor@ci.ru
Для пресс-релизов и новостей news@ci.ru