Сіз Docker, CI/CD, GitHub Actions, GitLab туралы айттыңыз — нақты не істегеніңізді, қандай пайплайндар болғанын, контейнерлерде не болғанын ашып берсеңіз.
Frontend
Көрініс аймағында көрінетін карточкалардағы суреттерді қалай оңтайландыруға болады? Мазмұнды тез ауыстырғанда (мысалы, YouTube Shorts) race condition мәселесін қалай шешуге болады?
SSR арқылы серверде жүктелген деректер болған кезде клиентте артық деректер сұрауын қалай түзетуге болады?
Көпөлшемді формалармен жұмыс істеу үшін не қолданылды — валидация үшін, қандай мәселелер кездесті, қалай тестілеу жүргізілді?
Бетте ойнатқыш бар. Бір қойындыда тоқтату батырмасын басқанда, басқа қойындыда ойнату тоқтатылуы үшін, қойындылар арасында қалай байланыс орнатар едіңіз?
Қажетті өрістер үшін сервер жағында тексеруді жүзеге асырыңыз.
Пайдаланушыларды жүктеуді жылдамдату үшін деректерді серверде қалай кэштеуге болады?
Чатта файл алмасу қалай болды — тек POST сұрауы арқылы ма, әлде үлкен файлдар болды ма?
Тізімді виртуализация қалай жұмыс істейді? Бұл техникалық түрде JavaScript арқылы қалай жүзеге асырылады?
Текстерді қолданбай, CSS (псевдоэлементтер рұқсат етілген) арқылы бір div және екі шекарамен қызыл шеңбер түрінде STOP белгісін жасаңыз.
#React тіркелу формасы 1. StateProvider қалай жұмыс істейтінін түсіндіріп беріңіз, ойыңызды интервьюермен бөлісіңіз. 2. /src/api/mock-ты қарап шығыңыз, ол қалай жұмыс істейтінін түсіндіріңіз. 3. SubmitButton түймесінің түсін тексеріп, түзетіңіз. 4. Signup компонентінде клиенттік форма валидациясын жүзеге асырыңыз. (\*) 9-шы тапсырманы ескеріңіз. Ережелер: - Пайдаланушы аты, Электронды пошта, Құпия сөз, Қайталау құпия сөзі өрістері кемінде 6 таңбадан тұруы керек; - Құпия сөз Қайталау құпия сөзімен сәйкес болуы керек; - Валидация "SignUp" батырмасын басқан кезде орындалуы керек; - Жарамсыз мәндері бар өрістер белгіленуі керек (error және helperText props); 6. API жауапта қате болуы мүмкін, оны тиісті өріске жақын пайдаланушыға көрсету керек. 7. Пайдаланушы аты компоненті сәтті жіберілгеннен кейін жаңа пайдаланушы атын көрсететініне көз жеткізіңіз. 8. Жаңа SignupSuccess компонентін жүзеге асырыңыз. Ол тіркелу формасының орнына көрсетілуі керек. 9. Тиісті өрістер үшін серверлік валидацияны жүзеге асырыңыз. --- mock.ts-тен код: ```typescript const fakeResponse = (userName) => ({ code: 200, user: { id: 42, userName, }, }); let a = 0; const api = { '/signup': function (userName: string, email: string, password: string) { a++; return new Promise((resolve, reject) => { setTimeout(() => { if (a % 2 === 0) { return resolve(fakeResponse(userName)); } else { return reject( new Error( `Пайдаланушы аты "${userName}" алынып тасталды. Басқа біреуін көріңіз.` ) ); } }, 500); }); }, }; export default api; ```
Көптүрлі массив пен басқа типті қайтаратын түрді қабылдайтын трансформер функциясы бар customMap функциясының TypeScript типін жүзеге асырыңыз. Трансформер функциясы үш аргумент қабылдауы керек (Array.map-те қолданылатын callback сияқты).
Қандай фреймворктер немесе құралдармен айналысасыз? AI құралдарын жұмысыңызда қолданасыз ба?
#React тіркелу формасы 1. StateProvider қалай жұмыс істейтінін түсіндіріңіз, ойыңызды сұхбаттасушымен бөлісіңіз. 2. /src/api/mock-қа қараңыз, қалай жұмыс істейтінін түсіндіріңіз. 3. SubmitButton түсін тексеріп, түзетіңіз 4. Signup компонентінде клиенттік форма валидациясын жүзеге асырыңыз. (\* ) 9-шы тапсырманы ескеріңіз. Ережелер: - Пайдаланушы аты, Электронды пошта, Құпия сөз, Қайталау құпия сөзі кемінде 6 таңбадан тұруы керек; - Құпия сөз Қайталау құпия сөзімен сәйкес болуы керек; - Валидация "Тіркелу" батырмасын басқан кезде орындалуы керек; - Қате мәні бар өрістер қателік және көмектесуші мәтін қасиеттерімен белгіленуі керек; 6. API жауапта қате болуы мүмкін, оны тиісті өріске жақын көрсетіңіз. 7. Қолданушы аты компоненті сәтті жіберілгеннен кейін жаңа пайдаланушы атын көрсететініне көз жеткізіңіз. 8. Жаңа SignupSuccess компонентін жүзеге асырыңыз. Ол тіркелу формасының орнына көрсетілуі керек. 9. Қажетті өрістер үшін серверлік валидацияны жүзеге асырыңыз.
Релиздер қалай жеткізілді, қалай тестіленді және олар қаншалықты жиі шығарылды?
Бізде монорепода өте үлкен фронт бар, онда бірнеше түрлі команда бір уақытта жұмыс істейді. Біз микрофронттарға көшуге болмайды. Әр түрлі командалардың бір-бірінің жұмысын әсер ету қаупін қалай азайтуға болады?
Әдетте не істейсің, егер даму жүріп жатса және сен уақыттан сәл қалып қойсаң? Шығарылым күні бар, бірақ сен тапсырманы уақытында аяқтай алмайтыныңды түсінесің.
promiseWithResolver (делдал уәде) функциясын жүзеге асырыңыз, ол resolve және promise өрістерін қамтитын объектіні қайтарады.
Бағдарламалау туралы жаңа нәрсе үйрену үшін жалпы қалай білесіз және соңғы уақытта есіңізде қалған не?
Бұл код бөлігін қараңыз — ол не істейтінін түсініңіз және оның қолданылуының қарапайым мысалын жазыңыз. Сонымен қатар, lodash-та ұқсас көмектесуші бар.