Описание, плюсы и минусы, необходимые качества, где учиться. 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 .
Описание, плюсы и минусы, необходимые качества, где учиться.
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 (ПрофГид)