Proiectarea unui test de coding pentru frontend developer care reflectă jobul real
Ce cer cu adevărat rolurile frontend
Cea mai mare parte a muncii frontend nu sunt algoritmi. E:
- Citirea unui arbore de componente necunoscut și găsirea unde trăiește state-ul
- Cabluri pentru un răspuns API într-un UI fără să spargi edge case-uri (loading, error, empty)
- Scrierea de CSS care supraviețuiește conținut mai lung decât a mock-uit designerul
- Recunoașterea când un re-render e cauza unui bug de perf
- Știind când să adaugi o dependență și când nu
O întrebare LeetCode "reverse-a-binary-tree" nu filtrează nimic din asta. Mai rău, filtrează afară candidate excelente la jobul real și neinteresate în puzzle-uri algoritmice.
Un test de 90 de minute care măsoară ce e real
Dă candidatei o aplicație React mică și ruptă cu trei probleme:
- Un bug subtil. O listă re-renderează toate rândurile la o singură schimbare pentru că key prop e index-ul array-ului. E laggy cu >100 item-uri dar nu evident ruptă.
- O feature incompletă. Un formular care postează dar nu gestionează state-ul de loading sau error.
- O problemă de stilare. Un layout de card care se sparge când titlul e mai lung de 40 de caractere.
Cere-le să fixeze toate trei.
Rubrică
Notează patru dimensiuni, 1-4 fiecare:
- Diagnoză bug. Au identificat cauza înainte de fix?
- Completitudine edge case. Loading, error, empty — au acoperit fără prompting?
- Calitate cod. Denumiri, structură, alegeri de dependințe.
- Comunicare. Au lăsat comentarii sau o notă scurtă explicând trade-off-uri?
Candidatele senior scor de rutină 3-4 pe toate patru. Testul nu trebuie să fie greu pentru a discrimina bine — trebuie să fie real.
Cum să-l administrezi fără să se scurgă
- Rotește între 3-4 variante de aplicație ruptă.
- Atașează candidatele la o variantă atribuită aleator.
- Folosește semnalele de keystroke și coerență de cod ale ClarityHire.
- Asociază mereu testul cu un follow-up de 30 de minute.
Ce să nu faci niciodată
- Take-home-uri de 4 ore.
- "Construiește un clone al lui X" deschis.
- Teste care necesită setup local de la zero.
Testul frontend corect ia 90 de minute, oglindește un tichet de marți dimineața și produce un scor de rubrică pe care îl poți apăra într-un debrief.