Чтобы определить уровень кандидата, очевидно, для чего ж еще.
У нас есть три секции —
1. вебфронтовая, где несколько практических задач на знание фреймворка и экосистемы (теоретических вопросов почти не задаем). Проблема этой секции, что она не способна оценить кандидата выше мидлового уровня, поэтому проводится архитектурная.
2. алгоритмическая — она проводится для всех SDE, и в первую очередь нужна для калибровки разных направлений между собой. Ну, хотя бы не четыре часа, как в Яндексе, а всего один))
3. системный дизайн — для фронтов своя вариация, там больший упор на проектирование фронтовых систем, конечно. Например, спроектировать витрину банка, или разработку библиотеки UI-кита, или какое-нибудь небольшое приложение — задачу подбираем исходя из интересов и опыта кандидата