Свою первую работу по тестированию я нашел случайно»

Свою первую работу по тестированию я нашел случайно»

Где вы учились и как решились пойти в тестирование?

Я из города невест – Иваново. Получил высшее образование по специальности физика, а также дополнительный диплом учителя. Еще во время обучения в университете устроился работать преподавателем. Вел два предмета – физику и информатику. После окончания вуза остался там работать, хоть это и не совсем то, что мне было нужно: изначально я хотел связать жизнь с программированием, к тому же меня не устраивали условия работы и не хватало зарплаты.

Свою первую работу по тестированию я нашел случайно»

Я начал все чаще смотреть в сторону IT и в свободное время занимался программированием, одновременно изучая вакансии, и однажды наткнулся на вакансию тестировщика. 11 лет назад еще не было такого количества курсов, поэтому тестирование я тоже изучал самостоятельно. Курсы проходил уже после трудоустройства.

Свою первую работу по тестированию я нашел случайно»

Как вы нашли первую работу?

Первую работу по тестированию я нашел случайно. Будущая жена скинула мне вакансию тестировщика игр с городского форума. После нескольких дней многочасового самостоятельного обучения я решил попробовать. Не помню, спрашивали тогда мое резюме или нет, но точно давали тестовое задание. Мое заключалось в том, чтобы найти и оформить баги в игре, которая уже была выложена в соцсеть. Его выполнение стало переломным моментов в моей карьере. Оказалось, что мне интересно тестировать, интересно смотреть, правильно ли все работает и находить баги.

В то время никакие сертификаты для трудоустройства не требовались. Даже когда я сам через несколько лет принимал людей на работу, мы рекомендовали литературу и выдавали тестовые задания во время собеседований. Это только последние несколько лет наличие сертификата стало для работодателя одним их критериев первоначального отбора, поскольку оно подтверждает серьезность намерений кандидата. Поскольку многие рассматривают тестирование как временную работу, чтобы войти в сферу IT, работодатели с каждым годом повышают планку.

Какие знания умения и навыки вам потребовались на позиции джуниора?

В первую компанию (как оказалось, это был стартап) только с общим представлением о профессии и с невероятным желанием работать в этой сфере. Может быть именно этот факт зацепил моего работодателя. В команде я был единственным тестировщиком, и все знания пришлось добывать самому. Отчасти мне помогла книга “ tестирование dot com ”. Еще я много общался с программистами, получал от них фидбек и смотрел, как сделать свою работу и процесс лучше и эффективнее. Каждый день читал форумы и статьи, чтобы понять все нюансы работы и выстроить правильный процесс тестирования.

Свою первую работу по тестированию я нашел случайно»

Легко ли вам было с начальной позиции перейти к уровню middle?

В этом стартапе я проработал примерно год. Потом у компании дела пошли хуже. Новых продуктов не было, а старые не приносили должного дохода, поэтому сократили почти всю команду и оставили только несколько сильных программистов. В это время открылась вакансия тестировщика в крупной компании Social Quantum, и я решил попробовать свои силы там. В этот раз предварительного тестового задания не было, и меня пригласили сразу на собеседование. Вернее, их было два. Сначала собеседование с hr, где спрашивали теорию, а потом пригласили в офис на второе собеседование. Тут уже были практические вопросы и задания, т.е. меня попросили оформить баг-репорт и написать тест-кейс.

Когда мы только развивали тестирование, то не пользовались какими-то сложными техническими инструментами. По мере развития самой команды и тестирования в компании мы постепенно расширяли и техническую экспертизу. Мы тестировали игры, и по сути не было какого-то адекватного API – пришлось выкручиваться и пробовать реализовать end-to-end-тесты. Было перепробовано много инструментов и один из них мне запомнился: я его долго пытался приноровить к специфике тестирования игр – это TestComplete. К сожалению, он нам не подошел, и мы решили остановиться на скрипте по распознаванию изображений Sikuli. Именно тогда мы и стали развивать автоматизацию в компании.

В этой компании я проработал лет 5 или 6. Хотя у нас и не было четкой градации по должностям, но точно могу сказать, что вырос за тот год из джуна в миддл-позицию. Еще через год я прошел курс тест-аналитика и стал уже лидом небольшой команды. Еще через год мы с руководителем отдела решили сделать внутренние курсы по тестированию. У меня было достаточно опыта и педагогическое образование, к тому же я постоянно обучался, так что особых проблем с созданием первого собственного курса не было. Плюс за все эти годы работы тестировщиком мое желание преподавать никуда не делось. И это как раз была отличная возможность соединить два любимых занятия: преподавание и тестирование.

Легко ли со средних позиций перейти к уровню senior QA и что для этого нужно?

Все зависит от самого человека, от его желания, мотивации и стремления. У меня был случай, когда сотрудник за год упорной работы перешел из джуна на позицию синьора, но он выкладывался по полной. И конечно же дело тут не ограничивается только хард-скиллами. Для меня senior QA – это не только сильный технический специалист, но и самостоятельный сотрудник, который может сам решать проблемы, организовывать свое время, расставлять приоритеты в работе и так далее. Тот человек, которому дал сложную задачу, и он ее выполнит в оговоренное время. При этом ты не переживаешь, что что-то может пойти не так.

Если инженер по QA уровня middle считает себя готовым к переходу в высшую лигу, как проверить, что он не ошибается?

В одной из компаний, где я работал, был очень хороший подход в этом плане. Давалась возможность попробовать себя на определенной позиции. Т.е. специалист сначала получал новые зоны ответственности на несколько месяцев, далее смотрели как он работает, выдавали подробный фидбек, и если все шло хорошо, его переводили на новую должность. Либо просто закрепляли те зоны ответственности, которые брали на себя. Такой подход хорошо себя показывал, так как позволяет посмотреть, успешно ли сотрудник справиться с новыми обязанностями.

Если такой возможности нет, я обычно смотрю на развитие тестировщика за время работы в компании – как он себя показывал. Оцениваю, может ли он потенциально потянуть новые обязанности и как эффективно будет их выполнять. При необходимости можно опросить команду, иногда они дают полезную информацию. И обязательно нужно обговорить со специалистом, что произойдет, если он не справится, чтобы в дальнейшем не было сложностей и неприятных неожиданностей. Лучше проработать план «Б», если человек не потянет новую нагрузку.

Как самому сотруднику проверить, что он не ошибается и готов к переходу?

Что потребуется изучить и какие навыки наработать, чтобы выйти на уровень senior?

Для позиции senior QA надо разделять направления и специализации. Если мы говорим про мобильное тестирование, опытный специалист должен знать основную базу того, с чем он работает. Как минимум это особенности тестирования мобильных устройств и операционных систем. У него должен быть уверенный опыт с инструментами тестирования мобильных приложений. Он должен знать и разбираться в таких вещах как Android SDK и XCode. Кроме того, будет плюсом если он знает про работу с эмуляторами и имеет опыт в автоматизации. Хорошо знает тестирование API, его особенности, умеет работать с инструментами тестирования API и разбирается в клиент-серверной архитектуре. Для веб-тестирования сюда же можно включить API и клиент серверную архитектуру, хорошее знание протоколов и запросов, знание HTML, CSS, DevTools.

Такой специалист должен идеально знать как составлять тест-кейсы, чек-листы, баг-репорты. Разбираться в терминологии тестирования, знать процессы тестирования и в целом процессы разработки ПО. Знать и уметь работать с основными инструментами (Bug Tracking System, Test Management System) и конечно иметь опыт в тестировании – обычно от 3 лет и выше. Также в некоторых компаниях синьор может выдавать фидбек младшим специалистам и быть для них наставником. В этом случае ему потребуется развивать и софт-скиллы.

Как лучше строить карьеру? Тут нет однозначного ответа. Каждый решает сам для себя. Кому-то комфортно расти в одной компании и никуда не уходить, а другим интересней работать в разных местах. По опыту скажу, что расти все-таки лучше в свободном плавании. В компании не всегда есть место для роста и это задерживает развитие кандидата. Кроме того, разные компании – это более обширный опыт.

Как у вас родилась идея создать собственное сообщество?

Я создал группу ВКонтакте и начал писать полезные статьи. Поскольку понимал, что начинающему специалисту для трудоустройства нужна еще и практика, я создал небольшой бесплатный практический курс. Тогда он состоял всего из двух уроков. Сейчас это уже мини-обучение, которое состоит из теории, тестов и практики в виде домашних заданий с возможностью получить обратную связь, и которое каждый желающий может пройти полностью бесплатно. Конечно оно не заменит полноценного обучения, но поможет начинающему попробовать себя в роли тестировщика.

Если в самом начале я был один и обучал самостоятельно, то сейчас есть целая команда опытных тестировщиков, которые помогают начинающим специалистам обучиться и устроиться на работу.

Свою первую работу по тестированию я нашел случайно»

Что в тестировании самое важное?

Думаю, в тестировании самое важное – это качество. Тестировщик всегда должен стремиться сделать продукт качественней и стабильней. Нужно смотреть на него шире: не только глазами тестировщика, но и глазами пользователя. Можно часами закапываться в мелкие и несущественные баги, но не видеть основных проблем.

Еще важно, чтобы каждому участнику команды нравилась его работа. Именно тогда команда становиться сильной и это значительно повышает качество тестирования.

Вы пропустили

AEGIS Algorithms Android Angular Apache Airflow Apache Druid Apache Flink Apache Spark API API Canvas AppSec Architecture Artificial Intelligence Astro Authentication Authorization AutoGPT AWS AWS Aurora AWS Boto3 AWS EC2 AWS Lambda Azure Babylon.js Backend bash Beautiful Soup Bento UI Big Data Binary Tree Browser API Bun Career Cassandra Charts ChatGPT Chrome Extension Clean Code CLI ClickHouse Coding Codux Combine Compose Computer Context Fusion Copilot Cosmo Route CProgramming cron Cryptography CSS CTF Cypress DALL-E Data Analysis Data science Database dbt dbt Cloud deno Design Design Patterns Detekt Development Distributed Systems Django Docker Docker Hub Drizzle DRY DuckDB Express FastAPI Flask Flutter For Beginners Front End Development Game Development GCN GCP Geospatial Git GitHub Actions GitHub Pages Gitlab GMS GoFr Golang Google Google Sheets Google Wire GPT-3 GPT3 Gradio Gradle Grafana Graphic Design GraphQL gRPC Guidance HMS Hotwire HTML Huawei HuggingFace IndexedDB InfoSec Interview iOS Jackknife Java JavaScript Jetpack Compose JSON Kafka Kotlin Kubernetes LangChain Laravel Linux LlaMA LLM localStorage Logging Machine Learning Magento Math Mermaid Micro Frontends Mobile Mobile App Development mondayDB MongoDB Mongoose MySQL Naming NestJS NET NetMock Networks NextJS NLP Node.js Nodejs NoSQL NPM OOP OpenAI OTP Pandas PDF PHP Playwright Plotly Polars PostgreSQL Prefect Productivity Programming Prometheus Puppeteer Pushover Python Pytorch Quarkus Rabbitmq RAG Ramda Raspberry Pi React React Native Reactor Redis REST API Revolut Riverpod RProgramming Ruby Ruby on Rails Rust Scalene SCDB ScyllaDB Selenium Servers Sklearn SLO SnowFlake Snowkase Software Architecture Software Development Solara Solid Spring Boot SQL SQLite Streamlit SudoLang Supabase Swift SwiftUI Tailwind CSS Taipy Terraform Testing Transformers TURN TypeScript Ubuntu UI Design Unix UX UX Design Vim Vite VSCode Vue Web Architecture Web Components Web Development Web Frameworks Web Scraping Web-разработка Webassembly Websocket Whisper Widgets WordPress YAML YouTube Zed Наука о данных Разное Тренды

Современный подход к разработке с использованием Next.js