8 июл 2016

Профессия QA-инженер

http://vk.cc/5mtWfQ .

Описание, плюсы и минусы, необходимые качества, где учиться.
QA-инженер – Quality Assurance engineer (Quality Assurance дословно означает «обеспечение качества») - это специалист по функциональному тестированию программного обеспечения на этапе разработки. Его деятельность направлена на улучшение процесса разработки ПО, предотвращение дефектов и выявление ошибок в работе продукта. На практике иногда ошибочно считают, что QA-инженер и тестировщик ПО — это одно и то же. На самом деле, тестировщик программного обеспечения занимается тестировкой уже готового ПО, а QA-инженер работает над формированием процессов тестирования на этапе разработки, которые в результате обеспечат повышение качества ПО.
Внутри процесса QA выделяют процесс Quality Control — контроль качества продукта. QC-специалисты анализируют результаты тестирования и отвечают за выявление и уничтожение дефектов в программном обеспечении. А тестировщик ПО является ещё более узким специалистом в пределах QC: он исследует готовое ПО на наличие багов (ошибок) и документирует выявленные дефекты. То есть, тестирование ПО является одним из этапов в процессе QA/QC – обеспечения и контроля качества.
Иными словами, сравнивая IT-технологии и медицину, можно образно сказать, что тестировщики занимаются диагностикой неполадок, а QA-инженеры — профилактикой. Таким образом, QA-инженер это тестировщик, который перешагнул рамки тестирования. Он не просто тестирует ПО, чтобы отчитаться о его работе. QA-инженер совершенствует ПО для всех заинтересованных лиц: пользователей, разработчиков, бизнесменов.
Но чтобы стать хорошим QA-инженером необходимо пройти позицию тестировщика по всем этапам.
В работе над крупными проектами функции QA-инженера могут выполнять несколько человек и их обязанности представлены таким образом:
Test Analyst занимается статическим тестированием требований и проверкой их полноты и достаточности;
Test Designer формирует набор тестов на базе этих требований, создаёт конфигурации тестирования;
Test Executor исполняет тестирование, документирует найденные баги (ошибки) и шаги их воспроизведения;
Test Manager осуществляет планирование и контроль тестировочных работ, коммуникации с заинтересованными лицами по проекту (так называемыми стейкхолдерами).
Есть мнение, что QA-инженеры - специалисты более низкой квалификации, чем программисты. Это абсолютно неверно. QA-инженеры проверяют качество ПО, разработанного программистами и даже совершенствуют его, поэтому обязаны знать все тонкости работы программистов, понимать цикл разработки ПО и иметь более широкий кругозор. Но мышление тестировщиков и программистов заточено по-разному. Программисты стремятся быстрее создать ПО и, закончив один проект, как можно скорее приступить к новому. Тестировщики же неторопливо и тщательно выявляют дефекты, проверяют и сопоставляют разные комбинации.
Поскольку QA-инженер сотрудничает с большим количеством людей, он должен разговаривать с ними на одном языке и в какой-то мере обладать качествами этих специалистов:
как девелопер — понимать код и иметь представление о технических рамках для реализации различных методологий;
как бизнес-аналитик — знать рынок и целевую аудиторию, для которой создаётся ПО;
как менеджер проекта — видеть общую картину, составленную из всех частей проекта;
как конечный пользователь — понимать удобство пользования ПО.
Особенности профессии
Функциональные обязанности QA-инженера:
анализ технической документации;
уточнение требований к ПО заказчика или бизнес-аналитика;
оценка возможных рисков;
формирование тестовой документации и идей по улучшению качества ПО, так называемых тест-кейсов;
разработка и проведение тестирования;
определение проблемных мест и их внесение в трэкинг-систему;
обсуждение проблем с разработчиками;
прослеживание жизненного цикла проблем;
выявление, документация и верификация дефектов;
повторный тест исправленных ошибок;
анализ тестирования и его оптимизация;
написание автоматических тестов;
оформление тестовой документации.
Плюсы и минусы профессии
Плюсы
Возможность (и необходимость!) постоянного повышения профессионального уровня в соответствии с прогрессом IT-отрасли и сферы бизнеса. Профессия не позволяет расслабиться и умственно деградировать, заставляет быть в курсе новых технологий.
Высокая оплата труда.
Престиж и всё возрастающая востребованность профессии в будущем.
Минусы
Главный минус — рутинная и монотонная работа при прохождении тест-кейсов в ручном тестировании и работе с документацией.
Один общий минус для всех профессий IT-сферы — постоянная сидячая работа за компьютером.
Возможное недовольство заказчика результатом работы.
Большое количество заинтересованных лиц в каждом проекте, у которых свои пожелания и требования: заказчики, разработчики, пользователи.
Место работы
IT-компании; независимые компании по тестированию; крупные компании, внедряющие свои программы.
Важные качества
аналитический склад ума;
стратегическое мышление;
абстрактное мышление;
умение моделировать и абстрагироваться;
критический, деструктивный склад ума, направленный на обнаружение ошибок;
перфекционизм в хорошем смысле этого слова;
способность быстро переключаться между задачами;
умение работать в команде и аргументировать свои решения;
коммуникабельность — умение общаться напрямую влияет на качество ПО;
умение находить компромиссы между заинтересованными лицами;
ответственность;
усидчивость;
настойчивость;
внимание к деталям;
умение расставлять приоритеты.
Где учиться на QA-инженера (образование)
QA-инженеров не обучают в вузах за некоторым исключением: на нескольких факультетах читают курс по тестированию в течение одного семестра. Существует множество специальных курсов.
Для успешной работы QA-инженеру необходимо:
высшее техническое образование в сфере IT-технологий по специальности "Информационные системы и технологии" или "Автоматизация систем обработки информации и управления";
знание Unix\Linux систем на уровне продвинутого пользователя;
знание SQL (PL\SQL, MySQL, Oracle);
хорошее знание методов тестирования;
опыт автоматизации тестирования (знание программ Silk Test или Rational Robot);
опыт функционального тестирования распределенных систем;
опыт программирования на Java;
технический английский (upper-intermediate).
Оплата труда
Оплату труда продвинутых QA-инженеров можно сравнить с зарплатой программистов. Джуниоры с опытом работы от полугода и выше могут получать до 40 тысяч рублей в месяц. Зарплата сеньоров составляет от 150 до 180 тысяч рублей.
Ступеньки карьеры и перспективы
Существует 4 уровня квалификации:
Trainee QA Engineer — начинающий специалист.
Junior QA Engineer — специалист, проработавший в должности от 1 до 6 месяцев и имеющий определённые навыки в работе. Знающий, что такое тест-план, тест-кейс, тест-сьют, тест-степ, тест-дизайн в общих чертах, Definition of Done. Имеющий представление о дефектах Severity и Priority. Базовые навыки SQL - селект, упдейт.
Middle QA Engineer — специалист среднего уровня квалификации, со стажем работы от 1 до 3 лет, умеющий работать самостоятельно и консультирующий младший персонал.
Senior QA Engineer — специалист высшей квалификации, выполняющий самые сложные технические задачи широкого спектра, используя разные виды тестирования.
Пройдя эти 4 этапа, работники повышают профессиональный уровень, осваивая новые технологии. Далее профессиональный рост возможен:
в направлении QA team lead — QA-manager — Head of QA department, то есть до позиции начальника смены или направления внутри отдела;
до позиции разработчика, руководителя разработчиков, аналитика, архитектора вплоть до руководителя проекта внутри компании.
В настоящее время открыто множество курсов по обучению QA-инженеров. Вести преподавательскую деятельность, совмещая её с работой, также считается очень престижным.
В ходе карьерного роста можно переквалифицироваться в бизнес-аналитики или программисты, развиваться как управленец в направлении senior project manager — CTO.
Источник: http://vk.cc/5mtWfQ (ПрофГид)

Профессия QA-инженер http://vk.cc/5mtWfQ. - 836297860708

Комментарии