Wyobraźmy sobie system CRM: wnioski o urlop są zatwierdzane, ale nie są zaznaczane w kalendarzu, co powoduje błędne obliczenia wynagrodzenia. Problem jest zmienny. Jak zacząłbyś rozwiązywać ten problem?
Node.js
Jak dokładnie przyjmujemy i przechowujemy zdarzenie — jak powinna być zbudowana warstwa odbioru, i czy możemy zaufać zdarzeniu?
Opisz mój najciekawszy przypadek
Wyobraźmy sobie system, który otrzymuje zdarzenia od zewnętrznego systemu (płatności, statusy zamówień) przez webhook HTTP lub kolejkę. Należy zapisać zdarzenia, zaktualizować stan i zrobić to niezawodnie w produkcji. Jak zaprojektowałbyś ogólny schemat przepływu?
Część pracy polega na analizie i poprawie istniejącego kodu, czasami wygenerowanego przez AI, czasami bez dokumentacji. Jak podchodzisz do takiego formatu?
Co powinienem odpowiedzieć na pytanie "czego szukasz w kontekście oferty pracy"?
Co zrobić, jeśli najpierw pojawi się zdarzenie Success/Paid/Done, a potem starsze zdarzenie Pending? Jak to rozwiązać?
Jak odróżnić tymczasowy błąd od takiego, którego nie można naprawić?
Jak zapewniłeś dostawę dokładnie raz, czy to dotyczy tylko spójności?
Jak rozwiązać ten problem, gdy zewnętrzny system wysyła to samo zdarzenie kilka razy?
Proszę opowiedzieć o jednym projekcie lub czymś, co zrobiłeś, z czego jesteś dumny i dlaczego.
Załóżmy, że zdiagnozowałeś problem. Jak zrobić, aby następnym razem nie musieć tego naprawiać ręcznie?
Jeśli wszystko zostało sprawdzone i nadal występuje rozbieżność, gdzie jeszcze może być błąd i czy dostawca może być winny (np. jeśli jego API jest źle dostarczane)?
Zewnętrzny dostawca wysyła webhooki, zapisujemy je w bazie danych. Po miesiącu przychodzi produkt: mają 1000 wpisów, my 970. Jak byś to rozwiązał?
Załóżmy, że wszystko, co sprawdziłeś, jest poprawne. Co w takim przypadku?
System jest już w produkcji. Jak sprawdzić, czy działa, i jak zbadać konkretny problem?
Jakie tabele i encje są potrzebne w bazie, aby system był łatwy do utrzymania i badania?
Opisz moje doświadczenie, które pomoże mi w rozmowie kwalifikacyjnej na stanowisko
Wydarzenie jest ważne, nie jest duplikatem, kolejność jest zrozumiała, ale podczas przetwarzania usługa się zawiesza. Jak zapewnić niezawodność?
Co pokazać w interfejsie użytkownika, jeśli zdarzenie zostało zapisane, ale nie zastosowane?