Frontend
Може ли да се добавят query параметри към POST заявка?
Какви подходи за писане на CSS знаете? Имали ли сте опит с Tailwind?
Защо при два извиквания sleep(2000) и sleep(1000) първо се показва лог за 1 секунда, а след това за 2? Обяснете работата на Event Loop, микро- и макро-задачите.
Какви са основните разлики между Vue 2 и Vue 3?
Защо браузърът прави preflight заявка с метода OPTIONS?
Имали ли сте опит да стартирате проект на React от нулата или да мигрирате към React?
Потребител се оплаква, че бутонът понякога не реагира, но локално проблемът не се възпроизвежда. Какви са вашите стъпки за отстраняване на грешки? Какви могат да бъдат причините?
Каква е разликата между авторизация и автентикация?
Каква е разликата между null и undefined?
Как подходите към тестването на сложни UI компоненти, които генерират дълбока вложена DOM структура без удобни идентификатори? Как насочвате към необходимите елементи на интерфейса в E2E тестовете?
Колко време ще те интересува фронтендът? Няма ли да настъпи момент, в който ще искаш нещо друго? Имаме ясно разделение — ако се присъединиш като фронтенд разработчик, ще има само фронтенд задачи.
Ако имаше пълна свобода, каква идеална форма би създал? Какви подходи, технологии и методи би използвал (валидация, обработка на грешки, UX, DX)?
/** * Функцията 'asyncAuth(callback)' приема callback, в който * може да бъде предадена грешка (като първи аргумент) и данни * от бекенда (като втори аргумент). * asyncAuth((error, data) => {}); * * Трябва да реализирате функцията 'auth()', * която извиква 'asyncAuth()', но връща Promise. * * @returns {Promise} */ function auth() { return new Promise((resolve, reject) => { asyncAuth((error, data) => { if (error) { reject(error) } else { resolve(data) } }); }) } /** * Функцията 'tryAuth()' използва 'auth()' и, в случай на грешка, * прави N допълнителни опита. * Ако всички се провалят, връща последната грешка. * * @returns {Promise} */ function tryAuth(n) { return new Promise((resolve, reject) => { function attempt(attemptsLeft) { auth().then(resolve).catch((error) => { if (attemptsLeft <= 0) { reject(error); } else { attempt(attemptsLeft - 1); } }); } attempt(n); }); }
Разкажи повече за таблата за управление: откъде идваха метриките, кои метрики събирахте.
[име] попита: Можеш ли да дадеш конкретен пример за спорни моменти с дизайнери или бизнес клиенти? Кой имаше последната дума?
Какво не ви харесва в настоящата ви работа?
Какви статични методи има класът Promise?
Какво може да се направи с изображенията за оптимизиране на производителността на страницата?
Как ще съхраняваш колбеките вътре в EventEmitter?
Разкажи ми за своя трудов опит и важни моменти