Frontend
W komponencie OnPush tablica users jest modyfikowana przez users.push(newUser) po kliknięciu. Czy lista zostanie zaktualizowana w szablonie i jak zagwarantować jej aktualizację?
W CV napisano, że programowałeś na Next.js — czy to prawda? To był App Router czy Pages Router?
Czy można ufać typom TypeScript w czasie wykonywania? Jak zapewnić walidację danych z backendu?
Jak działa this w zwykłych funkcjach i funkcjach strzałkowych? Jaka jest różnica?
Wakans nie zamknięto kilka miesięcy temu — dlaczego została ponownie otwarta? Programista nie przeszedł okresu próbnego?
Opowiedz o swoim doświadczeniu zawodowym i obecnych zadaniach na platformie bukmacherskiej
Jak się czujesz w pracy w biurze? Czy masz doświadczenie w pracy w biurze?
Z jakimi menedżerami stanu musiał pracować i co Panu się podoba, jakie widzi plusy i minusy?
Opowiedz o poprzedniej firmie — skład zespołu, procesy, projekty.
Czy wywołanie funkcji getUsername z obiektem typu IUser (własny interfejs konsumenta) jest poprawne w TypeScript, jeśli struktura pól jest zgodna z TUser z biblioteki? Wyjaśnij zasadę typowania strukturalnego.
Gdy użytkownik wpisuje google.com w przeglądarce, jakie jest pierwsze żądanie HTTP wysyłane do serwera i jaką metodą?
Opowiedz, jak korzystasz z narzędzi AI w pracy: jaki masz setup, jakie modele, jaki jest flow etapami?
Ist drzewo z interfejsem INode (value: number, left?: INode, right?: INode). Napisz funkcję, która przechodzi przez drzewo i zwraca sumę wszystkich wartości.
Czy chciałbyś poświęcać więcej czasu na zadania przywódcze, czy po prostu pracować komfortowo i otrzymywać interesujące zadania?
/** * Zadanie 1: Generyki i Bezpieczeństwo Typu Klucza * Utwórz funkcję `getProperty`, która przyjmuje obiekt i klucz. * Użyj generyków, aby zapewnić bezpieczeństwo typu funkcji i istnienie klucza w obiekcie. */ function getProperty<T extends Record<string, unknown>, K extends keyof T>(obj: T, key: K): T[K] { return obj[key]; } getProperty('str', 'toString') /** * Zadanie 2: Dla wielu deklaracji interfejsu Todo poniżej, wyjaśnij, co się dzieje, gdy są one obecne w tym samym zakresie. * Omów, jak TypeScript je traktuje i wypełnij obiekt `myTodo`, aby spełniał wymagania scalonego interfejsu Todo. */ interface Todo { title: string; dueDate: Date; } interface Todo { description: string; completed: boolean; }
Jaką architekturę wybrać do napisania biblioteki UI?
Jak przenieśłbyś projekt Angular z wersji 14 na 21 i co zrobić w przypadku niekompatybilności z biblioteką zewnętrzną?
Jak zoptymalizować wyszukiwanie w komponencie, aby nie wysyłać zapytania do serwera przy każdym naciśnięciu klawisza?
Zadanie 1 Mamy tablicę z 10 000 obiektami (np. "Pracownicy" lub "Produkty"). Musimy zaimplementować komponent do wyboru elementu, który nie "zawiesi" przeglądarki i będzie wygodny dla użytkownika. Co należy zaimplementować (Wymagania): 1. Typowanie danych: Utwórz interfejs Item z polami id: string, label: string i category: string. 2. Wyszukiwanie (Input): Podczas wpisywania tekstu lista powinna być filtrowana. 3. Praca z DOM i zdarzeniami (Nawigacja klawiaturą): * Użytkownik powinien mieć możliwość poruszania się po liście strzałkami W górę i W dół. 4. Po naciśnięciu Enter wybrany element "potwierdza się". 5. Ważna uwaga: Element wybrany strzałkami musi być zawsze widoczny (programowo przewijaj kontener, jeśli kursor wyjdzie za granice). 6. Optymalizacja (Wydajność): * Ponieważ danych jest dużo (10k), omówić lub zaimplementować prostą "leniwe renderowanie" (renderować tylko pierwsze 20-30 elementów lub użyć IntersectionObserver). Wynik komponentu
Czym są CORS, XSS, CSRF? Jak one działają?