Каждый урок английского у нас в школе начинался с обращения учителя к классу: "Who is on duty today?", дежурный должен был встать и сказать: "I am on duty today". А потом идти вытирать доску.
Для меня очень важной частью любой работы является клиент. Очень грустно посвятить месяцы своей жизни на написание кода, который никто не запустит и ничья жизнь не станет от этого кода лучше. После перехода из аутсорса в продуктовую разработку близость к клиенту и его проблемам стала просто несравнимая. В аутсорсе работа результата твоей работы тебя вообще не касается. Более того, иногда еще и баги чинятся за отдельные деньги, т.е. ты рабочий у конвейера, никакой ассоциации с результатом твоей деятельности.
В разработке же продукте ассоциация укрепляется множеством различных практик. Кроме того, что можно участвовать в разговоре продукт-менеджера с нашими клиентами, мы, как команда разработчиков, еще и отвечаем за решение технических проблем наших юзеров.
DoS, Developer on Support - роль, которую берет на себя каждый из участников нашей команды несколько раз в год. В течении одной итерации (2 или 3 недели) ты становишься контактом для команды поддержки. Они конечно подкованные товарищи и кроме стандартных вопросов знают очень много о продукте, который ты разрабатываешь.
Вот уж действительно можно увидеть, как ведет себя код в диких условиях реального мира. Насколько экзотические конфигурации любят устраивать у себя люди. Ты и думать не мог о том, что эту фичу можно использовать таким извращенным образом. Ну или настолько параноидально установить настройки безопасности, что разные части одной программы не могут между собой нормально общаться.
После двух недель проведенных на DoSе я стал значительно внимательнее относиться к вопросам поддерживаемости (supportability) тех функций, которые я пишу: как support может убедиться, что фича работает именно так, как ожидается, какие логи ему нужно увидеть, чтоб подтвердить что проблема именно тут, какие симптомы того, что фича поломалась. Все это становится значительно ближе телу, когда сам попробуешь успокоить разгневанного клиента, которого уже 3 месяц просят обновиться до последней версии, а этот апдейт ему не помогает. И потом через полгода ты обнаруживаешь в коде причину, наступает такое озарение, что хочется вскочить, схватить себя за голову и радоваться, что уж теперь то ты сможешь сделать еще одного человека довольным.