Ось що мене запитали на співбесіді

Всім добра!

Недавно у мене була співбесіда на позицію Manual QA. На ній було таке запитання: «Як би ви протестували великий desktop додаток?».

Я відповів приблизно наступне: «Я зібрав всю необхідну інформацію: вимоги, специфікації інші документи, щоб сформувати тестовий базис. Потім на основі аналізу ризиків визначив би приорітети і почав би тестування з найбільш критичних функцій.»

Від HR’а отримав фідбек: «... не достатньо досвіду в тестуванні desktop додатків ...»

Що шукав тех спеціаліст, якою була б правильна відповідь на це питання?

Дякую.

👍НравитсяПонравилось1
В избранноеВ избранном2
LinkedIn

Лучшие комментарии пропустить

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

Поэтому ответ был бы более уместным ответ в стиле:
стандартные функциональные тесты (тут про ваш тестовый базис, риски и приоритеты) + типы тестирования, характерные для десктопа. Например:
* тестирование инсталляции / деинсталяции
* тестирование взаимодействия с третьими приложениями, в частности с антивирусами
* нагрузочное тестирование в разрезе поведение системы после Хчасов/дней беспрерывной работы (сколько памяти сожрет, будет ли работать корректно, будет ли тормозить)
* конфигурационное тестирование с разными поддерживаемыми версиями ОС, разными конфигурациями железа и тд.

Аналогично, для других типов приложений: говорим про стандартное функциональное тестирование + про виды тестов, характерные именно для вашего типа приложения. У веба будет свое, у мобайла — свое.

Рекомендация для топикстартера (из личного опыта):
1) Если ответ на вопрос с собеседования не гуглится — забить
2) Если гуглится — почитать, разобраться
3) Вне зависимости от пунктов 1 и 2 — продолжать ходить на собеседования

— а на чем написан?
— на электроне
— идите нахрен

Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
тестирование инсталляции / деинсталяции

и все остальное, что было перечислено выше, с оговоркой: под всеми распространенными версиями / разрядностями ОС %имя_ос%.

Можливо, інтерв’ювер шукав «досвіду в тестуванні desktop додатків».

З вашого ж коментаря «Я майже 3 роки тестував в матлаб системи керування для різних промислових і не дуже залізяк», тобто такого досвіду немає.

То про що, власне, тема? Як відповідати на питання так, щоби здавалося, що є досвід?

P.S. Я особисто вважаю дивним задавати питання, якщо кандидат не має _потрібного для позиції_ практичного досвіду. Ну вгадає він відповідь, я це замінить досвід (якщо він дійсно потрібен)?

Буває неофіційний досвід.
Знаю 2 випадки, коли брали одразу на сіньорів на С.

що таке «неофіційний досвід» і чим відрізняється від «офіційного»? записом в трудовій книжці?

якщо вам потрібна людина з практичним досвідом — ви питаєте, чи працював кандидат із чимось подібним, і тільки потім варто давати задачки, та й то, далеко не завжди варто витрачати на них час

Неофіційний — це коли приходить сісадмін чи студент, і виявляється, що він програмування знає ліпше за тих, хто його питає.

так а звідки він його знає? з книжки? мені хочеться вірити що студентів із чисто книжковими знаннями ще не беруть одразу в сіньори

а якщо мова про «досвід, про який забули написати в резюме», то див. вище — починаємо з питання, чи стикався кандидат з такою штукою, і якщо стикався, то в яких обставинах. і тільки потім задачки

та тут водяться хто з 13 років щось програмує
і питання чи стикався як горіхи луплять

Ответ был вида «лью воду».

Щас еще такой модный вопрос: как бы вы организовали тестирование на проекте. Я пару раз честно пытался на него ответить. В дальнейшем, я буду с горящими глазами переспрашивать «а что, мне правда придется полностью организовывать тестирование?». И в 99% случаев моя следующая реплика будет «а тогда на... зачем вы это спрашиваете».

Альтернатива для программистов, «а что, мне правда придется писать код обхода бинарного дерева?»

В армії доглядають за травою.
В тестуванні організовують вечірки.
В програмуванні займаються деревами.

Френк, ти коли просинаєшся, першою думкою маєш щось про Зеленського? А засинаєш з думкою про вату?

Я просыпаюсь и засыпаю с болтом в руке, пушто йа сталкир.

Держи ночных кошмаров. Чмафки.

Да ладно, мне на нескольких проектах приходилось быть иденственным тестировщиком, так что всё что только может быть по тестированию было на мне. Возможно, позиция как раз подразумевала 1 тестировщика на срам команду? :D

Автор дал достаточно правильный ответ. Какой вопрос — такой ответ.
И вообще, обобщенные вопросы всегда требуют обобщенных ответов, иначе это может растянуться на сотни if-else.

Альтернатива для программистов, ответьте на вопрос «как бы вы разработали большое десктопное приложение». Условие со звездочкой: ответ не должнен содержать мата и призывов к смене дислокации.

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

Кстати, мне одному кажется, или это сейчас особенно модно, задавать такие вопросы. В другой формулировке «как бы вы организовали тестирование на проекте». Ух, аж бесит.

Заходит как-то SEOшник в бар, ресторан, купить алкогольные напитки, клубы, лучшие бары в Москве, заказать банкет в ресторане...

Продам гуртом дві тонни цементу.

Продам гурт «Дві тонни цементу».

— А що це за машина?
— Цементовоз.
— А чого ж там люди?
— А хіба ж то люди? Це ж менти!

а шо при порошенко луччє било!? (к) (тм)

а шо при порошенко луччє бидло било!? (к) (тм)

Шановний працешукач, світ айті це торба веселощів і цікавинок. Думаю з отриманих відповідей вам стало трохи тяжче від того що можна було якось і відповісти щоб відповідь зарахували, що не дісталась робота, що тепер знов шукати треба а фірма наче непогана була. Не журіться. Вся суть тестування в пошуку проблем і їх аналізі з метою усунення і як наслідок ідеалізації результату. Ви знайшли проблему, задокументували, звернулись до експертів, отримали фідбек і я певен, що вже робите висновки. Особисто я б вже вас взяв на ту роботу тому що: вам не байдуже(значить розвиваєтесь), міркуєте у вірному напрямку, молодий-перспективний, пишете грамотно. А щодо «великого» desktop додатка, як каже мій дід — великому кораблю — велика торпєда) ось такий варік правильної відповіді. Я дуже люблю ходити на інтерв’ю просто подивитись на тих людей, як вони працюють, чи втомлені, чи зацікавлені вони, як виглядає робоче місце, чи подобається унутрі самої контори, яка кава, що поруч, скільки часу туди двіж займає. Онлайн бесіда дещо псує кайф цього процесу але можна потестити зв’язок і поверхнево устаткування. дуже люблю коли ставлять нові свіжі задачі, коли говорять прямо, коли бесіда йде не як на екзамені і коли бережуть час. В процесі тої розмови ви маєте зрозуміти що і як ви там будете робити, наскільки ви до того готові, чи дійсно ці люди можуть зробити ваше життя кращим і чи згодні ви на то всьо.

Подозреваю, что ожидали уточняющих вопросов, а не вот такого прыжка с обрыва.

Уточняющие вопросы рождаются во время формирования ТЗ, а если в них есть острая необходимость, когда уже есть приложение, то с этим приложением именно вот в этом месте что-то не так — нужны какие-то уточняющие вопросы для тестирования. Не документация, а уточняющие вопросы.
А потом пользователи будут выносить мозги саппортам, т.к. уточняющие вопросы у ответственных лиц почему-то не возникли на этапе проектирования.

И? Речь же не о конкретном моменте в рабочем процессе, а о собесе. На собеседовании такой вопрос — и есть формирование ТЗ. Тебе дали расплывчатый вопрос, будь добр уточняй

Вау, какая неожиданность: кандидаты оказывается не умеют читать мысли и разгадывать что «имелось в виду» и стояло за высказанным бла-бла-бла.

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

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

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

Чтобы исправить ошибку, надо знать где ошибка. А здесь ошибка — нанять человека без образования на самую важную работу в организации.

Э, так в том-то и смысл, что чувак ответил, додумав кучу всего, вместо того, чтобы уточнить расплывчатые моменты.

Какой вопрос — такой ответ. Вместо уточнения, пытаясь пробиться логикой (способность к которой у мозга вообще сомнительна), используя категории, которые могут пониматься по-разному (и этот топик — живой пример), ТС просто сформулировал ответ ровно так, как этого требовал вопрос.

Способность мозга кастить шаблоны, в отличие от логики, можно считать идеальной. Потому, для реального общения, гораздо продуктивнее давать ответ на вопрос как он понят, нежели предполагать 100500 вариантов где в вопросе ошибка. Уже сам автор вопроса после ответа может уточнить, что имел в виду, акцентировать другими шаблонами (которые оказались непонятными в силу неумения читать мысли), и тогда получить уже совсем другой ответ. Вплоть до прямо противоположного.

Пример: можно ли есть грибы?
Мой ответ был бы «да». Хотя ответ ребёнку был бы «нет».

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

От маникодера. Который кодит что скажут, и уже потом задаёт вопросы — в точности ли так задумка была, или что-то изменить, добавить блекджека со шлюхами? Почасово, разумеется. А там хоть 100 раз на дню мнение меняй.

А ще мене запитували, що буду робити якщо дали завдання придбати для найвищого шефа квиток на поїзд, а квитків ніде нема. Моя відповідь інтерв’юерам підійшла. Поки що пропоную написати що б ви на це відповіли (крім розвернутися і піти звідти геть, так як потрібно робити на пропозицію продати їм ручку).

Що ти не володієш навичками секретаря шефа і не претендуєш цю посаду зайняти. От коли шефу буде код потрібен, а коду ніде нема.... а квитки на поїзд то я не вмію підробляти, то вам дизайнер треба.

Как можно быстрее сообщить об этом.
Подготовить альтернативы — если спросят.
* В конце месяца напомнить Отделу кадров про премию за работу не связанную с обязанностями.
Детский сад...
Вот вопросы на серьезных щах про вагоны в электричке или чем начинается исполняемый файл(ехе) будут посложнее...
Обычно без бороздящих кораблей достойно ответить не получится.(нужно прощаться и уходить в независимости от того знаеш ответ или нет.)

Сказати «якщо ваш шеф вийде вже зараз, то через дві доби буде на місці»

Поки що пропоную написати що б ви на це відповіли

Шукати квитки на літак/таксі/автобус? При тому ставши в чергу за квитками на потяг? А.. може.. запропонувати йому обмежетись відеоконференцією?

Тут з мого боку не вистачає контексту. Кінець нульових, кишеньковий банк. В таких банках обов’язково власник або ж «почесний президент» — депутат. Знаючи це, я відповів на запитання приблизно так: не буває такого щоб не було квитків взагалі, бо завжди певна їх кількість резервується для депутатів, отже потрібно «просто» зняти депутатську броню на це місце в потязі. Відповідь їм підійшла. Місце роботи мені — ні, хоча саму цю співбесіду вважаю для себе напрочуд пізнавальною.

Раз ходил в левую контору так как меня туда порекомендовала HR-ка нормальной, на WPF и 2 часа считал люки, мячики в самолете, звезды на небе, водоросли на балоте. И не одного вопроса по .NET не было, и потом на следующий день дали оффер. Я аж прозрел. Другая более нормальная устроила псевдо гугл, заставили задачу с Литкода решать, я ее не решил вообще, но все равно дали оффер. Не понимаю зачем этот цирк.

На какие два вида делятся HR багини?
[ответ на возлюбленном it есть]

Не забудем про третий вид — hr-мамасита.

1) Ввімкнути десктоп
2) Протестувати додаток
3) Вимкнути десктоп

Пропущений пункт запуску додатку. Ми вам перетелефонуємо. Гарного дня.

Запуск додатку вже є частиною тестування. А зателефонувати мені ви не зможете, у вас десктоп глючить.

А мені якось на співбесіді дали наступну задачку.

На відстані N метрів один до одного рухаються дві людини, швидкості яких Z1 i Z2. З плеча однієї людини стартує муха з швидкістю Z3. Муха долітає до плеча іншої людини й одразу ж повертає назад. Заради спрощення умови вважатимемо що плечі людини на ходу знаходяться на одному рівні між собою. Визначити скільки разів пролетить муха туди-назад, поки дві людини не зустрінуться.

Так як задача була необачно дана вже на прощання в ліфті після першого туру співбесіди, то вдома знайшов відповідь і на наступний день вразив наступного інтерв’юера. Кому цікава відповідь — ґуґліть.

Якщо в тебе заявлена вища освіта, задачка елементарна. Якщо не заявлена — нащо це питати.
Але як це стосується роботи? Так можна протестувати лише знання прикладної математики.

А провалився ти на «так як», для української мови цей сполучник неблагозвучний, від нього позбавились.

Ліл, це задача (можливо з зірочкою) зі шкільного підручника по фізиці десь за 8ий клас («задачі на рух»), а не з університетського курсу.

Це коли ти знаєш рішення, бо поддивився. Але ти точно не знаєш його коли готувався до собєсу. І навряд чи вирішиш за 3 хвилини (більше тобі не дадуть).

Не піддивлявся — це супер-мега класична задача і я її дійсно навіть пам’ятав. Але я на 95% впевнений, що сходу би вирішив цю або аналогічну задачу, бо в школі дуже любив і вмів цю тему («задачі на рух»). Здається я достатньо задрочив грокнув цю тему, щоб вже ніколи не забутись.

В тому-то й справа, що задача класична. Або ти ЗНАЄШ «просту» відповідь, або не зможеш швидко вирішити.

За ЄДИНИЙ випадок застосування такої задачі на співбесіді треба виганяти з професії HR смачним пинком під дупу. Не назавжди, а допоки не принесе доведення Великої теореми Ферма, що вміщається на полях сторінки книги.

Поясню: незнання принципів формування знань та хоча б приблизної швидкості роботи мозку є ТАБУ для роботи в будь-якій сфері, де треба оцінювати людей. Навіть вихователькою в дитсадок таких брати заборонено, бо зламають психіку дітям.

PS. То яка ж відповідь?

З одної сторони згоден, з іншої не дуже.

Там же якраз прикол в тому, що її можна або як суму ряду порахувати, або «по-шкільному», якщо правильно підійти. Як сума ряду рахується дуже просто:

Нехай S — відстань, v1, v2, v3 — відповідні швидкості (бо мене аж трясе від N, z1, z2, z3).

перший політ шмеля буде тривати: t1 = S/(v1+v3)
за цей час чуваки зблизяться на d1 = t1*(v1+v2)
другий політ шмеля буде тривати t2 = (S-d1)/(v2+v3)
за цей час чуваки зблизяться ще на d2 = t2*(v1+v2)
за перші два польоти чуваки зблизяться на d1+d2; щоб оцінити нову відстань між ними давай подивимось на відстань між чуваками після першого польоту:

S1 = S - d1 = S - S/(v1+v3)*(v1+v2) = S( 1 - (v1+v2)/(v1+v3) ) = S( ( (v1+v3) - (v1+v2) ) / (v1+v3) ) = S*(v3-v2)/(v1+v3)
Далі дивись — після першого польоту задача повністю симетричною, тільки замість S треба взяти S1, а v1 і v2 поміняти місцями, тому після другого польоту відстань стане
S2 = S1 - d2 = S1*(v3-v1)/(v2+v3) = S*((v3-v2)/(v1+v3))*((v3-v1)/(v2+v3))
Тобто через 2 польоти ми прийшли до початкової ж задачі, тільки цього разу відстань між дебілами в q=((v3-v2)/(v1+v3))*((v3-v1)/(v2+v3)) раз більша (0 < q < 1). Тобто всі числа t3, d3, t4, d4 будуть в q раз більші за відповідні числа (t1, d1, t2, d2) з початкової задачі. Ітого:
t1 = S/(v1+v3)
t3 = q*t1
t5 = q*t3 = q^2 * t1
...
t2 = S1/(v2+v3)
t4 = q*t2
t6 = q*t4 = q^2 * t2
...
Далі тобі залишається порахувати аж СУМУ НЕСКІНЧЕНОГО РЯДУ: t1 + t2 + ...

Спочатку було б непогано перевірити що ряд сходиться. На щастя у мене під рукою є заєбатий алгоритм: imgur.com/a/wm2Uedj Йдемо по ньому:
— Ти довбойоб?
— Ну раз я тут вже 10хв строчу замість того щоб робити роботу, то, очевидно, «да».
— Признак д’Аламбера (до речі — вперше за 10 років пригодилось правило з укр мови як писати французькі імена типу д’Артаньян, д’Аламбер, ...)
Фігачимо признак: t[n+2]/t[n] = q < 1 => сходиться!!1один

Далі чесно рахуємо як суму двох геом прогресій: T_sum = (t1+t2)/(1-q)
Фуууух... Осилили.

Мало того, в оригіналі, скоріш за все, було v1=v2 і навіть числа були конкретні (v1=v2=50км/год, v3=75км/год, S=200км). Але навіть v1=v2 зменшує кількість викладок в два рази.

Власне якщо задача для чувака, який якоби закінчив матем спеціальність, то він повинен би вміти цей ніібацца ряд порахувати, бо там аж геометрична прогресія. Якщо чувак з якоби матем освітою не може порахувати суму геометричної прогресії, то можна сміло виганяти на*** — він, мабуть, купив той диплом. Да *** з ним, вивести суму нескінченної геом прогресії тривіально, навіть з жостчайшого бодуна:

q^0 + q^1 + ... = нехай S
q^0 + q*(q^0 + q^1 + ...) = теж S
q^0 + q*S = S
1 + q*S = S
напрягаємось і рішаємо лінійне рівняння з однією змінною, получаємо: S = 1/(1-q).

Мало того — я показав якнайтупіше виводити це, можна було багато разів «зрізати» і швидше прийти до відповіді. Тобто з листком паперу і ручкою це задача на 5хв навіть без усіляких трюків.

----------

Тобто з одної сторони може задача і ніяк до роботи не відноситься, але я чомусь жопою відчуваю, що у неї непоганий predictive power стосовно того, чи чувак толковий чи ні. А от про те, що інтелект (g-factor) афігенно корелює з успішністю на роботі дуже-дуже-дуже багато написано.

Власне там знизу чувак відписався, що ця задача була описана в якомусь Кванті 80х років. Якщо чесно, то мені факту того, що чувак знає, що про журнал Квант вже досить щоб скласти якусь думку про нього. Бо ми знаємо, що цей чувак читав Квант не тому, що за це беруть в ФААНГи, а тому, що йому було цікаво і це вже дуже багато каже про його характер.

Але як тільки пройде слух, що в ФААНГ (або ще якесь, не ясно чому ($$$), бажане місце), беруть за те, що ти вставиш слово Квант на співбесіді, то зразу набіжить дофіга народу, які почнуть геймити всю систему: а про які саме Кванти прийдеться розказувати? А нові кванти цінуються так же як і старі? Я прорішав 100500 журналів, але «У Світі Математики», а не Квант це рахується? Я рішав Сканаві замість Квантів, це ок? Ви заєбали спамити своїми Квантами.

Які там перші два закони менеджменту?
1. If you can’t measure it, you can’t improve it.
2. When a measure becomes a target, it ceases to be a good measure.

Власне тому беруть якісь хардкорні measure, які практично неможливо загеймити: сумарний дохід компанії, як чувак рішає leetcode, ... В нормальних умовах компанії легше заробити гроші ніж займатись (само)обманом (кхе-кхе-енрон-кхе), і навчитись програмувати таки легше ніж завчити на пам’ять 100500 рішень.

PS. То яка ж відповідь?

Все ж обговорили наче? Чи ти хочеш придертись, що не ясно як співвідосяться z1, z2 і z3? Якщо вже так придиратись, то в умові навіть не сказано, що вони рухають назустріч один одному, лол, а тільки сказано що стоять один від одного на відстані N.

P.S. всі викладки писав прямо в браузері — сорян якщо десь описався. Але не думаю, що там є щось катастрофічно неправильне.

Але ж питали не S, а кількість разів. Тільки це.

А от із квантами ти вірно помітив, окрім однієї дрібнички: Усі хто не ФААНГ намагатимуться зробити те саме. Тоді як про ФААНГ буде відомо лише зі слухів, галєри значно поменше будуть намагатися відтворити все це в реалі, і що гниліша галєра, то більше маразму.

Звичайно, вони не полізуть розбиратися, що це за задачі, не панська то справа. Вони погуглять «вопроси на собєсєдованіє» та вимагатимуть «правильну» відповідь саме таку, як в тому джерелі помиїв що вони нагуглили.

Але ж питали не S, а кількість разів.

На 99.9% впевнений, що на самій співбесіді задали нормальну умову з v3>v1=v2, і запитували саме v3*T_sum. S же в умові дано, а кількість разів взагалі немає сенсу обговорювати, бо це питання в стилі «скільки в геометричній прогресії ненульових елементів» — дохуя, дуже дохуя, ваще безліч. Що ви від мене хочете?!

Усі хто не ФААНГ намагатимуться зробити те саме.

З одної сторони так — дивно, коли супермаркет хоче від своїх охоронців нормативів рівня спецназу. З іншої сторони ідея попросити кандидатів здавати фізичні нормативи абсолютно адекватна, і якщо твої кандидати не можуть добігти до кінця, скажем, 3км дистанцію, то це дуже низький рівень кандидатів навіть для охорони супермаркету.

Я на співбесідах прошу написати підстроку в строці. Не КМП, БМ, РК, Z-алго, ... а саме просте O(nm) рішення з двома вкладеними циклами. Не те, щоб у нас на роботах забороняли користуватись інтернетом і стандартною бібліотекою — зовсім ні, просто я хочу якусь дуже просту задачу, яку кандидат точно використовував в своєму житті — щоб ми не тратили час на обговорення задачі а просто чувак сів і написав мені 2 вкладених цикли. Ти б бачив яке гівно народ видає... І пофіг, що я не в ФААНГ набираю (хоча туди теж проводив співбесіди) — 2 вкладених цикли це взагалі якась нереально низька планка, яку не проходять десь 80% кандидатів. Якщо повертатись до аналогії з охоронцями в супермаркеті, то це десь так, наче АТБ шукає собі охоронця, який хоча б не вмре до кінця зміни ... і приходиться відсіювати 4 з 5.

На 99.9% впевнений

В тому-то й суть. Що коли запитують не те, що знають самі, а те що нагуглили — ще й перебрешуть умову задачі і правильну відповідь.

Я на співбесідах прошу написати підстроку в строці

Навіть це зависокий рівень. Ти навіть не здогадуєся, наскільки рідко це доводиться використовувати. Особисто я останній раз то робив років 12 тому, та й то виключно із навчальною метою (треба було показати студенту ефективніть лінійних рішень та допустимість повнотекстового пошуку IRL).

А от що ти не в ФААНГ добираєш — дійсно пофіг. Люди однакові, просто ФААНГ є такими ж монополістами як скажімо НоваПошта в Україні. Я щось не чув, щоб туди добирали навіть по IQ рівня 40. Тих дибілів не навчиш навіть маску носити під час пандемії інакше як через штрафи, та й тоді на тиждень максимум вистачає. Тому і в ФААНГ беруть вже далеко не оптимальними фільтрами, а лише тих, хто знає секрети проходження саме співбесід. Бо тих хто не знає — відсіюють незалежно від кваліфікації, вони просто не потрапляють на рівень, де ці скіли перевіряють.

Якби у фаангів була якась найкраща методика, її б використали не тільки лише всі. Але спойлер: найкращою методикою є безперервне навчання, і саме тому, що вимагається в конкретний момент. І хоча б один HR в Україні цю здатність перевіряв в IT.

PS. Я сам не впевнений, що напишу пошук підстроки на папері без помилок. Скоріше навпаки, я впевнений що навіть не вгадаю, що саме очікують побачити. І каюся, я так і не освоїв regexp, і впевнений що ніколи в житті той маразм не вивчу. Хіба що станеться диво, і воно почне працювати однаково в усіх системах — але навіть тоді цей маразм є бомбою вповільненої дії усюди, де використовується як параметр налаштувань. Звісно ж, з усіма 100500 «єдінствєнно правільних» варіацій.

Ти навіть не здогадуєся, наскільки рідко це доводиться використовувати.

Чому це не здогадуюсь? Я, наприклад, постійно вкладені цикли використовую.

Особисто я останній раз то робив років 12 тому

Яка різниця скільки років тому назад? Ти зараз получаєш гроші за те, що пишеш код? Якщо «так» і ти не можеш написати 2 вкладених цикла, то п****ц.

Тому і в ФААНГ беруть вже далеко не оптимальними фільтрами, а лише тих, хто знає секрети проходження саме співбесід.
Бо тих хто не знає — відсіюють незалежно від кваліфікації, вони просто не потрапляють на рівень, де ці скіли перевіряють.

Це єрунда. False negative (відсіяли крутого чувака) дійсно бувають, але це, скоріш, вийняток а не правило. Тобто є відомі приклади крутих чуваків, яких відсіяли, але на то вони і відомі ці приклади. Знову ж таки — ціль компанії не набрати ідіотів, а не непропустити геніїв. Я тобі більше скажу — дуже багато прикладів чуваків, які впевнені в своїй крутості, але насправді повні ідіоти.

PS. Я сам не впевнений, що напишу пошук підстроки на папері без помилок.

Біда :’(. Це твердження за яке повинно бути соромно, бо воно десь на рівні «я не певен що на папері додам два двоцифрових числа без помилок».

Бля, навіщо гадати? Сядь і напиши хоча б для себе. Там роботи на 2-3хв і коду буде рядків 5. Ми тут тексту на один пост в 100 раз більше пишемо.

Це коли знаєш, що від тебе чекають 5 рядків коду, а не 10. Відповідно для того, хто чекає 10 (бо взяв приклад із книжки), відповідь на 5 буде свідотством надзвичайно низької кваліфікації. Не кажучи вже про відповідь в 1 рядок.

Я ж так і кажу — на папері на співбесіді моя відповідь буде невірною з вірогідністю 80 відсотків, якщо той хто питає не здатен сам розуміти чому треба питати саме це, і як треба питати щоб формулювання було коректним.

Це коли знаєш, що від тебе чекають 5 рядків коду, а не 10.

5 це я від фонаря назвав. Просто маленьке число рядків. Не 100, не 200, не 1.

Я прийму всі адекватні рішення. Будь то 1 рядок, 5 рядків, 10 рядків. Мені не приниципово взагалі — лиш би працювало і поменше костилів, будь ласка.

Це коли знаєш, що від тебе чекають

От ти використовував indexOf? Власне можеш його написати? Я про самий частий варіант:
docs.oracle.com/...​indexOf(java.lang.String
тобто someString.indexOf(someOtherString) -> int? Можеш мені дописати недостаючий код, що реалізовує indexOf але НЕ викликаючи ніяких інших функцій:

 
public static int indexOf(char[] bigText, char[] subText) {
   ...
}
? Власне якщо ти умудрився щось недопоняти в такій постановці задачі (як?!), то нам з тобою явно не по дорозі — я не думаю, що ми спрацюємось. От реально — доєбись до цієї постановки задачі.

Давай зразу скажу що гарантується, що на вхід прийшли не-null.

До цієї постанови лише до&бусь що на реальних співбесідах таких постанов не роблять, питання ставлять максимально абстрактно, саме для того щоб самим було до чого прикопатися.

Той факт, що очікування кандидата аж ніяк не залежать від того чи завалять його на співбесіді, є табу та державною таємницею госдєпа. Так само, що його мотивація коли вже приймуть 100% від співбесіди залежить — це навіть припускати заборонено.

Я прийму всі адекватні рішення.

А за це мабуть спалюють на вогнищі. Бо повторюся, перший етап зазвичай проводять ті, хто не розумієтся на питаннях галузі взагалі. Технічне зазвичай також дають якомусь 16-річному синьйору, який запитає не те що співробітники мають знати, а те, що сам нещодавно вивчив.

Моя претензія до галузі HR в Україні та IT HR зокрема, що туди набирають людей без відповідної освіти (курси спамера не рахуються).

А от що за лайно тобі писали на співбесідах — можеш написати окремий пост, якщо в тебе ці шедеври збереглися.

PS. Принципово не перевіряв, може й помилився. Але піймав себе на тому, що не зміг би написати на папері через те що звик швидко записувати перш ніж аналізувати, тобто тестити задачи навіть самі елементарні треба все ж таки на комп′ютері. А на папері — суцільний маразм, який нічим не може бути виправданий. А задачи на кшталт «що виведе код» взагалі ліквідувати як клас, бо якщо є найменші сумніви — такий код треба негайно переписати. Навіть якщо в сам код писати не дозволено.

public static int indexOf(char[] bigText, char[] subText) {
  if(bigText==null || subText==null || bigText.length<1 || subText.length<1) return -1;
  currentShift=0;
  for(int i=0;i<=bigText.length-subText.length;i++){
    if(bigText[i] == subText[currentShift]){ // criteria are here
      currentIndex++;
      if(subText.length<=currentShift) return i;
    }else{
      currentIndex=0;
    }
  }
  return -1;
}

PPS. Таки помилився, як і передбачав, дві помилки щонаменше :)

Це ж катастрофічно неправильне рішення :/. У тебе не спрацює коли ab шукають в aab. При i=1 у тебе буде неспівпадіння, ти зробиш currentIndex=0, підеш шукати починаючи з i=2 і пропустиш входження з позиції 1.

Я так і сказав. При тому що пишу код хто зна скільки, заради експерименту написавши код як я писав би його на собесі — отримав те, що отримав.

І не тому, що не вмію кодити. А тому що банально частину мого вміння виконує комп′ютер, і без нього я багато чого не вмію, не тільки кодити.

Метою експерименту було довести, що навіть знаючи на 100% що від мене хочуть, розуміючи що має бути на вході, що на виході — я отримую майже гарантований провал. А в мене, повторюся, 20+ років досвіду майже щоденного написання коду.

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

Тепер по коду:
1) currentShift та currentIndex мало бути однією змінною. Це банальна помилка іменування. І якщо на Java мене компілятор у це ткне рилом миттєво, то JavaScript подібних казусів не пробачає без дерективи «use strict».
2) З функції я вертаю змінну і, в той час як вона зсунута на довжину currentShift (в точці повернення на currentShift-1).
3) Якщо перевірка відвалилася не на першому символі, я маю повернутися в циклі не на кінцевий символ де закінчив перевірку, а на перший. Відтак, маю відняти від і currentShift.

І це в кількох рядках примітивного коду.

відсіюють незалежно від кваліфікації

Не так давно поспілкувався із hr із FB — побалакали і він мені надіслав методичку про підготовку для інтерв’ю — у першому ж реченні було — «нам взагалі не важлива ваша кваліфікація у вашій царині, це вам ніяк не допоможе пройти наше інтерв’ю»...

— Забудь всё, чему тебя учили в институте! Здесь тебе это не пригодится.
— Я не учился в институте.
— Тогда вы нам не подходите: нам нужны специалисты только с высшим образованием.

Только что решил за меньше чем минуту.. ну правда сидя дома в удобном кресле а не на собеседовании.

в 8 классе еще не знают что такое ряды и про их сходимость тем более.

Так тут і не треба :).

Це жартівлива задача яку математики/фізики рішають через ряди, а школярі рішають в 100 раз простіше, бо рядів не знають :).

здається в школі бачив в книжці по інформатиці. в 90-х.

Визначити скільки разів пролетить муха туди-назад, поки дві людини не зустрінуться.

Точно запитували саме кількість разів туди-назад? :) Чи може таки сумарну налітану мухою відстань? :) Просто це ДУЖЕ відома задача і є навіть історія про те як цю задачу рішав фон Нейман.

Two trains 200 miles apart are moving toward each other; each one is going at a speed of 50 miles per hour. A fly starting on the front of one of the trains flies back and forth between them at a rate of 75 miles per hour. It does this until the trains collide and crush the fly to death. What is the total distance the fly has flown?" In a strict mathematical sense the fly actually hits each train an infinite number of times before it gets crushed, and one could solve the problem the hard way with pencil and paper by summing an infinite series of distances. This is they way that most trained mathematicians will solve the problem. Conversely a mathematical novice will most likely solve the problem the easy way — since the trains are 200 miles apart and each train is going 50 miles an hour, it takes 2 hours for the trains to collide, therefore the fly was flying for two hours, at a rate of 75 miles per hour, and so the fly must have flown 150 miles. Easy. When this problem was posed to John von Neumann, he immediately replied, „150 miles.” „Ah, I see you’ve heard this one before, Professor von Neumann. Nearly everyone tries to sum the infinite series.” „What do you mean?” asked von Neumann. „That’s how I did it!”

Прикол якраз в тому, що питали трохи складнішу версію.

питали трохи складнішу версію

ти про ось це:

Визначити скільки разів пролетить муха туди-назад, поки дві людини не зустрінуться.

?

Якщо так, то це ж навпаки простіша версія — безліч разів. Або я туплю і мені пора лягати спати.

Або я туплю

Або я. Однак мені видається простіше порахувати загальну відстань без прив’язки до кількості прольотів.

загальну відстань без прив’язки до кількості прольотів.

так кількість прольотів можна не рахувати — їх же безліч.

загальну відстань теж не те щоб важко, але хоч якісь арифметичні операції прийдеться зробити: N / (z1+z2) * z3.

кількість прольотів можна не рахувати

Можна і не рахувати, якщо задано ціль — визначити лише загальну відстань. А от є люди котрі поставили задачу порахувати саме кількість прольотів.

Ух. Ми про різні речі.

Можна не рахувати кількість, не тому, що вона скоротиться чи ще щось, а тому, що (досить очевидно) немає такого цілого числа. Це як би я попросив сказати чому буде рівно 1+1+1+1+... — тут можна не рахувати, бо це неправильна задача (ряд незбіжний).

А от є люди котрі поставили задачу порахувати саме кількість прольотів.

І що вони хотіли почути? Бо це задача в стилі «назви найбільше можливе число».

Сумарну ж відстань порахувати можна — це якесь дійсне число. І його можна або через жопу рахувати як суму нескінченого (але збіжного) ряду. Або порахувати час в повітрі і помножити на швидкість.

З кількістю прольотів не все так просто. Якщо z3 ⩽ z2, чи z3 ⩽ z1, кількість прольотів буде 0. То хто там казав за просту задачку?

Я казав що задача проста. Досі вважаю що так і є.

Ось ці випадки z3 ≤ z1 або z3 ≤ z2 це трохи притягнуто за вуха в умовах, коли сама задача сформульована афігеть як неформально. Але ж і ми не на захисті чийогось дисеру, а на форумі улинюємо від основної роботи. Тобто придиратись до якигось corner cas’ів трохи дивно — всі беруть найщирішу (the most generous) інтерпритацію. Бо якщо почати дойобуватись, то весь кайф пропаде — в задачі чомусь не сказано було про те, що люди рухаються назустріч один одному. І взагалі, що таке «туда-сюда»? Якщо кількість розворотів на 180 градусів, то кількість прольотів зовсім не 0, а наприклад 1, якщо z1 < z3 < z2 — муха таки один повний раз пролетіла між чуваками. Чи все-таки відповідь 1, бо вона пролетіла «туда» між ними, а «сюда» в протилежному напрямку, хоч і не була між 2-ма людьми. А якщо z1 > z3, то взагалі є сенс говорити тільки про «туда», а «сюда» (в зворотньому напрямку) вона ніколи не летітиме.

Ну тобто нафіга шукати корнер кейси в неформально поставленій задачі? Мало того, тут же абсолютно ясно як пофіксити умову задачі так, щоб задача стала адекватною.

Саме в тому і западло: замість неформально поставленої задачі вона використана для відсіву майбутніх працівників. Кайф лише коли знаєш відповідь. А співбесіда — це формально, до цього готуються, і вчать багато чого непотрібного, але те що спитають, бо так прийнято.

Механізм пам′яті є ворожим для механізму логіки. Чи краще сказати для імітації механізму логіки через шаблони. Бо саме в тому і є еволюційна потреба пам′яті: радикально скоротити час приймання рішень.

В тому і є западло кайфу від нібито задач «на логіку». Бо джерелом кайфу є знання правильної відповіді. І звідти ж ПОМИЛКОВЕ припущення, що задачу можна вирішити миттєво, і її вирішить миттєво будь хто окрім повних дурнів. В той час як задача була не створена самостійно, а саме підшукана. Бо мозку інтерв′юера не вистачає навіть на створення задач для дійсного тестування потрібних навичок та знань.

Саме в тому і западло: замість неформально поставленої задачі вона використана для відсіву майбутніх працівників.

З чого ти взяв, що саме неформально поставлена задача використовувалась на етапі співбесіди? Я набагато радше повірю в те, що ОП просто неформально переказав нам задачу і саме в переказі допустив неточність, а на самій співбесіді задача була сформульована максимально коректно.

Кайф лише коли знаєш відповідь.

Навпаки. Рішивши через ряди ти добиваєш задачу, а потім коли тобі кажуть правильну красиву відповідь наступає кайф від того, що «ух ти, красиво».

І звідти ж ПОМИЛКОВЕ припущення, що задачу можна вирішити миттєво, і її вирішить миттєво будь хто окрім повних дурнів.

Ніхто так не припускає взагалі. Якби мені на інтерв’ю цю задачу рішили через ряди, я б абсолютно чесно зарахував би її на 100% — є задача, чувак вирішив її інструментами, які йому дали в школі/універі. Якщо ж чувак її ніяк не може вирішити, то це дуже серйозний флажок — чому це чувак з якоби математичною освітою не може порахувати суму геометричної прогресії? Сорі, я повинен вірити в те, що чувак геніальний в якійсь області математики, але тут не може вирішити просту задачу? Так не буває.

Дозволю собі дуже сильно не погодитись — це дуже погана задача з цілого ряду причин. От дивіться, Ви пишете

Якщо ж чувак її ніяк не може вирішити, то це дуже серйозний флажок — чому це чувак з якоби математичною освітою не може порахувати суму геометричної прогресії?

а трохи раніше

якщо z1 < z3 < z2 — муха таки один повний раз пролетіла між чуваками

Але біда в тому, що при _різних_ швидкостях чуваків (чи поїздів в оригіналі) послідовність відстаней, які проходить муха, не буде геометричною прогресією. Можна розібрати на проміжки з парними номерами і непарними, тобі буде 2 прогресії, але це вже грабля (ну ще варіант по 2 польоти в сумі рахувати, але все одно грабля). По-друге, там реально паскудні викладки. От я тут чисто в ілюстративних цілях накидав на коліні і як зумів пошарив: формули. Там трохи інші позначення: швидкість мухи u, поїздів vA та vB, початкова відстань між ними L = L1, стартуємо з поїзда А, час до першого зіткнення t1, другого t2 ітд, а відстані, які проходить муха, l1,l2,..., сумарно пройдена відстань — l . Там же я провожу сумування, щоб показати, що кінцева відстань рівна тому що має бути. Зверніть увагу на індекси: де від 0, а де від 1. Ну і подальші перетворення — там теж треба не завтикати. До речі, це ще не всі формули — я тільки ключові виписав, бо лінь все було набирати. І це все на співбесіді під тиском та ще й на позицію «ні разу не математик»? Та ну таке в баню.

Ну ок, якщо vA ≠ vB, то получається кривіше ніж хотілось би (хоча я теж викладки робив — терпимо, чо). Але при стандартному формулюванню, де vA=vB взагалі ж просто.

Я вважаю, що з такими задачами треба або брати на посаду «математик» і грузити на роботі відповідними тасками, або не давати таких задач. А нематематика щось таке просто зажене в стрес на співбесіді, але мало що скаже про його навики програмування. З тим же успіхом можна тоді видати задачу по біохімії чи спитати столицю Еквадору — так само покаже наскільки хороший перед нами програміст :)

Це задача з журналу «Квант» за 80-ті роки, там була ціла стаття на завдання цього типу. Коли питання йде про кількість прольотів, то задача кінчається словами: коли відстань між подорожуючими становить (санти)метр або менше, муха долітає до плеча, садиться на нього й далі вже не літає.

Заходит бесконечное число математиков в бар.
Первый говорит: мне литр пива.
Второй говорит: мне поллитра.
Третий: мне четверть литра
Чертвертый: мне одну восьмую литра
Пятый: мне одну шестнадцатую.
Бармен: идите нахер, я вас знаю, вам два литра на всех.

На лекцию собралось трое студентов, вдруг пятеро встают и уходят.
Профессор себе под нос: ну вот, ещё двое придут и совсем никого не останется.

заходять три математики в бар.
бармен: ви всі хочете випити?
перший математик: не знаю
другий математик: не знаю
третій математик: так

Або бар, або бармен є комплексними. У дійсному барі бармен таке не спитає. Він спитає: чи налити наступному не менше за попереднього? І вони розійдуться.

z3 > max(z1, z2) ? ∞ : 0
В первом случае муха будет бесконечно опережать каждого, во втором — отстанет от одного из участников и не догонит.

Расстояние — будет ряд, сумма сойдётся к определённому числу, возможно будет простая формула если взять предел.

Вот только умение решать интересные задачи по математике не гарантирует, что человек будет так же решать интересные и «интересные» задачи на проекте.

Ты не поверишь, но людей в основном берут решать НЕИНТЕРЕСНЫЕ задачки. И много. И на вчера.

И разбавленные трехразовыми митингами с интервалом в 2 часа

Ви з Пєніє видавили з мене скупу чоловічу сльозу

1. кинул бы мышку на клавиатуру и посмотрел что будет с приложением.
2. Потом бы попробовал спать лицом на клавиатуре
3-й уровень
посадил ХР на стол и не отодвинул клавиатуру...

А как же котик на клаве, младенцы, пролитое пиво?
Вдруг с приложением нельзя работать из-под виртуальной клавиатуры.

Ты смеешься, а я помню креш, который воспроизводился сидя, но не воспроизводился стоя.

Суть в том, что там надо было быстро что-то поделать, и стоя мышью не получалось, поэтому кусок делали с клавы, и оно не падало после этого. А когда все мышью — то падало.

Зачем далеко ходить, винда 7 и виста долгое время имели подобный баг: когда ты переключаешь язык на клавиатуре во время работы — с немалой вероятностью переключения не произойдёт. А когда от делать нечего или ради проверки, будет работать 100%.

Фокус крылся в обработчике нажатий кнопок. Вероятность зависела не только от нажатия комбинации, но и от времени, на которое были зажаты кнопки и даже от силы нажатия. Потому что дрожание контактов на клавиатуре дело совсем нередкое (особенно по тем временам), а очередь событий в винде это что-то с чем-то, равно как и принципы её обработки. В результате чтобы поймать факт одновременного зажатия двух кнопок ОДИН раз (с точки зрения человека) достоверно надо было немножко заморочиться. А поскольку разрабы и тестеры англоязычны, им оно было до лампочки, проверили тестом, работает, ОК.

В Убунте с Гномом сейчас какие-то глюки, когда 3 языка установлены — если свернуть окно, то его язык может уползти на другое окно.

Отдал в бухгалтерию. Они всё протестят быстро. Но вот ОБЪЯСНИТЬ, что они делали...

Сложно что-то точно утверждать, имея лишь короткий отрывок. Вряд ли же техническая часть состояла из одного вопроса. Придется делать предположения исходя из того, что есть.

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

В любом случае дам пару советов:
1. Не зацикливаться на ситуации. Формулировка отказа может быть суть формальной. Допустим, вы просто не понравились интервьюеру, но не может же он/она в мотивировке отказа написать «мутный тип, мне его рожа сразу не понравилась». Напишут что-то, что хоть как-то похоже на правду. Это ХР вам потом и озвучит. Если из резюме было понятно, что такого опыта у вас нет или это выяснилось в ходе уточняющих вопросов, то это идеальный предлог для отказа. Лучше подумайте в целом над тем как прошло интервью и проанализируйте чем могли не подойти.
2. Когда задают вопрос такого рода (очень общий), то имеет смысл начать с уточняющих вопросов. (Часто такие вопросы задают с целью не получить на него ответ, а для того, чтобы завязать профессиональную дискуссию).
Например:
— от меня требуется описать черновик тестовой стратегии или ситуация более прикладная и мне сейчас надо набросать что-то вроде чеклиста что бы я тестировал?
— стоит ли мне начать с общих подходов к тестированию или сразу сосредоточиться на особенностях тестирования именно десктопного приложения?

Если хотят увидеть прикладной кейс, то надо уже задать уточняющие вопросы о продукте:
— в каком он состоянии?
— какая цель тестирования?
— какие ОС поддерживаются?
— есть ли соединение с сервером?
и т.д.

Золотое правило на техническом интервью — это на открытый вопрос отвечать вопросом (уточняющим). Это говорит о том, что вы серьезно относитесь к нему, а не пытаетесь сдать экзамен по заученным билетам.

Мне кажется, тут обе стороны подошли к собеседованию халатно.

Но для одной из этих сторон проведение собеседований является частью ПРОФЕССИИ. А вторая вообще не обязана уметь их проходить. От слова «совсем». А тех хрюш, которые с этим не согласны, надо выгонять работать на панель, где им и место. Правда там тоже выяснится, что надо учиться, но там есть опытный сутенёр-наставник, который пидзюлями объяснит. Как же в HR таких порядков не хватает...

Сомневаюсь, что эти вопросы задавал HR. Скорей всего это был технарь, а HR просто озвучила его фидбэк.

Если технарь задаёт такие вопросы, он не технарь, а менеджер, к тому же нихрена не смыслящий в менеджменте. Прокладка, мешающая работать и сосущая ресурсы.

Я минулого тижня спробував себе на співбесіді на CTO, то на питання про кроки зі старту проєкту з повного нуля у певних часових рамках почав так само теоретизувати, але розумів, що в мене дійсно бракує досвіду реальних таких речей, тому все, що тут можна сказати по моїй відповіді — оцінити хід думок і правильність пріоритетів. Про практику це скаже дуже мало.
В той самий час, як інтерв‘ювер, я зазвичай досить легко відрізняю теоретизування від суворої практики з конкретними кейсами. І вони теж відрізнили — теорію знає, орієнтується, але практично з таким тестуванням не стикався, уточнювати умови не рветься. Думаю, цілком адекватний висновок.

уточнювати умови не рветься
Я зібрав всю необхідну інформацію: вимоги, специфікації інші документи

Ага, «1. взяв. 2. Зробив», я теж так можу. До речі, в моєму випадку я навіть вгадав реальні кроки.
Оце «зібрав», «специфікації» — воно ж дуже теоретичне, наче з підручника. На практиці ж круті тестувальники починають з ad hoc і поки вони поступово всюди в’їдуть, вже виловлять багато з того, що наш брат пропустив...

Я до цього мав досить специфічний досвід тестування ПЗ для великих корпоративних проектів (системи керування в літаку, робот хірург). І щоб «наскоком» знайти там баги треба бути аж надто крутим тестувальником. І для мене неструктурований підхід виглядає як щось дике.

Ad-hoc це не неструктуроване, а дещо інше. В досвідченого тестера це обов’язково дає швидкий вихлоп і це має бути паралельним процесом з отим збором інформації, хоча б тому що в процесі збору все одно траплятимуться описи переважно «happy case».
Оцей хаос треба структурувати і те, як хороший тестувальник може таке зробити, викликає в мене щиру повагу (надто зважаючи на те, що я занадто розробко-центричний і думаю в інших категоріях). Тому особисто я люблю і поважаю QA/QC :-)

Рекомендация для топикстартера (из личного опыта):
1) Если ответ на вопрос с собеседования не гуглится — забить
2) Если гуглится — почитать, разобраться
3) Вне зависимости от пунктов 1 и 2 — продолжать ходить на собеседования

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

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

Даже собеседующий, пропускающий по размеру члена будет менее вреден,

Дівчата та жінки — на мороз?

Можна в мінус сантиметрах міряти.

Від HR’а отримав фідбек: «... не достатньо досвіду в тестуванні desktop додатків ...»

Вот мне сегодня сказали, что «к сожалению, нужен практический опыт в эмбедед», поэтому на собеседование не пригласят)

Если не пригласят — называй компанию, чтобы остальные даже время не тратили. Пусть сами сношаются со своим эмбедед (в классическом смысле этого слова). Может потрахавшись пару месяцев они внезапно окажутся в положении, где нужно объяснять почему за это время нихера не сдвинулось с мёртвой точки, хотя по плану уже должно начаться производство продукта.

Львовский Глобал Лоджик. Там была открыта позиция IoT Architect.
Я ожидал стандартных отмазок типа «дорого» или спуска на тормозах. Но вот что резюме читать не будут — не ожидал.

Г-гг-гггг! Компанія мрії далі у своєму стилі.

Вы не упомянули в ответе метод Стэля.

А что и в каких попугая есть

великий desktop додаток

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

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

Поэтому ответ был бы более уместным ответ в стиле:
стандартные функциональные тесты (тут про ваш тестовый базис, риски и приоритеты) + типы тестирования, характерные для десктопа. Например:
* тестирование инсталляции / деинсталяции
* тестирование взаимодействия с третьими приложениями, в частности с антивирусами
* нагрузочное тестирование в разрезе поведение системы после Хчасов/дней беспрерывной работы (сколько памяти сожрет, будет ли работать корректно, будет ли тормозить)
* конфигурационное тестирование с разными поддерживаемыми версиями ОС, разными конфигурациями железа и тд.

Аналогично, для других типов приложений: говорим про стандартное функциональное тестирование + про виды тестов, характерные именно для вашего типа приложения. У веба будет свое, у мобайла — свое.

Так само легко можна вивернутися (було б бажання) та сказати, що у вашій відповіді нема практично нічого суто про десктоп та/або є безліч надуманих умов :)

тестирование инсталляции / деинсталяции

Portable бінарник.

тестирование взаимодействия с третьими приложениями, в частности с антивирусами

Так воно й вебу подекуди стосується, але ж мало хто заморочується. Під кожний шизоїдний антивір все одно не перевірити.

нагрузочное тестирование в разрезе поведение системы после Хчасов/дней беспрерывной работы (сколько памяти сожрет, будет ли работать корректно, будет ли тормозить)

А тіпа перевіряти «тєчку» в браузері на клієнті — взагалі не треба, хай собі далі тече )

конфигурационное тестирование с разными поддерживаемыми версиями ОС, разными конфигурациями железа и тд.

Власне, все те ж саме, що й під веб, якщо це не сайт на вордпресі, а справді прохавана веб-аппка із блекджеком та елітними повіями CSS анімаціями, WebGL’ем та кипою усілякого різного.

У веба будет свое, у мобайла — свое.

Ніт!
Принаймні, не за даних куцих умов.

Вивернути можна все, що завгодно. Ми зараз не про те. А про те, що не сказав автор, щоб його відповідь на співбесіді QA вважалась задовільною.

Задовільною для кого? Не екстраполюйте. У вас надумані умови та досить архаїчний погляд на веб, як наслідок — нерелевантні характерні риси десктопних додатків.

А що там хто хотів почути саме від автора — одному лише дідьку відомо, не морочте людині голову; бабця Ванга вмерла, а іншої поточним потоком реальності не передбачено, соррі )

Задовільні для іншого тестувальника. Питання, що задали автору — це класика питань на співбесіді тестувальника рівня джун/мідл. Так само, як і відповідь на нього.

Portable бінарник.

А локалізації інсталятора?

Під кожний шизоїдний антивір все одно не перевірити.

А треба. Робляться образи ОС з різними антивірами, а потім вони накатуються і теститься на кожному. Можна в одній матриці з локалізаціями.

А тіпа перевіряти «тєчку» в браузері на клієнті — взагалі не треба, хай собі далі тече )

Усі вже звикли. Браузери довго не живуть)

Visual Studio 2019. Створюємо С++ десктопний застосунок з шаблону, не добавляючи жодної строчки власного коду. Збираємо релізну версію і відправляємо на VirusTotal. Результат: 8 з 70 движків вважають її небезпечною.

Бо вона робить вигляд, що нічого не робить. Це підозріло!

Бо нема в білому списку. Саме він рятує більшість програм від випилювання антивірями, які створені перемагати в конкурсах на найбільший відсоток знайденої вірусні.

Так само легко можна вивернутися (було б бажання) та сказати, що у вашій відповіді нема практично нічого суто про десктоп та/або є безліч надуманих умов :)

Повірте, в інтерв’ювера, якщо це не sick bastard якийсь, зовсім немає інтересу вивертатися чи говорити. Все правильно Ольга сказала — очікували почути практичний хід думок.

А в чем смысл такого вопроса\ответа? Ну типа вот эти исталяции\деинсталяции и антивирусы это что-то сакральное чего куа не поймет на испыталке за 3 месяца? Или он должен был родиться с этими знаниями?

Ну я там понимаю когда проект требует серьезные знания по базе данных и автоматизацию и его спрашивают ибо такие знания за 3 месяца просто так не выучишь.

Или нужен был куа лид\менджер чтобы настроить процессы тестирования десктоп и быть наставником для джунов которые имеют пробелы?

В чем прекол спрашивать мелкие нюансы которые элементарно узнаются, учатся, объясняются лидом за первые 3 месяца испыталки?

Так можно дойти до уровня когда на собесе сразу спрашивают бизнес-логику проекта на который сотрудник устраивается потому что если не ответит, значит не сможет разобраться с ней.

Вы меня так спрашиваете, словно это я собеседование проводила :)

Но в целом — обычно просто чтоб убедиться, что кандидат имеет опыт работы с этим типом приложений и понимает особенности. Тут суть не в том, чтобы перечислить все детали или угадать типы, которые будут конкретно в этом приложении. Важно — очертить глобальный круг проблем типа и показать, что ты «в теме».

Например, на вопрос про особенности тестирования Android, ответ, который удовлетворит 90% итервьюеров — множество девайсов и сложность их отбора для тестирования. При этом в компании может быть как своя ферма, так и тестирование на одном девайсе — на личном телефоне тестировщика — то есть проблема выбора девайсов, вообще может не стоят. Но вопрос зададут.

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

Аналогично для iOS и веба: там свои достаточно банальные ответы :)

В чем прекол спрашивать мелкие нюансы которые элементарно узнаются, учатся, объясняются лидом за первые 3 месяца испыталки?

Я понял что не вы проводили, я в общем задавал вопросы а не только вам.

В чем прекол спрашивать мелкие нюансы которые элементарно узнаются, учатся, объясняются лидом за первые 3 месяца испыталки?

Зекономити 3 місяці? Ольга правильно розповіла про тестування окремих нюансів. Та ж інсталяція/деінсталяція — ну от що це для тестера мобільних аплікух? Тикнути одну кнопку в Гугл плей. А на десктопі інсталяція — це процедура, яка може містити цілу купу нюансів і навернутися по сотням причин. Від десктопного тестера я б очікував, що він в курсі цього і йому не потрібно розповідати, що треба тестувати встановлення під адміном або звичайним юзером, в стандартні або не стандартні папки, під кілька різних версій ОС тощо. Звичайно, можна взяти тестера без досвіду десктопного тестування і навчити, але навіщо, якщо можна знайти на ринку вже готового?

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

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

Можно сразу поставить условие — или есть опыт или досвидос, ведь на рынке полно десктоп тестеров.

Можно сразу поставить условие — или есть опыт или досвидос, ведь на рынке полно десктоп тестеров.

Так більшість і робить

Иными словами, собеседующая НИХРЕНА не понимает сути работы, просто знает какой «правильный ответ» должен прозвучать на её тупой вопрос. Разумеется тот, который написан в книжечке или программе курсов. Разумеется, конкретно в той, в которую «багиня» соизволила заглянуть.

Очень крутой ответ,прочитав до конца одернула себя, наповнив, что я ux designer, а с другом не обязательно говорить о его профессии. А написано четенько и честно.

Ответ прекрасный и поэтому позвольте поделиться багом системы.
Вот как будет правильно Olha или Olga? Oleg или Oleh?
Я спросил, когда паспорт получал и получил интереснейший ответ: это транслитерация — то есть не перевод. Это программисты как-то так:
if 'a' then 'а' ... if 'ж' then 'j' else if 'г' then 'h' ...
Это ведь кошмар тогда получается вместо правильных фамилий? На официальном уровне.
И иностранцы читая наши паспорта будут смеяться? Только потому что такая подстановка может удобна для транслитерирования, но абсолютно не подходит IRL

Систем транслитерации в Украине было 4, начиная с 91года(последняя попытка принята в 2014), по этому есть всевозможные варианты, увы.

И есть всевозможные проблемы с юридическими документами. Особенно весело с русским — украинским в недвижимости.

Ммм, якщо відповідь була приблизно така як ви написали, то я б теж дав оцінку — недостатньо досвіду. Звісно не знаю що чекали, але я б дав таку оцінку за суто книжкову відповідь.
навіть якщо б ви і не мали досвіду -то запитаннями могли б покращити свої шанси.

Секрет простий — у влучних запитаннях людина демонструє себе краще аніж у відповідях.

От навіть секція
— а тепер ваша черга задати нам питання про майбутню роботу, проект, компанію, умови

буває й вирішальною, насправді.

А що шукав конкретний спеціаліст — хто знає... Тільки гадати. Інший на це ж питання може чекати зовсім іншу відповідь :)
Але все ж навряд чи такої загальної відповіді про все і ні про що.

я б дав таку оцінку за суто книжкову відповідь.

А от за таке +100500

Справді затраханий життям і досвідом кандидат скоріше, замість цитування книжково-академічних абстракцій, сказав би щось накшталт, — самі топіть уранові ломи в ртуті тестіть свого сферичного коня у вакуумі ))

Справді затраханий життям і досвідом кандидат

Теж має мало шансів. Загнаних коней пристрелюють.

Коли по кандидату видко що його затрахало життя, робота, чи ще щось, — нафік, вакансій повно, знайде собі інший санаторій

сказав би щось накшталт

те ж саме можна було б сказати іншими способами, причому собі на користь.

але кандидат обрав «самі тестіть свого сферичного коня у вакуумі»?
ну ок, агресія то такє, то щось живе, відверте. агресія може свідчити І про досвід, І про кипучу жаду діяти.
головне у такого формату відповіді — що він — бовдур, бо не врахував свою позицію і не знайшов оті способи, що були б йому на користь. А кому потрібні — бовдури яких затрахало життя?

Коли по кандидату видко що його затрахало життя, робота, чи ще щось, — нафік, вакансій повно, знайде собі інший санаторій

Живучі в Україні, бути не зaтpaxaним життям — це ознака розумової відсталості, інфантильності, патерналізму — кандидату буде потрібен перманентний бебісіттінг, навіть щоб слину з рота підтирати.

Більшість працедавців створюють не санаторії, а якусь гротескну копію bdsm-студії Kink, де є все для збочених задоволень і нічого для людей без девіацій.
Всі ці хеппінесс-менеджери — туди ж, вони не зроблять тебе хеппі, а скоріш застромлять флюгегехаймена в дyпy.

Живучі в Україні, бути не зaтpaxaним життям — це ознака розумової відсталості, інфантильності, патерналізму

затраханий — всюди буде затраханим :)
— За-ло все...
— Ты просто за-нным родился.

але хай себе тішить думкою що та його затраханість від великого розуму, зрілості, та свободи

..., господа, кто же может своими же болезнями тщеславиться, да еще ими форсить?
Впрочем, что ж я? — все это делают; болезнями-то и тщеславятся,
Достоевский, «Записки из подполья»

Всі ці хеппінесс-менеджери

чув про таких, і на доу буває пишуть подібне, але не зустрічав таких.

але якщо навіть вони, оці хеппінесс-менеджери — то тоді точно, не уявляю як же ця несчастна істота буде працювати з звичанйними, не хеппінесс-менеджерами.

затраханий — всюди буде затраханим

Так, так, саме тому масово валять з постсовку, а не в постсовок, бо усюди однакова затраханість!

не уявляю як же ця несчастна істота буде працювати з звичанйними, не хеппінесс-менеджерами

Це взагалі не та професія, що має вплив на проекти, це для «дружнього колективу» і т.д., щоб були з дурною благосністю на обличчях в будь-якій незрозумілій ситуації, особливо в ситуацій без підвищень зарплат, але щоб хеппі, а то щось собі там вигадали, гроші якісь, навіщо їм вони?

Так, так, саме тому масово валять з постсовку

нехай валять :)
до затраханності це немає відношення.
так само як їдуть з села у місто

бо усюди однакова затраханість!

обставини різні.
але лузер — то стан самой особистості, а не обставини
затраханість — то зазвичай теж.

захворіти, вигоріти, впасти в депресію — то тимчасовий стан. всякі бувають обставини і хвороби від них.
а от затраханий — то вже «генетичне»

за своє щастя відповідальність на самої людини.
як і за затраханість.

тому нехай шукає санаторій, а не роботу.
вакансій повно — знайде.

але лузер — то стан самой особистості, а не обставини

Егеж, так і кажіть працівникам в лікарнях на зарплатні з мінімалку, що вони лузери, та й усім іншим громадянам, які не вайті і не при владі, це ж лузери та нероби, все це від стану їх особистості, треба позитивно сприймати своє жебрацтво.

Егеж, так і кажіть працівникам в лікарнях на зарплатні з мінімалку

тобто програміст страждає так само?
його що затрахало?

а швидкє гугління отакє дало:
«Неудачник» это всего лишь тот, кому не везёт,
а «Лузер» — человек, вечно проигрывающий в борьбе. То есть мы-русские привыкли списывать свои провалы на отсутствие удачи, в то время как на западе неудачи расцениваются как неспособность победить, преодолеть трудности.

Билл Гейтс, школьникам:
Продавать гамбургеры не ниже вашего достоинства. Ваши дедушки и бабушки использовали другое слово для раздачи котлет — они называли это Возможностью. Умный человек не боится никакой работы, он делает её, получает опыт и стремится к чему-то большему.

тобто програміст страждає так само?
його що затрахало?
Більшість працедавців створюють не санаторії, а якусь гротескну копію bdsm-студії Kink, де є все для збочених задоволень і нічого для людей без девіацій.
Всі ці хеппінесс-менеджери — туди ж, вони не зроблять тебе хеппі, а скоріш застромлять флюгегехаймена в дyпy.

Окрім цього, від інших людей немає якогось спеціального паркану, який розділяє розробників з ними.

незадоволення, роздратованість і затраханість, то як нежить і рак.

просто може ви ще не розумієте різниці.
як наприклад той хто каже:
О! я цілий тиждень був у депресії!

Щаслива дитинка, вона мабудь даже нафантузвати не може що такє депресія...

а бовдур — то взагалі невиліковне ніяк.
То кому потрібні — бовдури яких затрахало життя?

Давайте домовлятись про терміни :)

Впрочем, что ж я? — все это делают; болезнями-то и тщеславятся,
Достоевский, „Записки из подполья”

Kilgore Trout became Billy’s favorite living author, and science fiction became the only sort of tales he could read.
Rosewater was twice as smart as Billy, but he and Billy were dealing with similar crises in similar ways. They had both found life meaningless, partly because of what they had seen in war. Rosewater, for instance, had shot a fourteen-year-old fireman, mistaking him for a German soldier. So it goes. And Billy had seen the greatest massacre in European history, which was the firebombing of Dresden. So it goes.
So they were trying to re-invent themselves and their universe. Science fiction was a big help.
Rosewater said an interesting thing to Billy one time about a book that wasn’t science fiction. He said that everything there was to know about life was in The Brothers Karamazov, by Feodor Dostoevsky. ’But that isn’t enough any more.’ said Rosewater.

Another time Billy heard Rosewater say to a psychiatrist, ’I think you guys are going to have to come up with a lot of wonderful new lies, or people just aren’t going to want to go on living.’

:)

суть в том что действительно не понимаю, отчего стонут программисты фаангов массово присутствующие на доу, которые заипались чистить свои почтовые ящики от спама рекрутеров

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

но у меня слово заё-ый — давно имеет именно тот смысл что сказал.

в более мягкой форме это можно встретить в дзеновской истории
Досин однажды попросил своего учителя, третьего Патриарха дзэн-буддизма Сосана:
— Пожалуйста, укажи мне путь освобождения.
— Кто же и когда тебя поработил?
— Никто.
— Если это так, — сказал учитель, — то зачем же тебе искать освобождения?

но да, да, я знаю
программисты презирают и философию и психологию, не умея при этом «завять шнурков» и страдая велико от смешных причин.

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

А «Записки из подполья» одна из самых любимых книг юности, из Достоевского :)
там субчик, как замечено одним критиком
дорефлексировался до полного разрушения, деградации личности

крайности они такие — всегда херовые :)

Многие в новом поколении повырастали на рефлексивных мультиках и комиксах. И одна из тем (не таких и новых на самом деле) — отстраненность от общества как печать смерти. Человек не приспособлен жить для себя как конь в вакууме. И если другим вокруг херово, а ты этого не замечаешь — то ты, наверное, уже и не живой.

Многие в новом поколении повырастали на рефлексивных мультиках и комиксах

не могли они вырасти на таких мультиках

одно из отличий культур, искусств — американская — нерефелксирующая. это культура действия.
конечно это утрировано, и разные есть и у них произведения.

И если другим вокруг херово, а ты этого не замечаешь — то ты, наверное, уже и не живой.

это вы о типичном доучанине — обитателе аутсорсового гетто?
вот я и спрашиваю — чем это таким их в этом гетто затрахало життя

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

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

американская — нерефелксирующая. это культура действия.

А это были не американские мультики
www.youtube.com/watch?v=PsiiA25IUR0
www.youtube.com/watch?v=vXbCWJNfq_0
www.youtube.com/watch?v=nAcmJBLOVs0
www.youtube.com/watch?v=Gova9UzK18E

и кто ж это «массово» смотрел мультфильмы от Рене Лалу?
я то их знаю, как и несколко знакомых чуть моложе.
но вообще-то там не только видеоряд, там идеи совсем далекие от нынешнего культурного фона, потребностей и «терминов»
примерно как юмор из советского кино — почти совсем не знаком уже и людям до 30ти.

остальные в первый раз вижу, но сомневаюсь что анимэ — это массово любые мульты у детей подростков у нас.
Когда-то мы посмотрели с удовольствием «Тетрадь смерти».
И помню в парке гуляли, и жена увидев на рюкзачке у подростков:
— О, смотри, Рюук!
Группа подростков вся на нас обернулась и долго и пристально смотрела :D
видать нам по возрасту не положено знать имя этого демона :)

если и называть что на эти темы — так это с киберпанка. там есть да, сюжеты часто построенные на замесе рефлексии и рекурсии.

Но то что доу — не место для разговоров о культуре, психологии, в конечном счете — о философии, я за много лет убедился надежно.
Все эти вещи — когда воинственно, когда горделиво высмеиваются с уверенным чувством превосходства :)

наверное эти

Многие в новом поколении повырастали на рефлексивных

где-то в других местах водятся.
я пока не встречал.
разве что в реале, по хобби.
но эта моя тусовка совсем «неотмирная», чтобы считать ее нормой.

и кто ж это «массово» смотрел мультфильмы от Рене Лалу?

Несколько моих знакомых в детстве по телевизору. Одна говорит, что до сих пор ненавидит режиссера — потому что много плакала.

остальные в первый раз вижу

 Ну как бы это — те, из-за которых аниме расползлось по миру, перестав быть национальными мультиками.

если и называть что на эти темы — так это с киберпанка. там есть да, сюжеты часто построенные на замесе рефлексии и рекурсии.

Так эти три и есть биопанк и посткиберпанк.
youtu.be/-wmxo9zrXy0?t=2440
А вот Тетрадь Смерти — какая-то новомодная хрень, обсуждаемая только из-за упадка аниме, вызванного недофинансированием и design by committee.

Так эти три и есть биопанк и посткиберпанк.

убедили.
жду когда на доу появится это новое поколение.

будет тогда с кем поговорить :)

Те, кого я знаю, не считают это эффективным времяпровождением

понятно
значит так и не будет с кем поговорить.

ну они между собой хотя бы общаются?
ну помимо эффективного времяпревождения?

Есть группа в телеграмме по обсуждению прикладной философии на английском. Могу добавить. Оффлайн они встречаются в субботу в 19.30 возле Бессарабки.

Правда, мне зимой ночью лом туда переться. Вот как день станет подлиннее — тогда, может, начну навещать.

Як би ви протестували великий desktop додаток?

Потребовал бы большой десктоп и большой монитор.

судя по чужим докарантинным рабочим местам — это реально работает

Можливо в компанії багато кандидатів і впадло витрачати час на написання фідбеку, або ви прсто не сподобалися, або ще багато різних причин. Отримати адекватний фідбек це велике вкзіння, і часто означає, що ви чимось зацікавили компанію, але на наданному етапі вашого професійного розвитку ви не підходите.
В мене була співбесіда в одну контору, де перед самим процесом мені запропоновула підписати NDA, по якому я не мав права розголошувати назву компанії, її основний напрям діяльності і ще декілька пунктів, серед яких інформація про процес співбесіди.
От подумав, а чи інснує така практика, що перед походом на співбесіду, ти підписуєш, щось типу: Я залишаю право за компанією не надавати мені детальний фідбек у випадку відмови. Обіцяю не плакати на ДОУ, та не слати дікпік HR-співробітнику...
Інколи просто не можливо пояснити своє рішення не брати людини на роботу, так що б не виникло конфлікту. Ну наприклад, знайшли іншу людину по рекомендації від людини з команди — це вже привід сказати, що в команді кумівство. Або просто кандидат якийсь злий попався, та не хочеться з ним працювати.
Береш і просто відповідаєш — ви нам не підійшли, а не вигадуєш причини, потім не чинаєшь на доу чи італіському які в тебе в компанії уроди прцюють, або що за неадекватну відповідь вони надали.

Обіцяю не плакати на ДОУ, та не слати дікпік HR-співробітнику...

Отличный тест!
— Вы прислали неподходящий дикпик, вам надо подтянуть ваш скил дикпиксендинга.
— Но я ничего не посылал!
— Да?! А мы уже так привыкли к этому, что отвечаем шаблонами. Ну тогда порыдайте на ДОУ, что поделать-то.

Я зібрав всю необхідну інформацію: вимоги, специфікації інші документи, щоб сформувати тестовий базис.

Вот этой хрени в реальной жизни никогда нет. И пока ты ее соберешь — прога пойдет нетестированная пользователям. А пока ты по этой хрени напишешь тест кейсы — она пойдет пользователям еще 3 раза.

Поэтому: узнаешь основные use cases у заказчика или программистов, проходишь их руками (можно сразу поставить запись действий в AutoIt 3). Если есть лишнее время — оформляешь как тест планы. Если нет — то пофиг, потом оформишь.

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

А вот документации и «по книжкам» в реальной жизни не бывает.

«Спасибо но по результатам собеседования вы показали уровень overqualified, на данный момент нам нет чего вам предложить. Давайте оставаться на связи.»
:-)

И пока ты ее соберешь — прога пойдет нетестированная пользователям.

Тебе религия не позволяет тестировать на людях?

У нас нет юнит-тестов, и ассерты в продакшне)

У нас нельзя юнит-тестами в прод, ибо это требует достаточно серьёзных системных полномочий, иными словами, надырявить безопасность. А какой-нить разраб тупо сидит за JetBrains, и полетели явки-пароли в Росиюшку.

Ассерты в продакшене и вовсе ад и израиль, ещё не хватало срать логами в общие потоки и бросать хвосты тестам. Каждый ассерт придётся обернуть в обёрточку. Проще переписать сам ассерт, а то и руками действовать и через свой логгер, именно для прода.

Когда это телефония в роутере, то лучше бутнуться — пользователь перезвонит, а если бага редкая — то вообще не поймет, что произошло. А вот если что-то подвиснет — то он может платить провайдеру за звонок, которого нет.

Ну и с тем, насколько сильно все менялось — переписывать юнит-тесты мы бы сдохли.
Думаю, в данном случае enabler — это количество серьезных релизов с новыми фичами. Вот у нас их штук 6 было за все время. То есть, по релизу в год, примерно. За это время QA и РО руками там все находят, что вообще находится. Что не находится — ловит кто-то в бете, или 1-2 юзера обращаются в поддержку.

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

Я лишь утверждаю, что так же, как и в процессах не ITшных, возможно горячее тестирование, точно так же возможны и желательны тестовые процедуры в реальном боевом коде. Особенно если это не клиент-сервер, а сервер-сервер или долгоживущая автономная инфраструктура.

Типичнейшая задача — тайм-трекеры. Чтобы знать, когда процесс ушёл из предсказанных параметров и возможно за допустимые отклонения. Такие же трекеры ставятся и на денежные процессы, если они грамотно спроектированы, в частности это позволяет ловить СЕОшников за яйца за привод ботов и конкурентов на скликивании рекламы. Но это уже не столь типично в наших попуасиях, обычно до Украины подобные задачи не доходят.

Из первой серьезной книжки по С++, которой я готовился к собесам:

Like it or not, what that means in practice is that you’re probably better off leaving terms like „good class design” and „good OO” undefined. In fact I believe precise, pure-technical definitions of those terms can be dangerous and can cost companies money, ultimately perhaps even costing people their jobs. That sounds bizarre, but there’s a really good reason: if these terms are defined in precise, pure-technical terms, well-meaning developers tend to ignore business considerations in their desire to fulfill these pure-technical definitions of „good.”

Any purely technical definition of „good,” such as „good OO” or „good design” or anything else that can be evaluated without regard to schedule, business objectives (so we know where to invest), expected future changes, corporate culture with respect to a willingness to invest in the future, skill levels of the team that will be doing the maintenance, etc., is dangerous. It is dangerous because it deceives programmers into thinking they are making „right” decisions when in reality they might be making decisions that have terrible consequences. Or those decisions might not have terrible business consequences, but that’s the point: when you ignore business considerations while making decisions, the business consequences will be random and somewhat unpredicatable. That’s bad.

It is a simple fact that business issues dominate technical issues, and any definition of „good” that fails to acknowledge that fact is bad.

www.dietmar-kuehl.de/...​big-picture.html#faq-6.17

А еще он в этой книге советовал, если кто-то говорит, что лучше тебя знает, как решать твои задачи — набить тому морду. Но я сейчас не могу найти — может, Гугл забанил за расизм.

Спасибо, утащу себе в копилку, буду знать еще одного единомышленника: Marshall Cline
если линкеду верить — то приличного уровня
www.linkedin.com/in/marshallcline

Greg Lomow: ... Besides working together, Marshall and I co-authored the C++ FAQ book ...

но конечно, до уровня доу он не дорос, в фаанге ж код не педалил, всего то в IBM тусовался, каким-то там Software Designer and Object-Oriented Evangelist

Що шукав тех спеціаліст,

Может ничего и не искал, просто ему к примеру банально твой фейс не понравился или было еще 100500 кандидатов. Хрюше сказал написать какую-то хрень на фидбек. А ты тут ищешь глубинный смысл.

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

якою була б правильна відповідь на це питання?

Була б... Лише за умови, що інша сторона сама собі цю правильну відповіть взагалі уявляла )

Часто буває так, що інтерв’юююча (ОМГ, запишу собі в словничок, не кожного дня зустрінеш слово із трьома літерами в ряд )) сторона питає щось таке, аби ото ляпнуть, а потім коли трапляється кандидат, який або в темі, або не в темі, але не соромиться запитати, яким має бути правильний хід думок, сидять, мичать та оченятами кліпають.

А відмовили... Та вам взагалі має бути пофіг, чому відмовили, інакше ризикуєте втратити віру в людство та вже на початку кар’єри набити особистий ЧС 99-ма відсотками існуючих на ринку компаній.

інтерв’юююча
слово із трьома літерами в ряд

Почему не 2 «ю»? 🤔

Обычно, мануальщики тестят по тест-кейсам. Если таковых нет — их сперва пишут.

Ещё лучше, если тесты автоматические — написание таких, часто, тоже компетенция совремненного западного мануальщика, претендующего на что-то большее чем китаёзные 5-10 баксов/день за мартышку-кнопкодава.

Да, тут не помешал бы вопрос на вопрос:

«Як би ви протестували великий desktop додаток?».

А как у них в компании принято такое тестировать?
Может силами студентов 3 курса, которые ищут что-нибудь и присылают подробный отчёт в файле, который конечно же не откроется или откроется с дикими ошибками форматирования.

Если будет ответ чуть более подробный , чем простое «МУ», то по деталям уже можно начинать общаться.

Ви плутаєте правильну відповідь на запитання та досвід.

Ви могли відповісти на 100% теоретичних запитань(яким і було озвучене вами) і не мати або мати мінімальний релевантний досвід, а для компанії це може бути важливо.

Вкажіть ваш досвід для повноти картини.

Я майже 3 роки тестував в матлаб системи керування для різних промислових і не дуже залізяк. А зараз шукаю більш широку нішу.

Тестувати наш сайт велика честь!

Після такого досвіду готуйся, що в АйТі піпл більше поводить себе як дітлахи.

В мене був схожий досвід, теж пов’язаний з промисловістю, тільки з CAD-системами, після нього пішов працювати в вебстудію і довго звикав до задач, які здавалися несуттєвими, юнацько-максималістськими, перебільшеними. В деяких випадках хотілося розсміятися від «бидлoпpoблeм», типу трішечки не там приліпленої кнопки. До цього доведеться звикати.
Серйозно, мені здавалося, що наді мною жартують, коли говорять, що «щось не на тому місці» або «лінія на макбуці зникла». От якщо б я на попередній роботі видалив з креслення трубу — от це була б трагедія, тому що я до цього працював з хімічною промисловістю. А тут якась лінія зникла на вузькому спектрі девайсів, яке лихо.

Можливо, що й на співбесідах твій підхід до вирішення проблем не дуже співпадає з тим, як його бачать, так би мовити, діти з IT.

Та я помітив вже. Коли дивився на сусідні команди. На нашому проєкті всі такі серйозні інженери з досвідом роботи на промислових підприємствах та у компаниях гігантах на кшталт Боінг та Самсунг.

То вчи С та ядро Лінуха. Підеш до бородатих дядьок осцилографом паять.

Та мені і тестування подобається. Але я не зовсім впевнений, що в Україні потрібні QA зі знанням ядра лінукс. Від цього у мене журба бере.

Есть такой принцип — «тестирование зависит от контекста».
Для какого-то заказчика пропавшая линия на макбуке — потенциальная потеря прибыли.

Вероятный ответ: вы сразу ответили на вопрос, ничего не уточнили. Или цвет ваших глаз не понравился. Или что-то ещë, о чем вам никогда не скажут («а говорил, что не будешь зубом цыкать»).

Выберите то, что вам кажется правильным, шансы всегда 50/50. И забейте на фидбэки с собеседований, они не более релевантны, чем меморандумы МИД РФ.

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

Одна из контор, с которыми я хотел поговорить, выкатила мне тестовое задание «вот вам наши сайты, найдите там баги». Я заорал, бо какие к епп жжж агрх вам тут баги искать, если нет требований! А им было норм, бо они до сих пор видели только джунов, которые вопросов не задают, а сразу начинают тыкать пальцами по ихним чертовым сайтам... ну и сами они только этой ерундой и промышляют, и хотели, чтобы кто-то пришел и все там аффтаматизиравалЪ, и соппсно, мне там делать было нечего. А был бы джуном — подошел бы чуть менее, чем полностью, освоил бы selenium на c#, ваял бы никчемные тесты и получал бы солидную джуниорскую зарплату.

Ну и всем бобра, да.

Это вопрос с подвохом, только часто этот подвох ток интервьювер и знает.
Меня так как-то спрашивали «как будешь педалить таску, где нало дергать внешний апи» После где-то 4-5 уточняющих вопросов про параметры метода и сам апи, которыие нифига не проясняли ответил что дергал бы страдратно и все. Собес не прошел но хз по какой причине, мы там больше двух часов сидели.
У нас очень много дурачков на собесах которые сами не знают чего хотят и что им надо.

«как будешь педалить таску, где нало дергать внешний апи»

Закажу собі по цьому апі втихаря золотий унітаз.

— а на чем написан?
— на электроне
— идите нахрен

А в чому проблема ПРОТЕСТУВАТИ? Тобі ж не кажуть виправити все лайно. А от тестувати його можна до безкінечності.

Уже ниже написали. Абстрактный вопрос. Начинаем задавать уточняющие вопросы. Типа «сколько времени у меня есть» и т. д.
Возможно, интервьюер хотел услышать про smoke testing.
Возможно, рекрутер не увидел, что у вас нет опыта с десктопом, а это было обязательное требование.
И ещё важен контекст, после чего был задан этот вопрос.

— Когда ты пришёл вчера, я не спрашивал, виновна она или невиновна. Я не спрашивал, пьёт она или колется. Я спросил только, есть ли у вас пять тысяч долларов. Ты сказал «да». Но у тебя нет пяти тысяч долларов, значит, ты грязный лгун, а я не трачу своё время на грязных лгунов.
©Чикаго

Наверное надо было спросить в ответ: Какой именно?

Странный абстрактный вопрос, на который хотели услышать подробный ответ.

Що шукав тех спеціаліст, якою була б правильна відповідь на це питання?

Почему именно большое приложение, и почему мы не тестируем маленькое?
Что там вообще проверять нужно?

Подписаться на комментарии