У вас закончился пробный период!
Для полного доступа к функционалу, пожалуйста, оплатите премиум подписку
SA
Сатуров строит команду
https://t.me/saturov_stroit_komandu
Возраст канала
Создан
Язык
Русский
-
Вовлеченность по реакциям средняя за неделю
-
Вовлеченность по просмотрам средняя за неделю

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

Сообщения Статистика
Репосты и цитирования
Сети публикаций
Сателлиты
Контакты
История
Топ категорий
Здесь будут отображены главные категории публикаций.
Топ упоминаний
Здесь будут отображены наиболее частые упоминания людей, организаций и мест.
Найдено 20 результатов
11.04.2025, 22:05
t.me/saturov_stroit_komandu/70
В далёком 2017 году я выступил на Mobius в Москве. Это было моё первое в жизни выступление на такой именитой конференции. Так я узнал, что в лайн-ап попадают не только небожители и гуру, но и простые начинающие разработчики из Воронежа.

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

На моих глазах ребята создали собственную он-лайн платформу, и не просто пережили тяжелейшие ковидные времена, но и вышли из них со своим продуктом. Именно фантастическая команда JUG Ru group сформировала моё представление о том, какой должна быть правильная IT-конференция: Лёша, Андрей, Таня, Оксана, Моника и многие-многие другие. Ну а всех, с кем я познакомился в ПК или кого привёл туда сам, вспомнить просто невозможно, уж простите.

Я всё это к чему! Завтра на Mobius выступает Марк Абраменко, а послезавтра Ваня Галкин. В этом сезоне в программе 5 докладов про Flutter, 2 из которых от ребят из нашей команды. Зажгите там 🔥
8.04.2025, 19:25
t.me/saturov_stroit_komandu/69
Всё хорошее когда-нибудь заканчивается, вот и наш с Марком первый сезон подкаста "Не 12 часов" больше не порадует вас новыми выпусками.

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

Быть ли второму сезону? Я не знаю. Отчасти это зависит от вас и вашей реакции. Так что подмигните, если было интересно.

Включайте четвёртый эпизод подкаста "Не 12 часов" на 📺 YouTube или �� VK Видео.
4.04.2025, 20:46
t.me/saturov_stroit_komandu/68
Очень вдохновился последним техретро на одном из наших флагманских проектов!

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

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

Скучная рутина – тревожный сигнал. Либо вы не на своём месте, либо вы занимаетесь никому не нужной работой. Неизвестно, что хуже. В любом случае самое время встряхнуться и попробовать внести пару свежих мазков в серые будни команды. Что сделали мы?

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

Получили удовольствие все. Команда от ощущения осязаемого результата своей работы, я – от гордости за ребят. В ближайшие месяцы проведём такое техретро на всех наших проектах без исключения.
2.04.2025, 22:03
t.me/saturov_stroit_komandu/67
Вечно можно смотреть на огонь, воду и на бессмысленные ежегодные обновления современных мобильных операционных систем.

– Чего ты ждешь от новой версии iOS?
– Что она не сломается.

(цитата из закрытого чата нашей кор-команды)
27.03.2025, 12:03
t.me/saturov_stroit_komandu/66
Обожаю наблюдать, как одни продукты вытесняют другие с рынка благодаря качественному превосходству. В нашей жизни полно таких примеров, и с каждым годом их становится всё больше. Сегодня, когда у любого сервиса есть десятки аналогов, единственный способ выделиться — это безупречное качество.

Забудем на мгновение про виртуальный мир и зайдём в ближайший торговый центр. Слева — «Золотое яблоко», где этому самому яблоку уже негде упасть. Справа — «Лэтуаль», где недавно сократили уборщицу, потому что пол перестали пачкать отсутствующие покупатели. За углом скромно притаился «Рив Гош», который вдруг без всякого повода решил сделать ремонт и обшить стены светлым деревом. Что же случилось? Через уникальный ассортимент, фирменный стиль, эффектные интерьеры, грамотно выстроенные цифровые каналы продаж, продуманную программу лояльности и узнаваемый tone of voice уральская сеть подняла планку качества в своей нише, похоронив конкурентов.

Именно поэтому мы снова и снова заказываем пиццу в Додо, несмотря на то, что пицца там не фонтан. Только поэтому вот уже десятилетие мы храним всю свою жизнь в Telegram, а ВК открываем лишь затем, чтобы испытать неловкость от подростковых переписок. По той же причине мы мигрировали из Discord в бесконечно прекрасную «Пачку», а не в убогий YuChat.

Без претензии на академичность, я выработал свою трёхступенчатую градацию качества продуктов:

1) Надёжно решает основную задачу.
2) Делает это настолько хорошо, что вызывает у пользователя желание решать задачу снова и снова.
3) Помимо всего прочего, предлагает уникальные способы решения задачи.

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

Мессенджер, в первую очередь, должен уметь отправлять и принимать сообщения. Если с этим всё в порядке, самое время научить приложение приятно урчать хаптиками и переливаться красивыми анимациями. И только после этого можно приступать к внедрению AI-ассистентов, VR-метавселенных и уникальных иммерсивных 3D-AR-интерфейсов.

Качественные продукты не просто находят своего благодарного пользователя — они задают тренды, становятся легендарными, узнаваемыми и копируемыми.
26.03.2025, 12:03
t.me/saturov_stroit_komandu/65
Сегодня я хочу поговорить с вами на очень серьёзную тему.

Может быть вы ещё не почувствовали это в уютной норке своей продуктовой команды. Может быть это прошло мимо вас, пока вы корпели над очередным вьюконтроллером в Xcode. Может быть это случилось, пока вы были слишком увлечены созданием новой активити в Android Studio. Быть может до вас это докатится ещё очень не скоро, а ваш большой-пребольшой продукт это не затронет вообще никогда. Однако, я считаю своим долгом рассказать вам правду. Вы должны знать, что происходит у нас здесь, в аутсорсе.

Нативная разработка в аутсорсе мертва. Дефолтная технология в заказной мобильной разработке изменилась. Если клиент не указывает в заявке конкретный стек – значит мы говорим про Flutter. 9 из 10 запросов, которые мы получаем от бизнеса, не имеют никаких противопоказаний к кроссплатформе.

Не надо понимать всё слишком буквально. Я не считаю, что нативная разработка полностью исчезнет с лица земли, у Compose Multiplatform нет никаких шансов, а Flutter – лучшая технология не свете. Это не так. Просто в мобильной разработке на заказ сегодня больше не осталось альтернативы. Нравится вам это или нет.

"Натив – не наш выбор". Прочёл сегодня это в очередном письме от потенциального клиента и грустно стало. Press F... lutter create to pay respects 🫡
11.03.2025, 17:06
t.me/saturov_stroit_komandu/64
Мои родители пристально следят за любым контентом с моим участием. Посмотрев третий выпуск нашего с Марком подкаста, папа обрадовался больше обычного, потому что наконец-то понял всё, о чём мы там разговариваем.

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

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

Включайте третий эпизод подкаста "Не 12 часов" на 📺 YouTube или �� VK Видео.
7.03.2025, 22:35
t.me/saturov_stroit_komandu/63
Мне нередко приходится вымучивать ответ на вопрос про недостатки Flutter. Этот вопрос звучит постоянно то в сообществе, то на пресейле в разговорах с потенциальными клиентами. Я придумал остроумный ответ, ведь Flutter действительно позволяет удешевить разработку настолько, что наши клиенты буквально не знают, куда потратить сэкономленные деньги, от чего впадают в депрессию. Но мой встроенный кринжометр противно пищит, как только я готовлюсь произнести эти заранее заготовленные строки. Пару недель назад я наконец придумал убедительный ответ на этот вопрос, который будет не стыдно озвучить.

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

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

Недавно мы выпустили в релиз PWA на Flutter для одного из наших клиентов. Ребята отполировали приложение до блеска, на приёмке я лично в этом убедился. Тем ярче полыхал моей сгоревший стул, когда на днях я снова запустил приложение на своём айфоне: скролл работал просто чудовищно, экран неистово лагал, а жесты перехватывались совсем не теми компонентами, которыми должны были.

Мы быстро выяснили в чём проблема. Как выяснилось, конкретная версия фреймворка действительно имеет такой баг на конкретной версии iOS при открытии приложения в конкретном браузере. Можно обновить iOS, можно поднять версию Flutter и пересобрать приложение, можно купить смартфон на Android, но никогда нельзя предсказать, что именно сломается в следующий раз.

И всё-таки она вертится.
5.03.2025, 23:20
t.me/saturov_stroit_komandu/62
Пока никто не отписался, спешно фиксируем этот эпохальный момент для истории.

ТРИ тысячи подписчиков на канале Surf Flutter Team.

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

Хороших выходных 🍻
28.02.2025, 20:25
t.me/saturov_stroit_komandu/61
Обнаружил лучшую реализацию ввода даты в одном из наших проектов.

При тапе по полю даты рождения в профиле пользователя открывается не календарь, не стрекочущий барабан и не очередная забубённая крутилка. Открывается обычная цифровая клавиатура. Сначала это показалось мне странным — будь я тестировщиком, уже потянулся бы завести баг.

Гениальность этой реализации я осознал секунду спустя. Когнитивная сложность этого решения минимальна. Мы воспринимаем дату линейно — именно так, как набираем её на клавиатуре. Редактирование предельно удобно: просто ставишь курсор в нужное место строки.

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

Мечтаю, чтобы это стало стандартом.
21.02.2025, 19:43
t.me/saturov_stroit_komandu/60
Кто-нибудь хочет поспорить с тем, что мы должны создавать только качественные продукты? Едва ли. Звучит настолько очевидно, что тут просто нечего обсуждать. Ох, если бы на самом деле всё было так просто.

Итак, вашему вниманию предлагается классическая трагикомедия: "Качественный продукт глазами команды"!

В ролях:
- Разработчик – ценит чистый код, продуманную архитектуру и обновлённые зависимости.
- Дизайнер – в восторге от стильных и современных макетов.
- Аналитик – обожает структурированную и детализированную документацию.
- Проектный менеджер – счастлив видеть довольного стейкхолдера и закрытые акты.
- Продакт-оунер – стремится к высоким оценкам в сторах и растущим метрикам.
- QA – следит за точным соответствием реализации требованиям.

Что произойдёт дальше? На вылизывание кода до блеска уходит весь бюджет, а продукт так никогда и не выходит в релиз. Симпатичные макеты криво свёрстаны, но до дизайн-ревью ни у кого не доходят руки. Довольный клиент моментально меняется в лице, осознав что вложенные средства себя не окупили. Продакт оунер начинает судорожно резать бэклог, но рынок уже занят конкурентами. Доволен только QA. Обычное e-com приложение действительно каждые 15 минут принудительно разлогинивает пользователя с протухшим токеном, ведь аналитик когда-то описал этот сценарий в ТЗ. Чувствуете? Это пахнет качеством.

До тех пор, пока вся команда не засинхронизируется в едином понимании слова "качество" – качественный продукт просто не имеет шансов родиться. Качество продукта – это не суммарная оценка качества работы каждого члена команды. Такая арифметика тут не работает. Каждый сам по себе может сделать своё дело замечательно, но создать продукт пригодный лишь для немедленной утилизации. Важно не только взять лучшие ингредиенты, но и замешать их в нужных пропорциях.

Качественный продукт – это доступный в поддержке продукт, вытесняющий конкурентов с рынка за счёт своих уникальных качеств.

А какие качественные продукты приходят вам в голову, когда вы задумываетесь над этим?
19.02.2025, 21:10
t.me/saturov_stroit_komandu/59
Пока вы только раздумываете над тем, чтобы начать развивать HR-бренд своей команды, ребята из Яндекса уже расклеили афиши в подворотне, поставили промоутера в ростовой кукле возле метро и раскидали флаеры по почтовых ящикам.

Без негатива к нашим жёлтым друзьям, но мне показалось это забавным. И точно запомнилось 🤭
17.02.2025, 19:02
t.me/saturov_stroit_komandu/58
Наша команда делает много профессионального контента для Flutter-разработчиков вот уже 6 лет. Для нас это не просто развлечение (хотя и это тоже) – это один из кирпичиков, лежащих в фундаменте нашей стратегии. Это в нашем ДНК, если вы не против такой совсем уж откровенной пафосной пошлятины.

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

31 января Ваня и Максим (тот ещё искромётный тандем получился) провели вот уже второй стрим, на котором оценили код проектов наших подписчиков. Уже на следующем собрании нашего техпиар-клуба мы нагенерировали ещё 7 идей для будущих стримов. Лёд тронулся!

https://www.youtube.com/live/HUKiTWOtbsE?si=Ny8QBYBeyBwc8JMz

Присоединяйтесь к генерации идей в комментариях к этому посту, и может быть именно вы станете автором идеи нашего следующего стрима.
14.02.2025, 14:05
t.me/saturov_stroit_komandu/57
В работе нет места анонимности. Каждый раз, когда вам кажется, что анонимность решает какую-либо проблему, настоящее решение проблемы всегда оказывается в чём-то другом. Анонимизация обратной связи интуитивно кажется самым простым решением без неприятных последствий. На мой взгляд, это тот случай, когда интуиция нас нагло обманывает.

Анонимизировать фидбэк хочется, чтобы люди писали честнее. Здесь парадокс скрывается уже буквально в первом аккорде: анонимность не может быть честной. Если бы вместо формы с опросом выдавалась бутылочка с сывороткой правды, клянусь, мы читали бы каждый раз один и тот же текст: "Я хочу, чтобы о проблеме узнали, но не от меня. Я не хочу себе проблем, не хочу ни с кем ссориться. Личные отношения с коллегами для меня важнее результата". Если в вашей команде люди готовы говорить друг с другом только на приятные темы — это серьёзная проблема. Люди тратят лишнее время, выжидая удачный момент для написания анонимки, вместо того чтобы решить вопрос здесь и сейчас. В таких командах пышным цветом расцветает токсичность на почве невысказанных взаимных претензий. Эта особенность корпоративной культуры может однажды дорого вам обойтись.

Анонимизировать фидбэк хочется, чтобы люди писали больше. В реальности всё работает в точности наоборот. Мы долго и упорно боролись за качество фидбэка. Никаких "Вася работает нормально"! Борьба увенчалась успехом во многом благодаря прозрачности. Я вижу, кто что написал, Вася тоже видит и запоминает. Включается принцип взаимности: чем более качественный фидбэк дают тебе, тем более качественный фидбэк ты стремишься отдать в ответ. Так, через 1-2 итерации непримиримой борьбы с отписками мы получаем команду, которая умеет говорить друг с другом о своей работе.

Анонимизировать фидбэк хочется, чтобы избежать ненужных конфликтов в команде. Во-первых, не стоит считать любой неприятный разговор конфликтом. Первое, что я делаю, когда получаю жалобу от одного члена команды на другого — организую их общение друг с другом. Да и вообще, возможность обсудить полученный фидбэк с его автором — это киллер-фича, а не досадная уязвимость. Во-вторых, настоящие выяснения отношений на почве критики случаются крайне редко. За всё время работы я могу вспомнить только один случай, и тот закончился закономерным увольнением человека, который продемонстрировал полное неумение принимать фидбэк. В-третьих, модерацию никто не отменял. Люди пишут всякое. Не всегда один и тот же текст звучит одинаково безобидно и в голове читателя, и в голове писателя. Неприемлемые вещи просто не должны проходить фильтрацию на адекватность.

Анонимность в рабочих отношениях — зло. Говоря об анонимности как о благе, мы не берём в расчёт, что фидбэк бывает и позитивным. Персонализированная похвала для меня в 100 раз значимее и приятнее, чем обезличенная. Давайте не будем лишать друг друга приятных моментов и будем учиться разговаривать друг с другом!
11.02.2025, 14:06
t.me/saturov_stroit_komandu/56
День записи второго эпизода нашего с Марком подкаста стал настоящим кошмаром. "Тебе не кажется, что мы как-то слишком увлеклись с самокритикой?" – последнее, что я был готов услышать от коллеги в тот момент, когда всё уже отснято, а за хорошую студию с фантастическим продакшном работодатель выложил приличные деньги.

Я не особо надеялся, что оператор в тот день случайно забыл нажать на "Rec", поэтому на нервах ждал черновой материал на ревью. То что мы записали мне понравилось настолько, что я не вырезал из финальной версии ни секунды.

Историю про то, как устроен наш процесс разработки, как мы выбираем свою дорожку между гибкостью и строгостью, на кого больше похож тимлид – на жидкий клей или на жёсткий стержень, почему отклонение от процессов – самый главный процесс, смотрите во втором эпизоде подкаста "Не 12 часов" на 📺 YouTube или �� VK Видео.
7.02.2025, 12:03
t.me/saturov_stroit_komandu/55
Совершенно другой я, в той же самой комнате, с другим макбуком и тем же микрофоном (будь проклят тот день, когда я купил этот чёртов пылесос!), с другими людьми, но с тем же волнением записываю юбилейный ПЯТИДЕСЯТЫЙ выпуск Flutter Dev Podcast.

Долгожданный выпуск с нашими друзьями из "Открытой Мобильной Платформы" про неожиданный симбиоз ОС "Аврора" и Flutter уже шинкуется на нашей внутренней кухне, чтобы совсем скоро залететь в ваши подкастоприёмники.
5.02.2025, 12:08
t.me/saturov_stroit_komandu/54
Макросов не будет!

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

Промолчать – моветон, а заниматься диванной критикой – тошно. Это грустно, это кажется большой стратегической ошибкой, это может послужить очередным витком серии пророчеств про скорую смерть Flutter. Но уверенными мы с вами можем быть лишь в том, что ничего на самом деле не знаем. Практика всегда значительно сложнее и непредсказуемее теории.

Я готов согласиться с тем, что это очень похоже на стратегический провал, но так бывает. Судя по всему, конкретно эта ошибка стоила очень дорого, но наивно думать, что масштаб проекта определяет только цену победы. Да и не торопитесь заламывать руки по поводу стагнации языка, которой мы якобы заплатили за эти два потерянных на макросы года. Я не удивлюсь, если после отказа от макросов data classes вообще не будут реализованы когда-либо. Пошло всё это! Шучу, прошло всего 8 лет, freezed мне ещё пригодится.

Но решился я написать этот пост уж точно не затем, чтобы поныть.

Решение об отмене разработки макросов, возможно, одно из самых ярких и поучительных событий в индустрии разработки софта за последние годы. Мне остаётся только мечтать когда-нибудь научиться так же смело совершать подобные болезненные и неудобные шаги. Просто задумайтесь: в наше время, когда весь софт глобально работает так себе, ломаясь от постоянных нежеланных никем изменений, кто-то посчитал, что два потраченных года – это ещё не повод всё сломать. Даже если это слабая работа команды над планированием и реализацией фичи, в конечном итоге это мощнейшая демонстрация ответственности за судьбу технологии.
4.02.2025, 12:07
t.me/saturov_stroit_komandu/53
Вчерашний день отметился одновременно очень смешным и очень грустным эпизодом. Контрибьют нашего бывшего коллеги Фёдора в исходный код плагина battery_plus был отклонён по очень интересной причине. Обсуждение инцидента было заморожено модератором Flutter Community без каких-либо комментариев.

https://github.com/fluttercommunity/plus_plugins/issues/3446#issuecomment-2619415672

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

Как пел классик:
«Да, нас ненависть в плен захватила сейчас,
Но не злоба нас будет из плена вести.»

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

UPD: Majid Hajian принёс извинения от лица администраторов сообщества за произошедшее и предложил переоткрыть тикет для продолжения конструктивного обсуждения.
29.01.2025, 12:06
t.me/saturov_stroit_komandu/52
Если вас заинтересовал 9-box grid, про который я рассказывал в предыдущем посте, тогда у меня есть для вас приятный сюрприз.

В сети полно информации на эту тему, но именно эта методичка выделяется тем, что не только объясняет, как правильно проводить оценку, но и детально раскрывает, как затем эти оценки использовать.
25.01.2025, 12:05
t.me/saturov_stroit_komandu/51
Результаты поиска ограничены до 100 публикаций.
Некоторые возможности доступны только премиум пользователям.
Необходимо оплатить подписку, чтобы пользоваться этим функционалом.
Фильтр
Тип публикаций
Хронология похожих публикаций:
Сначала новые
Похожие публикации не найдены
Сообщения
Найти похожие аватары
Каналы 0
Высокий
Название
Подписчики
По вашему запросу ничего не подошло