Size: a a a

Yandex Team Leader meetup

2018 June 09

ВГ

Влад Грачев in Yandex Team Leader meetup
Я лишь придрался к определению, которое не выглядит достаточно точным (=
источник

V

Vladimir in Yandex Team Leader meetup
Придраться можно к чему угодно. Вопрос в том, какую цель мы преследуем. Если цель — придираться ко всему на пустом месте, то да, это помогает. Если же мы хотим зарабатывать деньги и делать крутые фичи, то нужно подключать голову.
источник

ВГ

Влад Грачев in Yandex Team Leader meetup
Вроде про технический долг речь шла, а чуть ниже мы решили, что фичи — это про бизнес, а техдолг — про код, то есть фичи перпендикулярны техдолгу. И придирки к определению техдолга не мешают делать фичи.
источник

АШ

Алексей Шаграев in Yandex Team Leader meetup
Прододжаю настаивать на том, что техдолг не ортогонален фичам 😀
источник

ВГ

Влад Грачев in Yandex Team Leader meetup
Ладно, соглашусь. Техдолг мешает фичам. Но не придирки к его определениям)
источник

V

Vladimir in Yandex Team Leader meetup
Алексей Шаграев
Прододжаю настаивать на том, что техдолг не ортогонален фичам 😀
Не стал бы рассуждать о тех долге и фичах как о чем-то, лежащем в одной плоскости. В моем видении они опосредованно влияют друг на друга: технический долг может повышать требования по ресурсам, которые требуются для реализации фичи, снижать её качество и стабильность. А фичи реализованные по-быстрому, чтобы уложиться в очень короткие сроки, могут создавать технический долг. Но и то и то не обязательно.
источник

АШ

Алексей Шаграев in Yandex Team Leader meetup
Алексей Шаграев
По-моему, не бывает отдельного техдолга, отдельного продуктового производства и так далее.

В конечном счёте решает продукт. Задача - получить новый конкурентный продукт, либо развивать уже имеющийся, в условиях, обусловленных рынком. Рынок - это конкурирующие продукты, создаваемые другими компаниями, либо непосредственно другие компании, конкурирующие с нашей за людей. Также это пользователи и всякие другие агенты.

Исходя из этого, нужно, чтобы сервис развивался с достаточной скоростью по фичам, не выключался, не замораживался в развитии из-за ухода ключевых сотрудников, на производство новых фич не уходило слишком много времени. Нужно, чтобы команда была мотивирована и не считала, что её интересы игнорируются.

Так что, когда мы решаем, что конкретно делать прямо сейчас, нужно исходить из имеющихся рисков и делать самое важное. Когда-то это действительно запуск новой функциональности во что бы то ни стало, потому что конкуренты не дремлют; когда-то это масштабирование, потому что первое сентября скоро и школьники набегут; когда-то это развитие инфраструктуры, потому что прямо сейчас ничего не горит, но назрела необходимость инвестировать в скорость будущей разработки. Иногда нужно сделать то, что интересно команде, чтобы поддержать мораль, чем бы это ни было.

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

Если говорить именно о технических задачах, то удобно, когда руководитель проекта - бывший разработчик, освоивший новые специальности 😎 Это многое облегчает, но и свои минусы, конечно, тоже есть. У нас много руководителей продуктов - именно бывшие бекенд-разработчики.
Мой поинт изложен тут 😉
источник

GO

Grigoriy Orlov in Yandex Team Leader meetup
Я согласен с Алексеем. Оба понятия связаны. Во-первых, качество кода - понятие достаточно условное и относительное. Как известно код можно бесконечно улучшать. При этом код - это не самоцель, а средство рещения задач бизнеса. Так что если какие-то проблемы в коде не мешают и не будут мешать рещению этих задач - то это не проблема и не техдолг. А если будут, то надо разбираться и скорее всего это он.
источник

АШ

Алексей Шаграев in Yandex Team Leader meetup
Grigoriy Orlov
Я согласен с Алексеем. Оба понятия связаны. Во-первых, качество кода - понятие достаточно условное и относительное. Как известно код можно бесконечно улучшать. При этом код - это не самоцель, а средство рещения задач бизнеса. Так что если какие-то проблемы в коде не мешают и не будут мешать рещению этих задач - то это не проблема и не техдолг. А если будут, то надо разбираться и скорее всего это он.
Типа того, да!
источник

GO

Grigoriy Orlov in Yandex Team Leader meetup
к сожалению, большинство программистов, да и вообще инженеров не понимают конечную цель своей работы. для них конечная цель - это код, а на самом деле - это решение бизнес-проблем. и зачастую эти проблемы можно решить вообще без написания кода. например, поговорив с заказчиком и объяснив, что ему эта новая фича не нужна и тд. полно таких примеров.
поэтому как только инженеры начнут понимать бизнес-часть их задач, то понимание что является техдолгом, а что нет, будет сильно проще.
источник

GO

Grigoriy Orlov in Yandex Team Leader meetup
я бы даже так сказал, тот, что не видит своей работы дальше кода - не может называться инженером, это просто кодер. инженер - это тот, кто помогает бизнесу решать свои задачи оптимальнейшим образом с точки зрения траты ресурсов (деньги, время и тд)
источник

A

Anatoly in Yandex Team Leader meetup
Grigoriy Orlov
я бы даже так сказал, тот, что не видит своей работы дальше кода - не может называться инженером, это просто кодер. инженер - это тот, кто помогает бизнесу решать свои задачи оптимальнейшим образом с точки зрения траты ресурсов (деньги, время и тд)
Вы в аутсорсе работаете?  Про бизнес много пишите.
источник

DT

Denis Tanaev in Yandex Team Leader meetup
Отличная шутка. Инхауз разработка про бизнес не должна думать?
источник

A

Anatoly in Yandex Team Leader meetup
Ну, это сложно. Имхо, чем ближе к Продукту - тем больше нужно думать. Сложных проблем в программировании достаточно немало, чтобы тем, кто разрабатывает Технологии фокусироваться на них, а не на бизнесе в популярном смысле слова. Иначе это потеря фокуса, распыление.
источник

GO

Grigoriy Orlov in Yandex Team Leader meetup
Anatoly
Вы в аутсорсе работаете?  Про бизнес много пишите.
Нет, продуктовая разработка. Просто компания небольшая и мы можем бизнес темы тоже отслеживать. В крупных компаниях это сложнее и зависит от руководителей команд
источник

A

Anatoly in Yandex Team Leader meetup
Да. Ну понятно.
источник

A

Anatoly in Yandex Team Leader meetup
В большой компании, на самом деле, еще сильно зависит от типа департамента. Продукт - одна кухня. Либы - немного другая.
источник

АШ

Алексей Шаграев in Yandex Team Leader meetup
Anatoly
Ну, это сложно. Имхо, чем ближе к Продукту - тем больше нужно думать. Сложных проблем в программировании достаточно немало, чтобы тем, кто разрабатывает Технологии фокусироваться на них, а не на бизнесе в популярном смысле слова. Иначе это потеря фокуса, распыление.
Да не, конечно, надо фокусироваться на продукте. Проблем с этим нет, и даже наоборот. И даже внутренние сервисы, инфраструктура - это все продукты для своей аудитории, и делаться должны по тем же принципам.
источник

АШ

Алексей Шаграев in Yandex Team Leader meetup
Внутренние сервисы, о которых Рома рассказывал, например - типичный такой пример. Вот есть менеджеты и разработчики, они хотят удобную Нирвану - их надо исследовать, общаться и т.п., хотя при желании можно заковыряться с технической части про шедулинг и сделать неудобно пользователям.
источник

A

Anatoly in Yandex Team Leader meetup
Алексей Шаграев
Да не, конечно, надо фокусироваться на продукте. Проблем с этим нет, и даже наоборот. И даже внутренние сервисы, инфраструктура - это все продукты для своей аудитории, и делаться должны по тем же принципам.
Ну у кого-то нет :) а у кого то - есть. Это зависит от многих вещей. От самих проектов, от процессов, от контроля рисков.
источник