Привет! Меня зовут Фёдор Борщёв, и по четвергам я буду вместе с Васей и Юрой давать советы о разработке. Вот уже 10 лет я руковожу программистами, поэтому я буду больше говорить об управлении разработкой, чем о коде.

Пара фактов обо мне:

  • я технический директор в ГдеМатериале — стартапе, который даёт доступ рыночным поставщикам стройматериалов к крупными заказчиками — застройщикам и ремонтникам;
  • я сооснователь Руметра — единственной базы новостроек с хорошим дизайном;
  • сталкивался с множеством проектов, умерших из‑за разработки, часть из них загубил собственными руками;
  • веду блог и канал в Телеграме.

К управлению пришёл через программирование. За профессиональную карьеру написал код для множества систем: платформу для «парсинга интернета», систему онлайн‑торгов, личный кабинет студента английского, систему учета результатов в трофи‑рейдах, нейросеть для раскраски черно‑белых фотографий, модуль складского учета для интернет‑магазинов и множество скриптов для автоматизации. До сих пор по 10 часов в неделю я пишу коммерческий код на Питоне и Яваскрипте.

TDD — разработка через тестирование: когда программист сначала пишет автоматические тесты, а только затем код, который решает задачу.

В командах я делаю ставку на людей, инфраструктуру и здравый смысл. Вместо жёстких «заводских» процессов, на всех проектах внедряю уважение к личному времени, требую TDD и помогаю команде автоматизировать все, что только можно.

TDD — разработка через тестирование: когда программист сначала пишет автоматические тесты, а только затем код, который решает задачу.

В принятии решений следую классическим работам Питера Друкера, Элияху Голдрадта и Ицхака Адизеса. Внимательно прислушиваюсь к авторам, которые развивают менеджмент как науку, вроде Фредерика Лалу с его «бирюзовыми» организациями.

О чём меня стоит спрашивать:

  • о проекте как продукте — как резать фичи на основе метрик и экспериментов; как не трогая разработку понять, заработает фича или нет;
  • о команде — как отличить хорошего программиста от плохого; как сделать, чтобы участникам было комфортно работать вместе; по каким принципам разделять большие команды на маленькие;
  • о подходах к написанию чистого кода — TDD/BDD; метрики качества; как поддерживать кодовую базу в чистоте и что делать, если унаследованный код мешает работать;
  • об инфраструктуре и девопсе — автоматизация, кластеры, CI/CD и мониторинг;
  • о развитии программиста — что учить, чтобы оставаться востребованным на рынке труда, в какую компанию пойти работать, как стать тимлидом;
  • о том, почему «в срок» важнее, чем «быстро»; почему время стоит дороже денег, и где брать энергию для достижения целей.

Пишите! В вопросах упоминайте моё имя, чтобы я его сразу увидел. Например, «Вопрос Фёдору: расскажи, почему программисты срывают сроки?»

P. S. Это был совет об управлении разработкой. Хотите больше знать о планировании спринтов, управлении продуктом или о настройке инфраструктуры? Присылайте вопросы.
Отправить
Поделиться
Запинить

Рекомендуем похожие советы