ebanoe.dev
0
legacy_Жук·1315 д тому

Когда Сеньор Реакт девелоперу без опыта нужно сделать не просто тестовое, а полноценное MVP

Пишет Анонимус: «Доброго дня! Це єбанутись. Тут все є. Сеньйор без досвіду, тестове (яке робиться за «6 год») яке по об’ємах як MVP (в реплаях була відповідь, що в них воно ще до речі не готове, співпадіння?)

https://twitter.com/lxvslnk/status/1524700419896877057?s=21

Приглашение на интервью через тестовое
Кто сделает тестовое со всеми деталями — тому и интервью. Интервью — обсуждение тестового и его архитектуры. Если сами сделали- то проблем не будет. Зарплата — очень хорошая.

Ньюансы
— Кандидатов-резидентов РФ и Беларуси компания не рассматривает.
— Должен быть свободный разговорный английский.

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

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

Тестовое. Писать на реакте
Можно использовать абсолютно любые библиотеки. Но нужно объяснить почему их использовали и почему именно так использовали. Версии библиотек или последняя или последняя — 1.

За юнит тесты/е2е бонус поинты.

Задача реализовать редактор flow diagram.
Есть три глобальных элемента
— сайдбар с которого можно перетаскивать элементы
— сама диаграмма, где можно перетаскивать и соединять элементы
— и панель деталей элемента

Тестовое на сеньйора Реакт девелопера

В сайдбаре есть поиск, где пользователь может вводить название элемента и фильтровать их.

Также есть группировки элементов.
Создать по умолчанию три группы
— Вход
— Стандарт
— Выход

В каждой группе по два элемента с разными названиями.

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

— Выходной порт может соединяться только с входным.

Пользователь должен иметь возможность на диаграмме:
— перетаскивать элемент
— соединять элементы между собой
— обновлять текст элемента
— добавлять/удалять новые порты — давать логические названия портам (название портов можно не отображать на диаграмме)
— также юзер должен иметь возможность поменять цвет элемента
Четких требований в UI по предыдущему заданию не, поэтому делать надо как вам кажется удобным для пользователя.

Пример реализации. Не обязательно следовать ему.

Тестовое на сеньйора Реакт девелопера

Помимо этого пользователь должен иметь возможность менять размер элемента и делать его — группой.

Пользователь должен уметь добавить в группу любой элемент.Или исключить из нее. Также изменить положение элемента внутри группы.

Группы могут быть только одного уровня вложенности.

Перетаскивая группу — перетаскиваются и все дочерние элементы включенные в эту группу. Пример работы группы — https://t.co/LxeeXYTlnv

Последнее — нужно иметь возможность отобразить пользователю 1 JSON с данными диаграммы и бонусом дать возможность загрузить свой JSON и отобразить диаграмму.

В остальном ваша свобода выбора и имплементации. Но все решения надо обосновать. Приложение должно работать по функциональности описанной выше.

Почему я пишу здесь тестовое задание?
За последние две недели я провел кучу интервью и пересмотрел зачатки этого задания от сениоров с кучей лет опыта

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

Если вы делаете тестовое — это ваш выбор потратить ваше время. Я не могу гарантировать, что например никто не сделает раньше вас».

Я не делаю обычно тестовые больше 4часов, это сделал случайно, потому что понравилось покопаться. Поэтому выбор ваш.

Мнение ебаной редакции

Ходить на собесы и тем более делать тестовые по «доверительным» твиттор-тредам или фейсбук-объявлениям «в доску своих» — себя не уважать. На такое дерьмо годятся либо в край закомплексованные задротины, которым проще в Твитторе сконтачить с погонщиком-потогонщиком, либо совсем уж потерянным июням, которым никто не рассказал про нормальные варианты поиска работы — например тематические сайты! Но здесь речь идет даже не о тестовом, нет. Тут прям реально работающая программка, которую Алексей якобы не собирается употреблять в реальном проекте:

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

Да-да, охотно верим!

Однако нужно отдать должно Алексею — в целом он говорит правду: что тестовое нифига не тестовое, и что оно занимает более 4-6 часов, если не несколько дней. Поэтому можно лишь поаплодировать тому закомплексованному и не знающему себе цены головатому хлопцу, который клюнет на его предложение — бачили ж очі що купували!

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

Після "гаспада" так і хочеться відповісти па рускі і ліваруционно: "гаспада всє в паріже"

— Hycel J (@BoraZug) May 12, 2022

Видно, поциента неплохо так дрюкнуло.

Тобто звернення "гаспада" таки має національний підтекст

— Hycel J (@BoraZug) May 12, 2022

На секундочку — Алексей в самом начале сказал, что кандидаты из РФ и Беларуси не рассматриваются, но нет же — вылез этот суржикомовец и стал «острить», коверкая красивый украинский язык. Хотя, вполне вероятно, что Алексей и сам владеет украинским на голову выше этого деланного «патриота».

Ах да, и напоследок — показывайте это тестовое задание каждому, кто грозится вот-вот записаться на какие-нить вшивые говнокурсы типа ГоАйти — пусть знают какое дерьмище им придется жрать годами, прежде чем они выйдут на отметку 500+ бачей в месяц (если очень повезет).

Прислал Анонимус
По мотивам Twitter

З архіву ebanoe · Опубліковано December 20, 2022

Коментарі (14)

Когда Сеньор Реакт девелоперу без опыта нужно сделать не просто тестовое, а полноценное MVP · ebanoe.dev