Кидалово mytonwallet.io Почему не стоит делать тестовые задания

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

6 марта мне написала рекрутер

3234ff459a0e4b372c4ca4c3712dbe51.png

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

d4f2cdde5c83379027b3bb506b8a7465.png

Вакансия здесь https://telegra.ph/React-native-developer-02–15–2

Задание находится здесь https://github.com/mytonwalletorg/test-tasks, но на всякий случай сделал скрины

43e50c1d5652365c2d0a604b51839293.png50d514cba19e3c7f4dd21cdcd64132b1.png

Изначально мне показалось, что за неделю я набросаю работающий прототип и этого будет достаточно, чтобы они оценили мои навыки и приняли решение, и я приступил к выполнению. Однако одно из требований — переиспользовать кусок js кода и запустить его отдельным процессом оказалось сложнее, чем я думал. В react native, на который и была эта вакансия, нет воркеров, как в браузере или ноде. Об этом я узнал когда закончил с UI и принялся портировать логику, которую необходимо было переиспользовать. В итоге я потратил почти еще столько же времени перебирая сторонние решения. Пробовал пакеты добавляющие воркеры, которые заброшены уже несколько лет и работют только с какой то мохнатой версией RN, пробовал библиотеку liquidcore, которую даже запустил под андроид, но в итоге она тоже оказалась заброшенной и с кучей проблем, смотрел в сторону в J2V8 для андроид, но насколько я понял, она выполняет только чистый JS, а все запросы к апи окружения нужно реимплементировать самому (вообще за рамками тестового задания), потом наткнулся на nodejs-mobile, который хоть и не идеален, но хотя бы не заброшен и запустился на андроиде.

17aea76d6168f80c10c956467f02aa4e.png

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

Отправляю им результат.

e24e672cf1241701b655e05a66738d00.png

На что получаю такой ответ

d3c0437d0c7a385534f102158bf21d27.png

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

dca74e04fd6907e788ee2ac53885aa59.png

В итоге потратив еще 3 дня я отправляю им версию с анимированным интерфейсом

17e2513c0fe172fb5d80575a65f2cf29.png

Спустя несколько дней договариваемся о созвоне.

d746e90a5c72466dfcb12c5f1603b8cf.png

И за час до назначенного созвона я получаю вот такое

a65d16c0a9914da6c27264324a71c0cb.png5d1bb2efb975873304d1e88a801cb0ea.png

Часть претензий возможно и объективна. Я действительно срезал какие то углы из-за и без того большого объема работ для тестового задания (не выделил жирным какие то слова например). Но некоторые пункты — это опциональные фичи, согласно заданию, и я их не делал. Цель тестового — оценить умение писать код, а не сделать готовый к продашену продукт. Можно месяцами полировать детали, это явно за скопом тестового задания. А самое главное, что мы уже договорились о созвоне, и это просто скотское отношение, вот так отменять его в последний момент под надуманными предлогами. В итоге желания у меня с ними сотрудничать уже не было, я думаю, в процессе работы отношение там такое же, и я попросил обещаной компенсации.

c576bb0d8b610a5a612a43e536436c9c.png

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

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

Ссылка на код https://github.com/Tohntobshi/tonWalletRN

P.S. Прошу прощения за возможные ошибки, писал на эмоциях, еле сдерживаюсь от матерных слов в сторону данного работодателя.

© Habrahabr.ru