Sobes.tech

Frontend

Dlaczego zdecydowałeś się teraz zmienić pracę?

Middle
Лига Цифровой ЭкономикиЛига Цифровой Экономики
87

Wspomniałeś o autoryzacji — jakiego podejścia użyłeś? Jakie masz doświadczenie z autoryzacją?

Middle+
Chaser
87

Opowiedz o najciekawszym zadaniu lub najciekawszym błędzie w jednym z twoich ostatnich dwóch miejsc pracy.

Middle+
Morizo
87

A oto ostatni projekt – ile było tam programistów łącznie, jaki to był zespół, z kim trzeba było się komunikować?

Middle
Navio
87

Z jakimi frameworkami lub narzędziami pracujesz? Czy używasz narzędzi AI w swojej pracy?

Middle
Mayflower
87

Oczekiwania płacowe — 270 tysięcy rubli?

Middle
АэрофлотАэрофлот
87

Gdy projekt się rozrasta i można wyróżnić kilka jednostek biznesowych (panel osobisty, profil, promocje), czy można je podzielić na oddzielne repozytoria i podłączyć jako mikrofronty?

Senior
АЛМИ Партнер
87

Jaka jest różnica między REST API a WebSocket?

Middle+
АэрофлотАэрофлот
87

Zadanie praktyczne: napisz funkcję, która przyjmuje liczbę i zwraca Promise z wynikiem sprawdzenia parzystości/nieparzystości, a w przypadku błędu (nie liczba) zwraca -1.

Middle
BI.ZONE
87

Proszę wyjaśnić: czy przeprowadzka była z JS/JSVue na React i TypeScript, a teraz planowana jest migracja na mikrofronty?

Middle
WildberriesWildberries
87

Zaimplementuj funkcję promisify: przyjmuje funkcję z callbackiem error-first (loadScript) i zwraca nową funkcję, która przyjmuje dowolne argumenty, dodaje callback error-first i opakowuje wywołanie w Promise.

Middle+
Т-БанкТ-Банк
87

Co jest lepsze do przechowywania danych po kluczu: Map czy zwykły obiekt? Jakie są zalety Map?

Middle+
Яндекс
87

Opowiedz o zmiennych var, let, const: zakresy, hoisting, tymczasowa strefa martwa.

Middle
РунитиРунити
87

Jak naprawić nadmierne ponowne renderowania, aby po kliknięciu 'Rerender' renderował się tylko App, a podczas wpisywania tekstu tylko Parent (bez Child)?

Middle+
Т-БанкТ-Банк
87

let a = 5; setTimeout(function timeout() { //macro console.log(a); a = 10; }, 0); let p = Promise.resolve().then(data => { console.log(a); a = 25; resolve(); }).then() console.log(a); // 5 25 25

Middle
WildberriesWildberries
87

Co można konfigurować w ESLint i jakie wtyczki lub konfiguracje są używane?

Middle
ДИТ Москвы
87

Jasne wyjaśnienie, Dmytro—dobre użycie delegacji i kontroli "najbliższych"; Twój przepływ jest łatwy do śledzenia. Gdy mówisz, że obsługujesz klawiaturę "w ten sam sposób", czy możesz przejść mnie krok po kroku przez dokładnie które klawisze obsługujesz i jak zapobiegasz temu, by fokus trafiał na wyłączone linki?

Senior
micro1
87

Wspomniałeś o rozwoju biblioteki wielokrotnego użytku komponentów UI-kit opartej na Angular Material. Czy istnieje zasadnicza różnica między komponentami bibliotecznymi a zwykłymi wielofunkcyjnymi komponentami aplikacji? Czego można nie uwzględniać w zwykłych komponentach, ale nie można w bibliotecznych?

Middle
ГосуслугиГосуслуги
87

Nie wiesz, z jakiej specjalizacji jest [imię] — frontend, backend czy DevOps — i jaka jest jego rola w firmie?

Middle
4dev
87

// Należy zaimplementować metodę groupBy, rozszerzającą standardowe metody tablic. // Metoda powinna zwracać zgrupowaną wersję tablicy — obiekt, // w którym kluczami są wyniki wywołania funkcji fn(arr[i]) dla każdego elementu, // a wartościami — tablice zawierające wszystkie elementy oryginalnej tablicy z tym kluczem. // kod tutaj // Przykład 1 const array1 = [ { id: 1 }, { id: 1 }, { id: 2 } ]; const fn = (item) => item.id; console.log(array1.groupBy(fn)); // { // 1: [{ id: 1 }, { id: 1 }], // 2: [{ id: 2 }] // } // Przykład 2 const array2 = [1, 2, 3]; console.log(array2.groupBy(String)); // { // "1": [1], // "2": [2], // "3": [3] // } // Przykład 3 const array3 = [1.3, 0.5, 1.4]; console.log(array3.groupBy(Math.round)); // { // 1: [0.5, 1.4], // 3: [1.3] // }

Middle
Яндекс Сплит
87
/295