Поэтому я начал работать на большую корпорацию, одну из которых с 3 буквами в имени, и они пытаются стать гибкими, но у меня есть тонны процессов, которые я не чувствую гибкими.
Больше всего меня раздражают обзоры кода. Моя последняя работа была с стартапом, который, я бы сказал, был самой гибкой командой разработчиков из тех, что я когда-либо видел, когда-либо видел и / или когда-либо слышал.
В любом случае, я утверждаю, что Code Reviews - пустая трата времени в итеративной или гибкой разработке, где UX / UI экстремальный / интенсивный (подумайте о совершенстве Apple / Steve Jobs). Может быть, кто-то здесь может помочь понять, прежде чем меня уволят?
Вот мой процесс разработки и тот, что у меня при последнем запуске ... очень проворный.
Мы выполняем раннюю функциональную работу по сортировке задач / задач разработки. Мы смоделировали бы пару версий и представили бы пользователям, команде и маркетингу, чтобы получить обратную связь. Затем мы делаем еще одну итерацию макета, чтобы получить один раунд от тех же заинтересованных сторон, что и выше. Тогда мы разделяем работу и начинаем. У нас есть вехи и даты, чтобы встретиться, но мы продолжаем затихать. У нас нет обзоров кода во время всего этого. Несколько раз в течение недель нашего развития мы снова проводили встречи с заинтересованными сторонами, чтобы убедиться, что они все еще согласны с тем, что функции / функции / UX / UI по-прежнему подходят и нацелены.
По мере приближения к концу 8-недельного итерационного цикла QA начинает тестирование, затем переходит к альфа-пользователям и, наконец, к бета-версии. Но во время альфа- и бета-тестирования разработчики рассматривают новые и старые функции, внося ежедневные или часовые изменения в пользовательский интерфейс, чтобы улучшить UX. Таким образом, функция, которая разрабатывалась в этом выпуске, может в конечном итоге измениться еще 3 раза за последние четыре недели, чтобы улучшить и улучшить ее или добавить несколько крошечных функций (например, сделать компонент немного более гладким или умным). Иногда изменения могут быть поверхностными, то есть никакие операции CRUD не изменяются и не изменяются, но изменяется только пользовательский интерфейс.
Так что с таким типом процесса разработки, чрезвычайно гибким, разве проверки кода не будут пустой тратой времени? Это означает, что, если бы у меня был другой разработчик или два, пересмотрел мой код, но затем этот код меняется еще 3 раза, прежде чем он выйдет из-за всех улучшений UI / UX, разве мы не тратим свое время на первые 3 раза, когда они просматривали его? код как тот код / компонент / пользовательский интерфейс был отменен?
У нас никогда не было много проблем с качеством этого процесса, и да, если разработчик оставил все знания ушедшими за дверь, но мы всегда находили умных разработчиков, чтобы поднять их и захватить.
И да, у нас много тестеров, потому что им, возможно, придется перепроверять вещи 3 или 4 раза. Также, пожалуйста, не зацикливайтесь на вопросе, почему все изменения в UI / UX ... вот как все это делается ... именно поэтому приложение выигрывает множество наград за UI / UX, а пользователи убивают за приложение. Мысленный процесс заключается в том, что если я смогу улучшить что-то даже на 2%, потому что у меня есть дополнительный час, тогда сделайте это. Пользователи будут счастливее, что означает больше долларов или пользователей. И да, наши пользователи согласны с тем, что приложение постоянно меняется, потому что так оно и было с самого первого дня, поэтому они не считают его плохим или негативным.
Надеюсь, что этот пост не выглядит напыщенным, но я просто не вижу, как Обзоры кода не расточительны. Возможно, 2% всего нашего кода в проверенном коде содержат ошибки. В каждом выпуске мы можем найти 3 ошибки через обзор кода. Таким образом, в итоге получается 40 часов проверки кода на разработчика на выпуск (4 x 40 = 160 часов), чтобы найти от 3 до 5 ошибок? Скорее всего, 50% эти 3–5 ошибок были бы обнаружены QA в любом случае. Не лучше ли потратить 40 часов на каждого разработчика, добавляя новую функцию или улучшая существующие?