← Назад к вопросам

Почему ушел с QA?

2.0 Middle🔥 181 комментариев
#Другое

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI23 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Переход с QA на разработку Python

Это отличный вопрос, который показывает мою карьерную траекторию и мотивацию. Позволю себе дать развёрнутый и честный ответ, так как это вопрос про мой профессиональный рост.

1. Начало: QA как фундамент

Я начинал с QA (Manual Testing, а затем Test Automation) в середине 2010-х годов. Это был логичный вход в IT:

  • Низкий порог входа — не нужен глубокий технический background
  • Быстрый результат — быстро видишь результаты своей работы
  • Разносторонность — понимаешь весь продукт и workflow

Но со временем начали проявляться ограничения QA:

2. Что меня демотивировало в QA

Проблема 1: Повторяющаяся работа

После написания базовых тестов 80% времени — это выполнение одних и тех же сценариев, рано или поздно автоматизируемых. Я начал писать скрипты для автоматизации.

# Что я делал как QA engineer:
# Тест 1: Открыть браузер → Логин → Нажать кнопку A → Проверить результат
# Тест 2: Открыть браузер → Логин → Нажать кнопку B → Проверить результат
# Тест 3: Открыть браузер → Логин → Нажать кнопку C → Проверить результат
# ... и ещё 50 тестов по одному сценарию

# Я автоматизировал:
selenium_script = setup_driver()
for button in ["A", "B", "C", ...]:  # 50 кнопок
    selenium_script.click(button)
    assert result_correct()

Проблема 2: Отсутствие творчества

В QA ты выполняешь требования, но не создаёшь. Я хотел создавать продукты, а не только проверять чужие.

Проблема 3: Карьерный потолок

К 2018 году я видел, что:

  • Зарплата QA растёт медленнее, чем у разработчиков
  • Перспектив развития мало (QA Lead → QA Manager → ???)
  • Спрос на QA падает (автоматизация, DevOps, Self-testing teams)
  • Мои часто используемые навыки (Selenium, написание тестов) были инструментами для разработчиков

3. Почему Python?

В процессе автоматизации тестов я писал на Python (Selenium, requests, unittest). Это был естественный переход.

# QA мир: Selenium на Python
import pytest
from selenium import webdriver

def test_login():
    driver = webdriver.Chrome()
    driver.get("https://app.com")
    driver.find_element("id", "username").send_keys("user")
    driver.find_element("id", "password").send_keys("pass")
    driver.find_element("id", "submit").click()
    assert "Dashboard" in driver.page_source

# Разработчик: Нужно было понять, ЧТО я тестирую
# -> API, работа с БД, архитектура, алгоритмы

Я заметил, что:

  • Много времени требовалась помощь разработчиков для наладки тестов
  • Я хотел сам писать логику, а не только тестировать её
  • Python оказался идеальным языком для обучения

4. Переходный период

Переход был постепенный:

Год 1 (QA → Junior Python):

  • Днём работал QA Engineer
  • Вечерами изучал Python: Codewars, HackerRank, малые проекты
  • Писал скрипты для автоматизации QA работы

Год 2 (Test Automation Engineer → Python Developer):

  • Работал Test Automation Engineer (это был высокий уровень QA)
  • Писал фреймворки на Python для тестирования
  • Начал работать с бэкэндом: Flask, requests, БД
  • Совершенствовал архитектуру тестов

Год 3 (Python Developer):

  • Начал писать на Python в реальных проектах
  • Сначала как junior developer (много обучения)
  • Постепенно рос: junior → middle → senior

5. Что помогло при переходе

Плюсы QA background:

Менталитет проверки качества — я не пишу код без тестов

Понимание требований — знаю, как трансформировать требования в код

Внимание к деталям — ловлю баги, которые другие разработчики пропускают

Коммуникация — умею объяснить баг разработчику, понимаю точку зрения тестировщика

E2E mentality — вижу систему целиком, не теряюсь в деталях

Минусы, которые пришлось преодолевать:

Архитектурное мышление — QA не требует глубокого понимания Design Patterns

Алгоритмы и структуры данных — нужно было активно учить

Системное программирование — многопоточность, асинхронность

Импостор-синдром — чувствовал себя ниже чистых разработчиков

6. Как я учился

# Моя учебная программа была примерно такой:

# Месяц 1-2: Основы Python
- Переменные, типы, операторы
- Функции, списки, словари
- ООП: классы, наследование

# Месяц 3-4: Продвинутый Python
- Декораторы, контекстные менеджеры
- Генераторы, list comprehensions
- Исключения, логирование

# Месяц 5-6: Backend
- Flask/Django basics
- SQL, ORM
- REST API

# Месяц 7-8: Практика
- Участвовал в открытых проектах
- Писал свои проекты на GitHub
- Code reviews, feedback от опытных разработчиков

# Месяц 9-12: Специализация
- Углублялся в интересующие области
- Django + DRF (мой выбор)
- Микросервисы, асинхронность
- DevOps basics

7. Финальный ответ на вопрос

Почему я ушел с QA:

  1. Стремление к творчеству — хотел создавать, а не только проверять
  2. Карьерные перспективы — разработчики имеют больше возможностей роста
  3. Технический интерес — меня привлекала система целиком, а не только тестирование
  4. Заработок — реальная разница в зарплате между QA и Dev
  5. Возможности — как разработчик я помогаю создавать то, что сам буду тестировать

Что я сохранил из QA:

  • Культуру качества — я фанат юнит-тестов и интеграционных тестов
  • Требовательность — мой код должен быть протестирован и документирован
  • Пользовательский взгляд — я пишу для конечного пользователя, не для себя
  • Внимание к граничным случаям — ловлю баги до production

Рекомендации для других QA, рассматривающих переход

Если ты в QA и думаешь о переходе на разработку:

  1. Начни с автоматизации — это естественный мост
  2. Выбери язык — Python, Go, Java, не важно, главное консистентность
  3. Учись архитектуре — поймешь, почему твои тесты падают
  4. Приватные проекты — лучше учиться на своих идеях
  5. Network — находи менторов, не стесняйся спрашивать
  6. Будь терпеливым — переход займет 1-2 года

Мой переход с QA на Python Developer — это лучшее решение моей карьеры. Я получил творческую свободу, лучшие перспективы и — что важно — остался верен своим ценностям качества и тестирования.

Почему ушел с QA? | PrepBro