SDCast #135: в гостях Андрей Листочкин, CTO в компании Viravix

Встречайте 135-й выпуск подкаста. У меня в гостях Андрей Листочкин, CTO в компании Viravix. Очень давно мы собирались пообщаться с Андреем, но свершилось это вот только сейчас. Так что тем для обсуждения накопилось порядочно и выпуск получился длинным, но от этого не менее интересным!

Андрей рассказал про свой долгий и ветвистый путь в Айти: работу в компании Opera, IP-телефонию, разработку медицинского софта и заканчивая системами промышленного оборудования в пищевой промышленности.

Мы поговорили про эволюцию веба, развитие браузеров и внедрение новых браузерных API, подискутировали о инструментах фронтенда, таких как сборщики, вспомнили jQuery и Firebug!

Андрей рассказал про то, как он стал амбассадором Ember.js в русскоязычном сообществе. Мы подискутировали о фреймворках, платформах, их идеях и устаревании, vanilla js и легаси. Обсудили то, как изменились вопросы, задаваемые фронтенд-разработчикам на собеседованиях.

Поговорили про команды, ресурсы, фуллстек разработчиков и аутсорс, решаемые задачи и используемые для их решения технологии, выбор стэка, платформ и всего остального. Андрей рассказал про свою роль СТО в компании, чем он занимается и какие решает задачи.

Андрей, как активный член различных программных коммитетов конференций и сообществ рассказал и про эту сферу своей деятельности. Мы обсудили конференции, преподавание и менторство: зачем, для чего и ради каких целей ими занимаемся.

Читать далее

SDCast #133: в гостях Евгений Сальников, тимлид в компании «Lamoda»

Latech logoВстречайте 133-й выпуск подкаста. У меня в гостях Евгений Сальников, тимлид в компании «Lamoda». В этом выпуске Женя рассказывает про свой довольно витиеватый путь в Айти. Мы обсуждаем различные аспекты разработки, начиная от простых задач, проявления инициативы и заканчивая архитектурой высоконагруженных систем и softskills.

Мы поговорили так же и про микроклимат в компаниях, его важность и значение, а так же влияние на работу, производительность и вообще отношения в коллективе и компании в целом.

Однажды Женя променял роль СТО на разработчика-тимлида. Мы поговорили о том, как это случилось и почему, обсудили, насколько опыт СТО помогает в принятии более прикладных программистских решений и повседневных задачах.

Женя рассказал про свою универсальную команду, когда все участники коллектива пишут код на довольно разных технологиях и различных стеках. Мы обсудили плюсы и минусы этого подхода, в каких случаях это может быть выгодно, поговорили о том, как рядовые разработчики относятся к таким идеям.

Читать далее

SDCast #131: в гостях Евгений Антонов, тимлид в компании «Positive Technologies»

Встречайте 131-й выпуск подкаста. У меня в гостях Евгений Антонов, тимлид в компании «Positive Technologies». С Женей мы знакомы давно, да и поговорить любим, так что выпуск получился довольно продолжительными. Но это не значит, что не интересным!

Женя рассказал про свой путь в IT, от админства и галер до тимлидства в продуктовой разработке. Мы обсудили различные аспекты консалтинга, заказной и продуктовой разработки. Поговорили про процессы разработки, изолированность команд, взаимодействие с внутренними и внешними заказчиками, обсудили, как жить, когда команда небольшая, а заказчиков много, как приоретизировать задачи и планировать разработку в долгосрочной и краткосрочной перспективе.

Подискутировали про подходы в выборе технологий и решений. Женя поделился своим мнением на этот счёт. Мы обсудили, насколько оправданно писать свой велосипед вместо выбора готового подходящего решения, но на не знакомом стеке. Женя так же рассказал про то, как они поменяли в команде и перешли с одного стека на другой. Не обошли мы стороной и вопросы документации, код-ревью и техдолга. Куда же без них!

Отдельно поговорили про тимлидство, soft skills и сопутствующие темы. Женя рассказал про консалтинг в сфере карьерного роста в IT, мы обсудили типичные проблемы и вопросы, с которыми приходят и попробовали обозначить какие-то общие рекомендации для их решения.

Читать далее

SDCast #121: Круглый стол про код-ревью

Товарищи, в этот раз вас ждёт необычный выпуск подкаста! Почему? — Этот выпуск был записан в прямом эфире с обсуждением вопросов зрителей, онлайн-голосованиями и другими активностями. Но не переживайте, весь контент доступен для восприятия в аудио-формате как и прежде!

Итак, выпуск посвящён непростой и спорной теме код-ревью. В этом выпуске, помимо меня приняли участие:

  • Александр Макаров, лид проекта Yii Framework
  • Антон Морев, основатель и СТО Wormsoft
  • Сергей Жук, разработчик из Skyeng

Live team screenshot
Вот далеко не полный перечень тем, которые мы обсудили:

  • Каким должно быть идеальное код-ревью?
  • Есть ли отличия в процессах код-ревью для крупных компаний, заказной разработки и open source проектов?
  • Размеры одного пулл-реквеста: что делать с огромными пул-реквестами?
  • Сколько времени должно уходить на ревью одного запроса? Когда и как делать код-ревью?
  • Как экономить время на код-ревью?
  • Инструменты, облегчающие и помогающие код-ревью
  • Человеческий фактор в код-ревью: как не убить критикой все старания?

В процессе беседы мы много вспоминали и приводили примеры из собственного опыта, команд и проектов. Поэтому попытались не просто порассуждать о идеальном ревью, а привести примеры, подходы и практики, работающие в конкретных ситуациях и командах.

Так же за время беседы мы запустили несколько голосований по тематике код-ревью, а в конце дискуссии подвели итоги.

Читать далее

SDCast #108: В гостях Александр Тавген, софт-архитектор из Playtech

После долгого перерыва встречайте 108-й выпуск подкаста! У меня в гостях Александр Тавген, софт-архитектор из компании Playtech. В этом выпуске мы говорим про процессы разработки, обмен знаниями, архитектуру, open source и даже музыке! ;)

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

Поговорили и про публикацию проектов в open source, как и почему выбираются те или иные технологии для реализации проекта. Обсудили социализацию в ИТ: увеличение числа конференций, локальных митапов, каких-то прочих неформальных активностей, открытость компаний в части публикации своих наработок в open source и многое другое.

Так же Александр рассказал про одно своё интересное увлечение — это объединение музыки и технологий в проекте интерактивного театра.

Читать далее

SDCast #105: В гостях Никита Соболев, CTO в компании wemake.services

Встречайте 105-й выпуск подкаста, в котором у меня в гостях Никита Соболев, CTO в компании wemake.services. Вместе с Никитой мы обсуждаем процессы разработки программного обеспечения, подходы, методологии, инструменты и различные другие аспекты.

В начале разговора Никита немного рассказал про сообщество ElixirLangMoscow, организатором которого он является.

Никита — автор методологии Repeatable Software Development Process (RSDP). Он рассказал, что это за подход, какие в нём ключевые идеи, основные моменты и как устроен сам процесс разработки, работающий по этой методологии.

На примере компании wemake.services Никита рассказал, как устроена разработка у них. Мы обсудили все этапы, начиная от старта работ по новому проекту, формулирование и обсуждение требований и тех задания, декомпозиции проекта на более мелкие задачи, приёмка и проверка выполненных задач программистами, тестирование, инструменты для автоматизации различных процессов разработки и прочее.

Поговорили мы так же и о soft skills, о том, как можно развиваться разработчику, как и чем его мотивировать, как общаться, особенно в распределённой команде. Затронули тему внедрения новых технологий в существующих проектах и поддержку legacy-кода.

Читать далее

SDCast #79: в гостях Егор Толстой, руководитель платформенной разработки клиентсайда Авито

Рад представить вам 79-й выпуск SDCast’а! У меня в гостях Егор Толстой, руководитель платформенной разработки клиентсайда Авито. В этом выпуске мы говорим о разработке в Авито в целом, что же такое “платформа” и какова её роль в различных приложениях компании, говорим и о мобильной и веб разработке.

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

Отдельно обсудили вопрос переиспользования каких-то библиотек и инструментов между различными юнитами. Тут как раз Егор рассказал поподробнее, что же такое «платформа» в понимании Авито и какова её роль в программных продуктах компании. Обсудили мы как технические стороны, начиная от типичного workflow программного модуля, выкладка релизов, поддержка обратной совместимости и форсирование перехода на новые версии, так и различные смежные вопросы, такие как документирование, код-ревью и другие.

Егор рассказал про различные инструменты, которые помогают автоматизировать процесс разработки, например такие как автоматическое назначение багов на конкретных людей на основе анализа графа связей программных модулей и их авторов (на основе анализа исходных кодов).

Так же мы немного пообщались о мобильной и веб-разработке в Авито, архитектуре приложений, способе организации их репозиториев и не только.

Недавно Егор писал и рассказывал про Performance Review — поговорили мы и об этом. Что такое “Performance Review”, зачем оно нужно, как его внедрили в Авито, и что им это дало.

Егор так же известен как ведущий подкаста «Подлодка» и автор нескольких телеграмм-групп по мобильной разработке. Не обошли мы стороной и эти темы, равно как и выступления на различных ИТ конференциях у нас и даже за рубежом. Егор рассказал про свои впечатления от выступления на FrenchKit 2017 в Париже и про выступления на конференциях в целом.

Читать далее

SDCast #77: Круглый стол Soft Skills

Товарищи, встречайте 77-й выпуск подкаста в новом формате! На этот раз я решил немного отойти от привычного формата интервью, а вместе с несколькими гостями провести дискуссию по определённой теме. Для первой попытки была выбрана тема «Soft skills». Вместе с Антоном Шевчуком, Романом Пронским и Александром Майоровым мы обсудили различные не совсем технические и социальные аспекты разработки, хотя и без технологий не обошлось! :)

Итак, гости этого выпуска:

  • Александр Майоров, ведущий подкаста «RadioJS» и авторского проекта Pro WEB IT, fullstack-разработчик, СТО в компании «New.HR»
  • Антон Шевчук, техлид PHP отдела и тимлид Ruby отдела в компании «NIX solutions», автор учебника “jQuery для начинающих
  • Роман Пронский, автор PHP дайджеста на Хабре, ведущий инженер-программист в компании «EPAM»

Выпуск получился довольно продолжительным, но это лишь потому, что было интересно обсуждать различные вопросы. Вот лишь некоторые из них:

  • Какое самое важное качество для программиста?
  • Тимлид — это должность или роль?
  • Пути развития программиста
  • Трансформация из программиста в менеджера, в руководителя подразделения
  • Планирование работ, как успеть всё сделать к дедлайну
  • Делегирование задач и зоны ответственности
  • Синдром самозванца
  • Как ввести в команду нового члена, чтобы всем было комфортно и эффективно?
  • Собеседование новых членов команды
  • Межличностные конфликты, трения, недопонимание, недосказанность между членами команды
  • “Великолепные” придурки (в смысле крутые спецы с которыми невозможно взаимодействовать)
  • Мотивация, прокрастинация, выгорание
  • Как помочь найти всей команде золотую середину между горящими бизнес задачами и идеальным кодом?
  • Трайбализм в командах
  • Как воспитывать умение отказывать менеджеру?

Читать далее