Шрифт:
Интервал:
Закладка:
— Гибкость мышления — довольно важное качество, которое тоже можно тренировать. Вам придется постоянно учиться новому и подстраиваться под самые разные события, и гибкость всегда пригодится. Она проявляется в способности отойти от устоявшейся в голове информации и принять новую.
— Отсутствие токсичности — мало кто захочет работать с токсичным сотрудником, особенно если у него нет опыта в профессии. Если вам присуще это качество, то отказаться от него может быть сложно, однако самоконтроль поможет внести баланс.
— Чистота письма — конечно, никто не будет на вас косо смотреть, если вы забудете поставить запятую, но вам предстоит много общаться с людьми в чатах и комментариях к задачам, а также создавать документацию, а значит, вас должны однозначно и без проблем понимать.
На собеседованиях обычно проверяют, насколько вы токсичны или резки в общении, а гибкость мышления оценивают при выполнении тестовых задач. Усидчивость проверяют на испытательном сроке, однако ее отсутствие больше будет мешать вам, нежели компании. Самоорганизацию также можно проверить на испытательном сроке, но она, как и усидчивость, мешает именно вам и негативно влияет на плавность входа в профессию. Уровень чистоты письма рекрутер понимает уже по первому общению. И если в русскоязычном пространстве такой диалог проходит в приятном непринуждённом русле, то в англоязычном куда больше официальности.
Несколькими годами ранее для старта карьеры QA инженеру хватало личностных качеств, умения базово работать с компьютером и смартфонами, и знания базовой теории тестирования. В некоторых местах даже не надо было ничего знать про тестирование, так как этому учили на месте. Но время идет и все меняется. Сейчас такой набор компетенций не сильно интересует работодателей. И тут, на мой взгляд, не стоит сразу винить компании. Это результат усиления заботы о качестве выпускаемых продуктов, что, в свою очередь, требует нанимать более квалифицированных QA специалистов даже на старте их карьеры.
Обычно на старте QA инженер занят именно ручным тестированием и, на мой взгляд, он должен обладать следующими минимальными знаниями, навыками и практикой:
— Операционные системы — вы должны понимать, как установить приложение на Windows, MacOS, iOS, Android, Linux (реже) и уметь изменять настройки операционной системы на уровне обычного пользователя. В процессе работы вы наверняка будете что — то устанавливать и этот простейший навык, конечно, пригодится.
— Виртуальные машины — вы должны абстрактно понимать, что это, уметь устанавливать и выполнять простые действия на уровне начинающего пользователя. Навык нужен в первую очередь, чтобы подключаться к виртуальным машинам и запускать на них программы.
— SQL и базы данных — нужно понимать, что это и для чего необходимо, уметь писать простые запросы с использованием только SELECT и WHERE и применять MIN, MAX и подобные простейшие функции. Огромное количество приложений работают с базами данных и этот навык поможет вам настраивать системы и находить в них ошибки.
— Протоколы передачи данных — следует в общем понимать, что такое IP, DNS, порты и как в целом работает сеть между устройствами. Навык помогает настраивать приложения и лучше понимать, где возникают ошибки.
— HTML и CSS — нужно понимать, что это, и читать простейший код верстки. Навык поможет понять, как работают некоторые приложения и облегчит поиск ошибок в них.
— Работа приложений — общее понимание того, как работают приложения или их части, и чем они отличаются от других (Desktop, Web, Mobile, backend — часть). Временами приложения внутри устроены довольно сложно, что увеличивает вероятность ошибок. Понимание устройства приложения помогает их находить.
— Теория тестирования — вы должны хорошо знать базовую теорию (которая представлена в этой книге): что такое тестирование, в чем его суть, каким оно бывает, какие техники тест — дизайна существуют, что такое требования и т. д. Хорошее понимание теории позволяет эффективнее выполнять тестирование на практике.
— Документация тестирования — знание о том, какой она бывает, и умение ее применять. Не зная, как составлять документацию, нельзя эффективно справиться с этой задачей на практике.
— Процессы — понимание, какие процессы разработки программного обеспечения существуют, чем они абстрактно отличаются и для чего нужны. Разобравшись в этом, вы осознаете свою роль в команде и проекте, поймёте, чего ждут от вас и что вы можете ожидать от работодателя.
Знание языков программирования в список рекомендуемых навыков не входит, однако чтение простейших конструкций любого из них даст вам преимущество перед другими кандидатами. А способность написать без подсказок простой код усилит перевес. Также хорошим бонусом для вас будет понимание SQL на уровне JOIN, UNION и простых операторов.
На практике способность написать простейший код почти бесполезна для новичка. Этот навык больше говорит о вас как о кандидате, в которого не надо вкладываться временем и средствами для обучения программированию с нуля. Компании, серьёзно подходящие к набору сотрудников, отлично умеют считать деньги и риски и знают, через какое примерно время вы выйдете на окупаемость и начнете приносить условную «прибыль», в чем бы она не выражалась.
2. ГРАДАЦИИ QA ИНЖЕНЕРОВ
Если вы еще не работали QA инженером, то всего лишь при взгляде на описание вакансии у вас, вероятно, возникнут такие вопросы: Почему требования к грейду так отличаются? Почему технологии одной вакансии порой абсолютно не совпадают со второй?
Дело в том, что сейчас QA инженер — это самый настоящий инженер со всеми вытекающими последствиями. Помимо градаций по опыту есть градации по типу программного обеспечения, по направлению тестирования и по направлению бизнеса. Индустрия стала достаточно развитой для того чтобы требовать от инженеров глубоких знаний в отдельных областях — чаще всего именно этого и ждут от сотрудников. Сейчас быть профессионалом в каждом таком ответвлении одновременно очень сложно. Ведь, помимо того, что нужно много времени на их освоение, так необходимо ещё и постоянно совершенствовать свои навыки.
На практике осваивать несколько направлений не всегда выгодно. Часть навыков (а порой внушительную их часть), которую вы приобрели на одной работе, просто не получится применить на другой, и конечно справедливо, что работодателю нет никакого интереса платить за то, что вы не можете использовать свой опыт, каким бы потрясающим он не был. Без применения и развития своих навыков вы их теряете. На практике это означает, что, если не достигнуть высот, нахождение на одном проекте более двух лет становится сомнительной идеей.
Конечно, два года — это только абстракция и все довольно индивидуально. Человеку требуется примерно год чтобы начать чувствовать себя комфортно на работе и больше не