SDCast #129: в гостях Игорь Кузнецов, тимлид в компании «GOST GROUP»

Встречайте 129-й выпуск подкаста. У меня в гостях Игорь Кузнецов, тимлид в компании «GOST GROUP». В этом выпуске мы говорим про консалтинг и продуктовую разработку, как давать первичную оценку проектам по трудозатратам и срокам. Обсуждаем повседневные задачи тимлида, выбор техонологий и стэка, собеседования и текучку кадров.

Подискутировали на тему: когда и надо ли брать Open source решение, а не писать свой велосипед, даже если это решение на другом стеке.

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

Читать далее

SDCast #128: в гостях Виталий Виноградов, продукт-менеджер в компании NtechLab

Встречайте 128-й выпуск подкаста, в котором у меня в гостях Виталий Виноградов продукт-менеджер b2b продуктов компании NtechLab. В этом выпуске мы говорим про то, кто такой продукт-менеджер, его роль и зона ответственности в жизненном цикле айтишных продуктов.

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

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

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

В заключении Виталий немного рассказал про компанию NTechLab и их продукты, а так же про свой стартап Liveapp, которым Виталий с группой сотоварищей занимается в свободное время.

Читать далее

SDCast #127: в гостях разработчик Intercepter-NG

intercepter logoТоварищи, в этот раз вас ждёт необычный выпуск подкаста! У меня в гостях автор и разработчик набора сетевых инструментов Intercepter-NG, так же известный как Ares.

В этом выпуске Ares рассказывает историю создания Intercepter, мы обсуждаем его возможности и детали реализации, такие как, например, сетевой сканер, восстановление файлов из траффика, подмену DHCP и многое другое. Кстати, в этом году проекту исполняется не много не мало — 15 лет!

Обсуждаем различные аспекты информационной безопасности в целом, в enterprise сегменте и малом бизнесе, где и для каких целей применяются такие инструменты как Intercepter-NG. Да и просто дискутируем про ИБ в целом, базовые знания, светлую и тёмную сторону хакерства.

Читать далее

SDCast #126: в гостях Владимир Хориков, автор книги про Unit-тестирование и блога Enterprise Craftmanship

Рад представить вам 126-й выпуск подкаста, в котором мы говорим про Domain Driven Design (DDD) и unit-тестирование. У меня в гостях Владимир Хориков, автор книги про Unit-тестирование и блога Enterprise Craftmanship.

Володя рассказал про своё знакомство с DDD, первые опыты внедрения, насколько не просто было внедрить идею DDD будучи не тимлидом, а просто программистом. Так же Володя рассказал как сейчас обычно происходит внедрение DDD, с чего начинается обучение команды. Мы обсудили как DDD подход ложится в ООП парадигму разработки, разобрали применение DDD в MVC/MVVM подходах к построению UI. Подискутировали о применении DDD в купе с CQRS и Event Sourcing.

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

Помимо этого Володя рассказал про написание книги: зачем он решил написать, сколько сил и времени у него на это ушло и какой получился результат.

Читать далее

SDCast #125: в гостях Антон Виноградов, руководитель фронтенд-разработки SberDevices

SberDevices LogoВстречайте 125-й выпуск подкаста, в котором у меня в гостях Антон Виноградов, руководитель фронтенд-разработки SberDevices. В этом выпуске мы говорим про интернет вещей, умные дома и устройства и голосовые ассистенты.

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

Поговорили мы и про Яндекс.Станцию и умные дома в общем. Обсудили различные протоколы физические взаимодействия устройств, программные протоколы интеграции. Антон рассказал немного про устройство Яндекс.Станции. Мы поговорили про взаимодействие с системными компонентами из браузерного JavaScript окружения, обсудили какими навыками необходимо обладать фронтенд-разработчику встроенных программно-аппаратных решений.

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

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

Читать далее

SDCast #124: в гостях Михаил Боднарчук, веб-разработчик из Киева, автор фреймворков для тестирования Codeception & CodeceptJS

Товарищи! После затянувшегося перерыва встречайте 124 выпуск подкаста! На этот раз у меня в гостях Михаил Боднарчук, веб-разработчик из Киева, автор фреймворков для тестирования Codeception & CodeceptJS.

В этом выпуске мы говорим, конечно же, про тестирование в целом, подходы, виды и конечно же инструменты, обсуждаем open source, и как можно на нём заработать.

Миша рассказал про историю появления и развития фреймворка для тестирования на php Codeception, его устройство и подходы к применению. Мы обсудили подходы к тестированию и практики использования фреймворка, вспомнили прошлые и настоящие альтернативы.

Так же Миша рассказал про ещё один фреймворк для тестирования, на этот раз для JavaScript CodeceptJS. Рассказал историю о том, как он начинал его писать, какие ставил цели и задачи. В этом контексте мы обсудили различные инструменты для End-to-End тестирования в браузерах, такие как Selenium, Puppeteer, Cypress и новоиспечённый Playwright. В дополнение к этому Миша рассказал интересную историю про контрибьюторов в проект из Индии.

Миша уже много лет работает сам на себя, занимается консультированием по своим фреймворкам и пытается зарабатывать на open source. Мы поговорили и об этом: Миша рассказал, как всё начиналось у него, какие есть бизнес-модели для open source, донаты и поддержка. Так же Миша рассказал про проект, которым он занимается сейчас, это система управления тестами testomat.io

Читать далее

SDCast #123: в гостях Иван Муратов, технический директор ПМК, активист Краснодарского ИТ сообщества

Встречайте 123-й выпуск подкаста, в котором у меня в гостях Иван Муратов, технический директор Первой Мониторинговой Компании в Краснодаре, активист Краснодарского ИТ сообщества и основатель бэкенд-митапа.

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

Поговорили про Internet of Things в общем и в контексте сбора данных с автотранспорта в частности. Обсудили способы хранения сообщений с датчиков в time-series базах данных и не только. Отдельно Ваня подробно рассказал про использование TimescaleDB и PostgreSQL, как они работают, как устроено хранение, партиции и запросы.

Так же мы поговорили про конференции и сообщество. Ваня рассказал как зараждалось Краснодарское айти-сообщество, про конференции «Krasnodar Dev Days», их принципы, подходы и организацию.

Читать далее

SDCast #122: в гостях Георгий Меликов, контрибьютор проектов OpenZFS и ZFS on Linux

После несколько затянувшегося перерыва, встречайте 122-й выпуск подкаста, посвящённый файловой системе ZFS. У меня в гостях Георгий Меликов, контрибьютор проектов OpenZFS и ZFS on Linux.

В этом выпуске мы говорим о том, как устроена файловая система ZFS, в чём её особенности и отличия от других файловых систем, из каких компонентов она состоит и как работает.

Георгий рассказал про архитектуру системы, рассказал про модули и их назначение, мы обсудили в целом подход Copy on write, иммьютабельность данных, снепшоты, различные кэши и методы оптимизаций, применяемые в ZFS.

Поговорили про фрагментацию данных, шифрование и сжатие. Георгий рассказал про интересные новые фичи, которые появились в последних релизах или находятся в альфе и скоро попадут в релиз, например нативное шифрование или dRAID.

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

Обсудили так же и open source составляющую проекта: какая команда, какие компании поддерживают проект, планы по развитию проекта.

Читать далее

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

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

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

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

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

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

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

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

Читать далее

SDCast #120: в гостях Павел Савельев, руководитель отдела автоматизации бизнес-процессов и Павел Агалецкий, системный архитектор в компании Lamoda

Latech logoВстречайте 120-й выпуск подкаста с ребятами из компании Lamoda. У меня в гостях Павел Савельев, руководитель отдела автоматизации бизнес-процессов и Павел Агалецкий, системный архитектор.

В этом выпуске мы говорим про архитектуру больших систем, межсервисное взаимодействие, API, процессы разработки, коммуникации и open source.

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

Подискутировали на тему API: ребята рассказали как устроено API у них, почему они выбрали JSON-RPC, обсудили консистентность и докумендацию API.

Поговорили про людей, команды и технологии. Ребята рассказали про размер команды, как устроен процесс разработки, как выбираются технологии, вспомнили про тех радар. Обсудили, как внедряется новый разработчик в команду, вспомнили про performance review, личностный и профессиональный рост.

Ребята поделились своим опытом переезда в облака и контейнеры, рассказали как они прошли этот путь и с чем столкнулись в процессе.

Так же ребята рассказали про то, зачем они выкладывают какие-то свои библиотеки и компоненты в open source. Что это даёт компании и конкретным разработчикам.

В завершении выпуска обсудили насущную тему удалённой работы. Ребята поделились своими личными впечатлениями от удалёнки и рассказали как выстроен процесс у них в компании.

Читать далее