Как стать автором
Обновить

Комментарии 25

поэтому знать в общих чертах о сетевой модели OSI, безусловно, надо.

А каким образом вместо TCP/IP записалась OSI?
А зачем нужны коды ответов HTTP? Мне кажется, они давно уже умерли, и используются максимум 10 из них.
Я бы ещё добавил популярные трекеры задач.
А каким образом вместо TCP/IP записалась OSI?

Как нечто более общее, чем TCP/IP. Опять же, это не значит, что нужно знать все эти протоколы, но просто надо знать, что они есть.
Ну и да, это всё субъективно + зависит от требований конкретной вакансии.
А зачем нужны коды ответов HTTP?
Да в любом случае лишним не будет. Я простой фронт и то знаю виды разделения. К примеру: 300-е — всякие редиректы, 400-е — клиентские ошибки, 500-е серверные и тд. Ну и конкретные, которые часто приходят.

Я в индустрии уже под 20 лет. Я писал код для гипервизоров, разбирался с кодом драйверов в linux, писал на С и питоне, пишу на Rust, с интересом читаю учебник по квантовой физике, разрабатывал систему оптимизации трафика по bgp, отлаживал проблемы переупорядочивания пакетов у сетевых карт с несколькими очередями при ребалансировке irq на другие ядра (по сравнению с приложением), разрабатывал сетевые архитектуры для cloud с минимальным blast radius.


И я не имею ни малейшего представления как работает TCP. Кто-то кому-то присылает syn, syn-ack, дальше они там договариваются про окна, расширения, улучшения, rfc 800 какого-то по 8000 какой-то. А да, ещё там в конце FIN.


Чёртова магия и бездна.


curl https://tools.ietf.org/rfc/index | grep RFC | grep TCP | wc -l


201


Средний размер RFC по TCP — 80 страниц.


Удачи.

И я не имею ни малейшего представления как работает TCP. Кто-то кому-то присылает syn, syn-ack, дальше они там договариваются про окна, расширения, улучшения, rfc 800 какого-то по 8000 какой-то. А да, ещё там в конце FIN.

А как это противоречит статье? Я как раз и написал, что очень круто, если кандидат знает про 3-way handshake, про скользящее окно и про флаги.
И сколько стоит такой необходимый минимум?
Если кратко и только необходимые:
Shell
Знание базовых команд
.Каких? Такой список пойдёт? сам наверно четверть дай бог использую

Сетевые протоколы более низкого уровня
Кандидат должен знать, что существуют протоколы TCP, UDP и IP и понимать их суть.
Зачем? Действительно интересно.

Базы данных
Основные запросы в MySQL (всеми любимый JOIN).
Может просто SQL или его уже недостаточно?

ООП
Знание основных принципов ООП.
Им оно нужно?

ИМХО но лишнее
тестировщик должен обладать пытливым умом и умеренной любопытностью
это свойственно многим людям, только оно может совершено в другом выражаться. И даже наверно хорошо если не в работе.

Вообщем-то статье не хватает подробно описанных кейсов работы тестировщика. Иначе смотрится как сферическая должность в вакууме. Даже приведённые тестовые задания с минимальными требованиями коррелируют довольно слабо. Shell я так понимаю легко заменяется на Python, Go, Java… или на набор тулзов.
И сколько стоит такой необходимый минимум?

Не совсем понял вопрос. По времени изучения: на базовом уровне всё довольно быстро познаётся.

Про shell: всё субъективно, скорее надо знать на уровне уверенного пользователя + знать инструменты дебага (strace, tcpdump, gdb и прочее).

Про SQL: спасибо за замечание, именно MySQL и правда ни к чему, исправил на просто SQL-запросы.

Про ООП: зависит от компании, лично меня не раз спрашивали про принципы ООП и пару раз про пару паттернов.

Кейсы работы бывают разнообразные, именно поэтому хорошо иметь широкий кругозор. В частности, если не знать основ архитектуры распределенных систем, то на задаче с формочкой ты не сможешь придумать кейс «а вдруг данные из формы идут на несколько серверов, надо как-то проверить, что работает фоллбэк». А дальше уже раскручиваешь это: посмотрим tcpdump'ом, что трафик действительно есть на нескольких серверах. А теперь зафаерволлим один с помощью iptables. Проверим, что форма до сих пор работает и т.п. И это самый простой пример. Согласитесь, будет здорово, если кандидат что-то подобное скажет вам на интервью? :) И это явно будет дополнительный плюсик кандидату.
отличный набор требований! Очень надеюсь, что человеку с таким набором знаний и умений вы платите достойную зарплату, соответствующую набору требований. Хотя… тестировщику Эндпоинта АПИ или кнопки 70% указанных требований не нужны.
Я просто даже боюсь представить стоимость такого специалиста. А это точно тестировщик, может ошибка в названии статьи? Предлагаю изменить название и контекст статьи. «Что должен знать T-Shape инженер бекенда?» Как посмотрю последнее время необоснованно растут требования к инженерам, но не растут зарплаты. А вообще это уже вопрос перекладывания ответственности за архитектуру и процессы разработки с (Тим, тех, арх и прочих лидов) на линейных специалистов. Мы вам скажем на словах что нужно, а вы уж сами там принимайте решения и думайте как лучше сделать. Вот с таких предпосылок и растут ноги у подобных «что должен знать дворник Палыч о свойствах пыли».
С таким подходом и лиды не нужны. Ведь Тшейпы всё уже сами знают, смогут договориться в виду своей разносторонней подкованности. Да и к чему такие лиды, которые не знают о процессах производства и не способны использовать узкие специализации в разработке ПО. Такие лиды будут искать дешевых сотрудников знающих всё и тратить на это уйму времени. С одной стороны можно методически подойти к процессу разработки, выдать каждому сотруднику свой фронт работы, заложить бюджет на изучение необходимой спецификации или опять же самому подготовить методику работы с той или иной технологией (коли семь пядей во лбу) и т.д. но ведь это сложно, проще ждать «необходимого сотрудника». Но вот с другой стороны такой необходимый сотрудник тратит своё время на изучение каждой технологии, держит свои знания в актуальном состоянии, тратит на это ресурсы (кстати время это тоже ресурс) и для чего? Что-бы кто-то «условно бесплатно» это получил просто прицепом к должности «тестировщик». А тестировщик должен знать, как раз то чему выделен жалкий абзац в этой статье, а именно теорию тестирования и соответственно навыки владения языком в контексте которого тестируется система. Всё остальное уже как раз тот прицеп за который компания должна либо доплачивать, либо обучать.
тут у вас описан не тестировщик, а готовый системный администратор. причем очень недешевый. ну или вы просто под знанием всех этих штук имели ввиду «слышал про N». и да, интересно бы было знать — какую зарплатную вилку вы предполагаете для такого специалиста?
Уважаемые HR'ы, если вы ищете кого-то с навыками:
  • Java, Python, PHP
  • React, Angular
  • PostgreSQL, Redis, MongoDB
  • AWS, S3, EC2, ECS, EKS
  • *nix администрирование
  • Git
  • Docker, k8s

Запомните, это не фуллстек разработчик, это целый IT-отдел.
У меня поначалу вообще возникло ощущение, что автор переписал требования из мема «работать в нашем банке — большая честь») Ну разве что 1С на докер поменял)
А я бы наоборот согласился с автором: конечно, перечень технологий весьма широк и едва ли специалисту на конкретной вакансии тестирующему определенный эндпоинт нужно знать все из этой статьи, но кругозор действительно должен быть достаточно широкий, что бы уметь решить любую задачу.

Как правило работодатель не разграничивает тестирование эндпоинта C++ приложение или эндпоинта python приложения. Они могут быть очень схожи, для конечного потребителя: передай данные — получи данные. Но под капотом может быть очень разная реализация и QA специалист с широким кругозором сможет очень четко диагностировать проблемы как в том, так и в другом случае.

Понятно что все привыкли к вакансиям типа «C++ программист», но сейчас рынок не предлагает «C++ тестировщик» (разумеется, если речь не об автоматизации).

Поддержу также тех, кто высказывается, что знание, как правило, нужно поверхностное, типа «слышал о ...» и «знаю как найти», но более глубокие знания — обычно выделяют кандидата при собеседовании. Это воспринимается, как то, что раз человек уже изучил материал достаточно глубоко (но не слишком глубоко), то он сможет освоить и другие сложные и нужные темы.

Автору — спасибо за статью :)
azakharenko посмотрел на ваш профиль в LinkedIn www.linkedin.com/in/azakharenko/?originalSubdomain=ru и не нашел там информации о ваших сертификатах по ISTQB. Вы действительно считаете что эта сертификация нужна для тестировщика backend? И вообще для тестировщиков в целом. Сколько человек в вашей команде сертифицированы?
Добрый день! А вы прочитали про сертификаты ISTQB в пункте «Что ожидается от любого кандидата»?
А разве мой вопрос был в том почему ISTQB нету в ожиданиях для любых кандидатов? Мне просто интересно было ваше отношение к этой сертификации и считаете ли вы что они нужны для новичков и для тех кто уже работает в индустрии?
Просто вопросы были заданы так, будто я написал «сертификат нужен всем!» :)

Лично моё мнение: эта сертификация не особо полезна людям, имеющим опыт в этой сфере. Для начинающих специалистов она может быть полезна, потому что позволяет ознакомиться с предметной областью в целом и познать основную суть тестирования (но, как мне кажется, это можно сделать более быстро: например, посмотрев пару видео или почитав пару статей, а не вычитывая кучу страниц сухой теории).

Но если есть желание в будущем уехать за границу, то надо иметь ввиду, что у многих вакансий в описании написано «желательно иметь сертификат ISTQB», а процентов для 5 вакансий (по моим наблюдениям, вакансии в Европе) эта сертификация обязательна.
Извините, за формулировку вопроса. В целом я согласен с вашей позицией — действительно сертификация может быть полезна в очень редких случаях. Хотя лично для меня компания которая требует обязательно эту сертификацию уже отмечается красным флагом и я туда точно идти работать не хотел бы.

Фигассе, я по точно такому же списку собеседую qa к себе в команду, сублимировал этот же набор минимальных знаний параллельно с вами, похоже тут как армейский устав — написан кровью, так набор вопросов к qa — опытным путем)

>20 Лет в ИТ и наверное сходу на большинство вопросов не отвечу, нужно вспоминать, потому что просто не помню все и вся. Вы ищите студентов которые заучили и выперлись на экзамен? Был на таких собеседованиях, обычно такие собеседователи надергали вопросы из инета и на эти же вопросы ответить не могут. И с их работой мало что общего. Вот почему то не вcпомнили про elastic, memcache т. п. А почему для общего развития может еще вопросы из мира животных не позадавать?

Я может глупость скажу, но зачем человеку с такими знаниями работать тестировщиком, а не сисадмином / девопсом / да просто девом?

Я конечно, сразу извиняюсь. После прочтения статьи хотел прокомментировать, что очень мало навыков и многого не хватает. Особенно когда мы говорим про тестирования backend. Но потом прочитал комментарии… «и вот что у меня есть вам сказать». Профессиональный инженер тестирования, должен знать очень много и перечисленное в статье, это только «верхушка айсберга». Я уже не говорю про «хотя бы» базовое использование автоматизации процессов (конфигурации) и работу с «автоматизацией» тестирования. Мониторинг и инструменты API тестирования, Jenkins и т.д. И нет, это не инженер DevOps или сисадмин, это знания и навыки хорошего тест/QA инженера.
А если у меня не Jenkins? А сколько ос и сколько инструментов? Я должен знать все? чтоб один раз ответить глупому собеседователю?
Я должен знать все? чтоб один раз ответить глупому собеседователю?


Зависит от состояния рынка. 2008 год, Нью Йорк — на собеседовании надо было изображать 110% знания, иначе «мывамперезвоним». И есть у меня смутные ощущения, что скоро те годы и те рынки вернутся.
Это вопрос, зачем мне учить Git/GitHub если у работодателя может быть Bitbucket… Инструменты могут быть разные, но концепция и практики использования очень похожи. Поэтому вопрос не совсем актуален.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории