Такой вот полет мысли, может достаточно сумбурный родился после прочтения сегодня двух хороших статей: "Roles and Fluidity" Алана Пейджа и история про изменения в процессе разработки в Yahoo! "Who Needs QA? Not Yahoo!"
Еще вчера с товарищем Papa Minos (aka Никита Макаров) делились впечатлениями от выпуска RadioQA "QA: Пациент жив или мертв?", где @umputun раскатывал всех в тонкое тесто (хотя получилось это у него натужно и скорее в силу авторитета, а не согласия оппонентов).
Как мне кажется, всё сходится к одному: ролей, которые приходится играть при разработке ПО, много (здравствуй, КО). И искусство, мастерство, если хотите, заключается в том, чтобы уметь между этим ролями переключаться.
Кому-то это удается хорошо, кто-то справляется хуже, а кому-то это вообще неинтересно, но роли есть и это факт.
Дальше можно много спорить о том, что "нафига переключаться", "на переключение тратиться много времени", "требуется больше знаний" и тд, и тп.
Но, умеющие переключаться, перевоплощаться, решают свои задачи эффективней. Команда с такими "артистами" результативней и в целом работать становиться легче.
Задача программиста - проверить свой код, умение делать это показывает его квалификацию. Умение правильно тестировать - тоже большое искусство и не каждому дается. Но если программист не делает вообще никаких проверок, то у тестировщика нет даже шансов показать все свое умение, он будет заниматься разгребанием "какашек".
Аналогично и обратное: если для решения своей задачи тестировщику требуется (оставим за рамками вопрос зачем) написать хотя бы простой скрипт, а он этого делать не умеет, то и задачу он решит (если вообще решит) скорее всего не так хорошо, как мог бы. Хороший пример в статье Алана.
И даже если объединение профессий программиста и тестировщика в разработчика (привет Леше Виноградову) мы пока (пока?) рассматриваем только в отдаленной туманной перспективе, то что делать со специализациями в рамках этих профессий?
Например, уже есть тестировщики, которые занимаются только нагрузочным тестированием, при этом навыки проверки UI у них слабые. Программисты, которые с закрытыми глазами напишут драйвер, но спасуют перед SQL-скриптами. И таких примеров можно приводить много. Контраргументом часто приводят точку зрения, что "знать все невозможно", а "специализация рождает скорость и правильность".
Все так, ровно до того момента, когда этот узкий специалист станет узким горлышком, через которое будет по капле просачиваться ваш очередной релиз и вам понадобится новая буква в русском алфавите...
Возможно вам будет интересно:
Еще вчера с товарищем Papa Minos (aka Никита Макаров) делились впечатлениями от выпуска RadioQA "QA: Пациент жив или мертв?", где @umputun раскатывал всех в тонкое тесто (хотя получилось это у него натужно и скорее в силу авторитета, а не согласия оппонентов).
Как мне кажется, всё сходится к одному: ролей, которые приходится играть при разработке ПО, много (здравствуй, КО). И искусство, мастерство, если хотите, заключается в том, чтобы уметь между этим ролями переключаться.
Кому-то это удается хорошо, кто-то справляется хуже, а кому-то это вообще неинтересно, но роли есть и это факт.
Дальше можно много спорить о том, что "нафига переключаться", "на переключение тратиться много времени", "требуется больше знаний" и тд, и тп.
Но, умеющие переключаться, перевоплощаться, решают свои задачи эффективней. Команда с такими "артистами" результативней и в целом работать становиться легче.
Задача программиста - проверить свой код, умение делать это показывает его квалификацию. Умение правильно тестировать - тоже большое искусство и не каждому дается. Но если программист не делает вообще никаких проверок, то у тестировщика нет даже шансов показать все свое умение, он будет заниматься разгребанием "какашек".
Аналогично и обратное: если для решения своей задачи тестировщику требуется (оставим за рамками вопрос зачем) написать хотя бы простой скрипт, а он этого делать не умеет, то и задачу он решит (если вообще решит) скорее всего не так хорошо, как мог бы. Хороший пример в статье Алана.
И даже если объединение профессий программиста и тестировщика в разработчика (привет Леше Виноградову) мы пока (пока?) рассматриваем только в отдаленной туманной перспективе, то что делать со специализациями в рамках этих профессий?
Например, уже есть тестировщики, которые занимаются только нагрузочным тестированием, при этом навыки проверки UI у них слабые. Программисты, которые с закрытыми глазами напишут драйвер, но спасуют перед SQL-скриптами. И таких примеров можно приводить много. Контраргументом часто приводят точку зрения, что "знать все невозможно", а "специализация рождает скорость и правильность".
Все так, ровно до того момента, когда этот узкий специалист станет узким горлышком, через которое будет по капле просачиваться ваш очередной релиз и вам понадобится новая буква в русском алфавите...
Возможно вам будет интересно:
- "Разрабатываем без нянек" (с) или как минимизировать участие тестировщиков в вашей работе"
- Нужны ли тестировщики, если разработчики пишут тесты?
- Почему разработчики не тестируют свой код?
- Брызги от потока долетели до Леши. Это его пост и обсуждение в FB (жаль только для друзей)
Комментарии
Отправить комментарий