Найди себя в React

Хотя в IT и разработана шкала оценки программистов (Trainee, Junior, Middle, Senior, Tech Lead), с которой более или менее все согласны, единого определения каждого уровня среди работодателей пока нет. В итоге каждая компания устанавливает собственные требования к навыкам на каждом уровне.

Этот тест поможет вам прикинуть, какой бы у вас был грейд, если бы вы собеседовались в МКБ.

@
09.02.2023 12:01 UTC
Первоисточник

Комментарии

@Alexandroppolus
09.02.2023 08:02 UTC
+2

Ответ на 4 вопрос не совсем верный, если map прилетит из ифрейма. В этом случае более надежен вариант Object.prototype.toString.call(value) === "[object Map]"

@maeris
16.02.2023 06:34 UTC
0
const value = {[Symbol.toStringTag]: "Map"};
Object.prototype.toString.call(value) === "[object Map]" // true
@h4x0rlol
10.02.2023 07:36 UTC
+4

Вы знаете куда больше других, значит, пора переходить на новую ступень. Кажется, в МКБ ваш грейд был бы Senior.

А на деле даже до собеса на джуна не дойти..

@shsv382
17.02.2023 13:27 UTC
+1

вот примерно то же самое: Вы уже неплохо разбираетесь в React. Возможно, в МКБ ваш грейд был бы Middle.

а на деле даже резюме не просматривают )))

22.02.2023 09:57 UTC
0

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

@AntonyDev
10.02.2023 07:37 UTC
+3

Доброго времени суток! Я не согласен с ответом на 12 вопрос, там по моим ожиданиям будет ошибка на уровне несоответствия типов в инкременте, при попытке прибавить единицу к a, которое может быть null.
P.S. Надеюсь код нацарапал правильно, т.к. проходил тест с телефона, а код писал по памяти))

@
10.02.2023 10:35 UTC
0
НЛО прилетело и опубликовало эту надпись здесь
10.02.2023 10:47 UTC
+2

Если писать на JS, то да, но здесь TS и он не даст это запустить без отключения проверки типов

12.02.2023 20:18 UTC
+1

Смотря как настроить: может вполне дать собрать, особенно если strict: false.

@bogdanq
10.02.2023 11:02 UTC
0

ну достаточно обернуть ее в Number и все

@miraage
13.02.2023 03:16 UTC
+1

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

16.02.2023 06:28 UTC
0

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

16.02.2023 07:43 UTC
+1

useEffect не микротаск, он отрабатывает после отрисовки на экране (и, например, тот же requestAnimationFrame пролезает перед ним). Хотя насчет события мыши сказать затрудняюсь. Можно ли кликнуть по ещё невидимой кнопке с вызовом обработчика клика?..

@yakimchuk-ry
19.02.2023 09:03 UTC
0

<Удалено>

@maeris
10.02.2023 15:50 UTC
+8

Как-то я посмотрел на эти задачи, и... если у вас в проде null + 1 и мутация объектов в useEffect это норма, я бы не хотел у вас работать.

(Конкретно на этот вопрос правильный ответ: на initState забыт readonly, FC почему-то берётся из неймспейса руками, useCallback потерян, export default запрещён линтом, код не проходит ревью.)

@AVCarp
15.02.2023 11:00 UTC
-2

Задача программиста (а тем более Team Lead) - не только писать красивый код, но и уметь разбираться в чужом. А там зачастую и не такое бывает. Именно поэтому задачи вполне корректные. И уверен, что очень даже реальные.

15.02.2023 15:44 UTC
+1

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

Но если уж хочется "разобраться", то ответы на вопросы из теста выше можно получить запустив код на исполнение. И тут есть только 2 варианта: код либо соответствует ТЗ, либо нет.

16.02.2023 02:41 UTC
+5

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

@dark_ruby
14.02.2023 18:33 UTC
+2

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

@getmancar
15.02.2023 11:03 UTC
0

Наотвечал на мидла исключительно интуитивным способом, даже немного страшно стало, может лучше бы на рулетке так удачу потратил :)

Вижу any в typescript - отпадают варианты.

В вопросе про вывод в консоли js, вижу промис - сразу выбираю вариант, где он первый.

В вопросе про вывод в консоли jsx, вижу useEffect - сразу выбираю вариант, где он последний.

@sovaz1997
16.02.2023 05:58 UTC
+2

Этот тест поможет вам прикинуть, какой бы у вас был грейд, если бы вы собеседовались в МКБ.

Вы бы гарантированно получили несоответствие вида реальный сеньор = джун в МКБ; реальный джун = сеньор в МКБ. Удачи с таким подходом)

@kirill-pavlovskii15
16.02.2023 08:21 UTC
0

хороший тест, спасибо

@SashaZel
16.02.2023 12:33 UTC
0

Решил тест на «12 Middle». Отправил резюме.

@Gleb_Fox
16.02.2023 12:39 UTC
0

chatGPT набрал 10 из 13 и стал Middle.

@borisovtema
16.02.2023 12:42 UTC
0

Прошел на тех лида, а я думал я джун+

@andres_kovalev
18.02.2023 20:17 UTC
0

В последнем вопросе ответ неправильный - чтобы что-то вывелось, надо App срендерить, а там он просто экспортируется)

@Mox
20.02.2023 14:04 UTC
+2

Тест на знание тонкостей, но неужели кому-то в голову придет закладываться на последовательность срабатывания useEffect при рендере? Модифицировать initState так как в тесте?

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

@Hanma_Daiki
22.02.2023 10:07 UTC
0

Middle, в реальности джун. Тест ничего не показывает.