O usłudze
PrzetłumaczoneJestem programistą backendowym, który świadomie specjalizuje się w Dart po stronie serwera, a nie zwraca się ku niemu z konieczności. Wiele osób zna Dart jako język do aplikacji mobilnych w Flutterze, ale mnie interesuje jego druga strona, strona serwera. Projektuję i uruchamiam usługi HTTP oraz REST API na middleware w stylu shelf i frameworkach takich jak Serverpod: ustawiam routowanie, uwierzytelnianie, walidację żądań, strukturalne logowanie i łagodne zamykanie. Zależy mi na tym, czego użytkownik nie widzi, ale zawsze odczuwa: przewidywalna latencja odpowiedzi, sensowne kody błędów, pule połączeń do Postgresa lub innego magazynu oraz kod, który kolega może przeczytać sześć miesięcy później bez przewodnika. Poza usługami internetowymi dużo pracuję z narzędziami dla programistów. Piszę aplikacje konsolowe z odpowiednim analizowaniem argumentów, subkomendami, kolorowym wyjściem i znaczącymi kodami wyjścia, aby dobrze działały w skryptach i potokach CI. Aktywnie korzystam z systemu budowania Dart i generowania kodu: source_gen i build_runner przekształcają adnotacje i schematy w typowo bezpieczną serializację, stuby klienta i kod szablonowy, który w przeciwnym razie szybko staje się przestarzały przy ręcznych edycjach. Kiedy projekt potrzebuje małego wewnętrznego demona, uruchamiacza migracji, importera danych lub systemu łączenia usług, Dart pozwala mi dostarczyć coś kompaktowego, statycznie typowanego i łatwego do zbudowania w jeden samodzielny plik wykonywalny.
Aby ustalić granice: nie jestem osobą zatrudnioną do pixel-perfect mobilnych ekranów i nie proponuję przepisywania wszystkiego w Node lub Go. Jeśli Twój backend jest już w Dart lub chcesz jedną drużynę i jeden język po stronie klienta i serwera, uczynię stronę serwera solidną. Piszę testy, dokumentuję punkty końcowe i przekazuję coś, co możesz faktycznie uruchomić i utrzymać.
— REST i API HTTP na frameworkach w stylu shelf i Serverpod
— Narzędzia konsolowe, demony i automatyzacja dla CI
— Generowanie kodu za pomocą build_runner i source_gen
— Praca z bazami danych, migracjami i pulami połączeń (Postgres i inne)
— Uwierzytelnianie, walidacja żądań, logowanie i obsługa błędów
— Budowanie Dart w jeden natywny plik wykonywalny
Aby ustalić granice: nie jestem osobą zatrudnioną do pixel-perfect mobilnych ekranów i nie proponuję przepisywania wszystkiego w Node lub Go. Jeśli Twój backend jest już w Dart lub chcesz jedną drużynę i jeden język po stronie klienta i serwera, uczynię stronę serwera solidną. Piszę testy, dokumentuję punkty końcowe i przekazuję coś, co możesz faktycznie uruchomić i utrzymać.
— REST i API HTTP na frameworkach w stylu shelf i Serverpod
— Narzędzia konsolowe, demony i automatyzacja dla CI
— Generowanie kodu za pomocą build_runner i source_gen
— Praca z bazami danych, migracjami i pulami połączeń (Postgres i inne)
— Uwierzytelnianie, walidacja żądań, logowanie i obsługa błędów
— Budowanie Dart w jeden natywny plik wykonywalny