Aké ďalšie kritériá by ste mohli uviesť pre dobrú knižničnú súčasť?
Frontend
Začali ste sa učením React, a React je populárnejší a je na ňom viac voľných pracovných miest. Prečo ste nakoniec prešli na Angular?
Povedz mi o písaní jednotkových testov: kedy by si podľa teba mal test zlyhať? Čo presne by mal jednotkový test pre triedu testovanú podľa londýnskej školy (so všetkými mockovanými závislosťami) overovať?
Porovnajte vkladanie závislostí cez parametre konštruktora a cez funkciu inject: aké sú výhody a nevýhody každého prístupu?
Analyzujte tento prístup z pohľadu miešania zodpovedností: čo je tu zle urobené a ako by ste to vysvetlili z hľadiska architektonických princípov (najmä Zásady jednotnej zodpovednosti a oddelenia prezentácie od modelu)?
Môžete uviesť všetky technické spôsoby riešenia tohto problému (okrem výmeny poľa za signál)?
Povedzte nám viac o používaní async pipe a manuálnej subscribcie: čo presne treba urobiť, aby sa hodnota správne zobrazila v šablóne (vrátane práce s subscribiou a jej odhlásením cez takeUntilDestroy alebo ngOnDestroy)?
Máte na základe praxe nejaké kritériá, kedy je vhodné používať dedičstvo a kedy nie?
Ak šablóna nevie, že sa hodnota zmenila, prečo pridanie async pipe do šablóny rieši problém reaktivity? Ako to funguje na pozadí?
Vo vašom životopise uvádzate, že ste aktualizovali Angular od verzie 14 do 20. Porozprávajte o nejakom probléme, ktorý sa vyskytol pri aktualizácii Angular v projekte - príbeh z praxe.
Môžete uviesť konkrétny príklad knižnice, ktorá neumožnila dokončenie zostavenia pri aktualizácii Angular (napríklad na verziu 16)? V čom presne spočívala podstata problému a ako ste ho vyriešili?
Prečo je v objektovo orientovanom programovaní vôbec potrebné dedičstvo? Uveďte odôvodnenie, prečo sa používa, ak je úlohu opätovného využitia logiky možné vyriešiť aj inými spôsobmi (napríklad cez DI).
Prečo sa hodnota aktualizuje v šablóne pri použití signálu a volaní metódy set, ale pri jednoduchom priradení this.token = reťazec - nie? Vysvetlite to na úrovni konceptu detekcie zmien.
Poznáte UML diagramy tried? Zaoberali ste sa typmi vzťahov ako asociácia, kompozícia, agregácia, generalizácia?
Povedali ste, da ste testy písali pomocou neurónovej siete. Ak neurónová sieť vygenerovala testy, ktoré zlyhajú pri každej zmene kódu triedy, či tieto testy dosahujú svoj cieľ? Sú užitočné?
Prečo ste si vybrali práve vývoj webu a Angular, namiesto napríklad vývoja pre mobilné zariadenia?
Na predchádzajúcom pracovisku ste povedali, že časť frontendu je pomerne malá, ale že sa ňou zaoberá 6 frontend vývojárov. Odkiaľ pochádza presne tím z 6 ľudí a ako súvisí s celkovým frontend tímom spoločnosti?
Predstavte si scenár: skúsený vývojár dostane juniora s úlohou vytvoriť Angular komponent s poľom na zobrazenie tokenu a tlačidlom 'vytvoriť token'. Po kliknutí na tlačidlo sa odošle požiadavka na server, príde token, a junior napíše this.token = prijatý reťazec, ale hodnota sa nezobrazuje a stránka sa neprekreslí. Čo by ste odporučili na vyriešenie tohto problému a aké sú všeobecné prístupy na jeho opravu?
Ak by ste museli spočítať počet riadkov kódu v projekte, ako by ste k tejto úlohe pristúpili? Ako by ste formulovali dopyt na nájdenie riešenia alebo pre neurónovú sieť?
Povedajte nam, kako ste prišli v industrijo razvoja: kako ste se usposabljali, kako ste našli prvo delo, ob upoštevanju, da je v življenjepisu navedena netehnična specializacija?