Czym jest ankieta developer experience?

Ankieta developer experience pyta programistów o to, jak wygląda ich codzienna praca: jak szybko dostają informację zwrotną, jak trudno zrozumieć kod i narzędzia oraz jak często mogą się skupić. Ta ankieta opiera się na frameworku DevEx autorstwa Abiego Nody, Margaret-Anne Storey, Nicole Forsgren i Michaeli Greiler, opublikowanym w ACM Queue w 2023 roku. Dzieli on trudności, na jakie trafiają programiści, na trzy wymiary: pętle informacji zwrotnej, obciążenie poznawcze i stan przepływu. Każda osoba ocenia 12 stwierdzeń anonimowo. Następnie zespół wspólnie przegląda wyniki i na retrospektywie zamienia najniższe oceny w konkretne działania. Jeśli chcesz szerzej spojrzeć na produktywność programistów, skorzystaj z Health Checku SPACE Framework. Do oceny dostarczania oprogramowania użyj samooceny DORA Metrics.

Wymiary

Pętle informacji zwrotnej

Jak szybko ludzie dostają przydatną informację zwrotną o swojej pracy, zarówno od narzędzi, jak i od siebie nawzajem.

  • Szybkość buildów i testów

    Nasze buildy i testy działają na tyle szybko, że rzadko musimy na nie czekać.

  • Tempo code review

    Przeglądy kodu wracają na tyle szybko, że praca nie stoi w miejscu.

  • Pewność przy wydaniach

    Możemy wydać zmianę z pewnością, że niczego nie zepsuje.

  • Uzyskiwanie pomocy

    Kiedy utkniemy, wiemy, kogo zapytać, i szybko dostajemy pomoc.

Obciążenie poznawcze

Ile wysiłku umysłowego wymaga wykonanie pracy w naszym kodzie, narzędziach i procesach.

  • Zrozumiały kod

    Nasz kod jest łatwy do zrozumienia i można go bezpiecznie zmieniać.

  • Dostęp do informacji

    Potrzebną dokumentację lub informacje znajdujemy bez długiego szukania.

  • Pomocne narzędzia

    Nasze narzędzia programistyczne bardziej nam pomagają, niż przeszkadzają.

  • Lekkie procesy

    Nasze procesy, takie jak zgłoszenia, akceptacje i przekazywanie pracy, nie są bardziej rozbudowane, niż to konieczne.

Stan przepływu

Jak często ludzie mogą w pełni skupić się na wartościowej pracy.

  • Głębokie skupienie

    W większość dni mamy długie okresy czasu na skupienie się na pracy.

  • Mało przerw w pracy

    Rzadko odrywają nas od pracy różne przerywniki lub przełączanie się między zadaniami.

  • Jasne cele

    Wiemy, nad czym pracujemy i dlaczego to ma znaczenie.

  • Autonomia

    Mamy realną swobodę w decydowaniu o tym, jak wykonujemy swoją pracę.

Kiedy należy skorzystać z tej kontroli stanu zdrowia

  • Co kwartał, aby śledzić, jak zmieniają się z czasem codzienne trudności, na które trafiają programiści.
  • Gdy programiści mówią, że praca idzie wolno lub frustruje, a wskaźniki dostarczania nie pokazują dlaczego.
  • Przed zmianą narzędzi, platformy, kodu lub procesu i po niej, aby sprawdzić, czy pomogła osobom wykonującym pracę.

Porady i wskazówki

  • Analizujcie każdy wymiar osobno. Zespół może mieć szybkie buildy, a mimo to tracić większość dni przez ciągłe przerywanie pracy.
  • Jeśli macie dane z systemów, takie jak czasy buildów czy czas oczekiwania na przegląd kodu, zestawcie je z wynikami. Publikacja o DevEx zaleca łączenie tego, co zgłaszają programiści, z danymi z systemów.
  • Zachowajcie anonimowość i nigdy nie używajcie wyników do porównywania ani oceniania poszczególnych osób.
  • Wybierzcie jedno lub dwa najniżej ocenione stwierdzenia i na najbliższej retrospektywie zamieńcie je w działania. Powtórzcie ankietę, aby sprawdzić, czy przyniosły efekt.
  • Połączcie ją z Health Checkiem SPACE Framework, jeśli chcecie przyjrzeć się także satysfakcji, współpracy i wynikom pracy.

Najczęściej zadawane pytania

Czym jest ankieta developer experience?
To krótka ankieta, w której programiści opisują trudności w codziennej pracy, takie jak czekanie na buildy i przeglądy kodu, nieczytelny kod czy ciągłe przerywanie pracy. Wyniki pokazują, gdzie zespół traci czas i energię. Gdy przeprowadzicie ją zespołowo, najniższe oceny stają się listą rzeczy do naprawienia.
Jakie pytania powinna zawierać ankieta developer experience?
Pytajcie o to, z czym programiści mierzą się na co dzień: jak długo czekają na buildy, testy i przeglądy kodu, jak łatwo zrozumieć kod i dokumentację oraz jak często mogą pracować w skupieniu, bez przerywania. Każde stwierdzenie powinno być krótkie i dotyczyć zespołu, a nie konkretnych osób. Ten szablon zawiera 12 stwierdzeń, po cztery na każdy wymiar DevEx.
Jakie są trzy wymiary developer experience?
Pętle informacji zwrotnej to szybkość i jakość reakcji na działania programistów, zarówno ze strony narzędzi, takich jak buildy i testy, jak i ludzi, na przykład osób robiących przegląd kodu. Obciążenie poznawcze to wysiłek umysłowy, jakiego wymaga zadanie. Rośnie ono przy złożonym kodzie, nieznanych narzędziach i słabej dokumentacji. Stan przepływu to pełne skupienie na pracy, które zależy od niewielkiej liczby przerw, jasnych celów i autonomii.
Jak często przeprowadzać ankietę developer experience?
Większości zespołów odpowiada rytm kwartalny. Daje on czas na wdrożenie działań po jednej rundzie, zanim przyjdzie kolejna. Jeśli ankieta odbywa się częściej, niż jesteście w stanie wprowadzać zmiany, ludzie zwykle przestają na nią odpowiadać.
Czym różnią się DevEx, SPACE i DORA?
DORA mierzy dostarczanie oprogramowania, na przykład częstotliwość wdrożeń i czas, w jakim zmiana trafia na produkcję. SPACE to szeroki model produktywności programistów obejmujący pięć wymiarów. DevEx skupia się na tym, czego programiści doświadczają na co dzień: pętlach informacji zwrotnej, obciążeniu poznawczym i stanie przepływu. TeamRetro oferuje health check dla każdego z nich: DORA, SPACE i ten szablon.
Kto stworzył framework DevEx?
Abi Noda, Margaret-Anne Storey, Nicole Forsgren i Michaela Greiler w artykule „DevEx: What Actually Drives Productivity”, opublikowanym w ACM Queue w 2023 roku. Stwierdzenia w tym szablonie zostały opracowane przez TeamRetro. TeamRetro nie jest powiązane z autorami ani z firmą DX.

Based on Abi Noda, Margaret-Anne Storey, Nicole Forsgren and Michaela Greiler, 'DevEx: What Actually Drives Productivity,' ACM Queue 21(2) (2023).