Software Engineer в ButterflyMX
  • Оптимізація продуктивності в React-застосунку

    Дякую за матеріал, подобається підбірка problem-solution!

  • Як мікрофронтенди впливають на розробку продукту. Власний досвід

    Дякую, ціквао!
    А як шерити дизайн систему написану на тому ж Реакті, якщо інша команда захоче використати Vue?
    Чи доведеться кодити загальну базу компонент ще раз?

  • Зберемо 8 000 000 грн на «маленьке ППО»! Збір DOU & KOLO

  • Code review. Які є основні правила перевірки коду

    Я бы сказал, что тимлиду стоит учиться объяснять почему он считает, что его совет действительно делает код лучше. Если объяснить не может, но чувствует, что «так точно лучше» — об этом почти всегда можно сказать, ведь если 95% предыдущих решений тимлида были верными, то вырабатывается кредит доверия. Имхо, вот такой тимлид должен быть (поставил на таймкод, буквально 2 минуты слушать): youtu.be/xHa2FFyK67M?t=1255

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

    Ну и нельзя полностью избежать ситуации, когда каждый останется при своем мнении, со временем таких ситуаций будет сильно меньше. Есть код-стиль проекта, если автора не смог «продать» свои пожелания, значит едем дальше. Как тимлид учится объяснять, почему его совет имеет место быть, так же и автор кода учится «продавать» свои решения.

  • Code review. Які є основні правила перевірки коду

    1) Як ви мотивуєте співробітників робити якісні питання, а не відписки?

    By default очікується, що всі будуть виконувати свою роботу якнайкраще та дійсно хочуть передавати власний досвід та розвиватись, намагаємося формувати саме такі команди. Тобто це така ж частина роботи, як і написання коду, при чому не менш важлива, тому не йде мови про зменшення пріорітету

    2) У вас в проекті code review робить вся команда або призначена людина?

    Призначено декілька людей, али ми підтримуємо постійну ротацію

    3) Якщо девелопер робить явну помилку в коді, а ревьюер її пропускає, хто з них двох несе відповідальність за production bug?

    Відсутня диференціація як така, тобто, якщо пропустили серйозний баг — робимо ретроспективу щоб зроміти «як так» та які процеси покращити, загалом відповідальність несе вся команда. При цьому важливо зауважити, що і рев’ювер, і розробник обговорюють, як уникнити пропуск такого типу помилок у майбутньому.

  • Code review. Які є основні правила перевірки коду

    Чудова пропозиція про технічні засоби та дякую за ваш приклад з практики!

    А ось це типово зайве, а часто і неможливе. Письмова робота має тут безспорну перевагу. Але деякі речі я, наприклад, повторюю в Slack вже російською/українською з більшою кількістю деталей або пояснень (в ревʼю коментарі мають бути англійською, за полісі).

    Дійсно, залежить від лімітів. Основна думка була в тому, що аудіальна форма вносить остаточну ясність та покращує комунікацію, що з часом і призводить до прикладу про колегу-аудіала, якому зідзвони зараз вже не потрібні

  • Code review. Які є основні правила перевірки коду

    «Refactor as you go» це дійсно корисна штука, я тут трошки про інше, коли разом із вирішенням задачі отримуєш такий рефакторинг, на тестування якого потрібна була б окрема задача. Або коли рефакторинг в коміті взагалі не стосується задачі. В результаті це гальмує, а інколи унеможливлює деплоймент основної фічі, заради якої задача була створена з самого початку