Weeding real agile from modne zwinne w wywiadzie

14

Ostatnio przeprowadzam wywiady dla spółdzielni (płatne staże), a wiele firm, z którymi przeprowadzam wywiady, mówi, że używają Scruma lub innej zwinnej metodologii (najbardziej popularny jest Scrum). Wiem, że istnieją prawdziwe sklepy zwinne i są miejsca, które mówią, że używają zwinnej metodologii, ale naprawdę robią coś innego i używają zwinnego jako modnego słowa.

Moje pytanie brzmi: jakie pytania mogę zadać w wywiadzie, który oddzieliłby te sklepy?

EDYCJA: Kiedy szukam stażu, czuję, że te pytania dotyczą wszystkich. Część stażu jest kontekstem.

indyk1ng
źródło
14
Um, zapytaj ich, czy to świnia czy kurczak?
Robert Harvey
1
@Robert Lolwut?
Mateusz
@ indyK1ng 1. Czy znasz firmę, która działa naprawdę sprawnie? 2. W większości przypadków metodologia powinna być dostosowana do rzeczywistości i odwrotnie. PS Zgadzam się na modne hasło!
Amir Rezaei
2
@Robert Powinni odpowiedzieć:
Mark C

Odpowiedzi:

8

Zawsze zaczynam od zadania tego pytania:

Jaki jest czas trwania twoich iteracji?

Oceń ich odpowiedź:

1 tydzień jest niesamowity, 2 tygodnie są świetne, 3 są w porządku, a 4 przeciętne. Dłużej niż to wskazuje, że walczą, a ponad 8 tygodni to po prostu dziwne. Jeśli odpowiedź jest zależna , wiesz, że nie mają pojęcia.

Kontynuuj za pomocą:

Jak często wypuszczasz?

Ma to na celu zweryfikowanie pierwszego pytania. Prawidłowa odpowiedź to dzień lub koniec każdego sprintu . Agilista wiedziałby, że nie powinno być technicznej różnicy między wydaniem wewnętrznym i zewnętrznym.

Martin Wickman
źródło
5
Standard defacto wynosi 2 - 4 tygodnie. 1 tydzień sprinty ...? Hmm ... byłbym podejrzliwy.
Aaron McIver
5
Nie ma „standardu”; różni się w zależności od firmy / zespołu / sytuacji. Uważam, że koszt Scruma jest, jako część długości sprintu, zbyt marnotrawny na tygodniowe sprinty, dlatego używamy dwóch.
Christopher
1
Testowałem wiele różnych czasów trwania i podoba mi się 1 dla bardzo małych projektów w małych zespołach, ale dla dużych projektów korporacyjnych 3 lub 4 dały mi lepsze wyniki.
3
Wydaje mi się, że te zwroty „prawdziwe” kontra „rozwodnione” zwinne, które wkurzą moje pióra. Zawsze stosowałem koncepcje i zasady Agile Manifesto, ale nigdy nie korzystałem z jednej z markowych wersji Agile. Naleganie tylko na jedną z wielu zwinnych metodologii narusza pierwszą zasadę manifestu. Ale rozumiem co mówisz.
Berin Loritsch,
2
Dla mnie „prawdziwa” zwinność jest zwinna, która stosuje manifest i 12 zasad - niezależnie od tego, jak się nazywa. Istnieje wiele modnych słów, które dodają podstawowe znaczenie zwinności, a następnie twierdzą, że nie jesteś zwinny, jeśli tego nie zrobisz.
Berin Loritsch,
6

Poproś ich, aby bronili zwinnych metodologii. A następnie poproś ich o obalenie go przez wskazanie jego słabości. Punkty bonusowe, jeśli mogą poruszać się po tym kursie bez zaśmiecania go bezsensownymi modnymi słowami.

Mark Canlas
źródło
4
+1 Zawsze dobrze jest znaleźć sposób na przeprowadzenie wywiadu z firmą.
Jeremy Heiler
@Jeremy niestety nie przyjęliby tego zbyt dobrze. Nie poleciłbym tego!
Amir Rezaei
@Amir: Proszę wyjaśnić! Nigdy nie opuściłem wywiadu bez pytania, czy mam jakieś pytania. Co jest złego w tym, że osoba poszukująca pracy chce wiedzieć więcej o firmie? Jeśli nie przyjmą tego dobrze, to pewny znak, że nie chcę dla nich pracować!
Jeremy Heiler
1
Wiem, że niektórym firmom się to nie podoba, gdy ich rozmówca nie zadaje pytań ... im to pokazuje brak zainteresowania pracą.
Rachel
2
Myślę, że proszenie ich o „obronę zwinnych metodologii” nie jest prawdopodobnie najlepszą metodą;)
Matthew Read
6

Zapytaj ich, dlaczego go używają .

Od razu się dowiesz.

użytkownik2567
źródło
8
Można na to dość łatwo odpowiedzieć za pomocą odpowiedzi w puszkach. „Aby skrócić czas wprowadzania produktów na rynek i zachować konkurencyjność”. Musi to być podejście bardziej do przodu i do tyłu. Jeśli PO jest zaznajomiony z Agile / Scrum i chce mieć pewność, że firma też jest; Chciałbym zebrać, że PO powinien mieć mnóstwo pytań w tej sprawie ... a konkretnie, co ich niepokoiło w poprzednim miejscu zatrudnienia i jak nowy biznes może to rozwiązać.
Aaron McIver
2
Odpowiedź, o której wspominasz, nie może zostać udzielona przez kogoś, kto rozumie zwinność. To całkiem dobra wskazówka, że ​​nie wiedzą, dlaczego powinni używać scrum. Każda firma stara się skrócić czas wprowadzania produktów na rynek i zachować konkurencyjność. Jeśli odpowiesz na pytanie, odpowiedziałbym: „to jedyna metodologia dostosowana do rozwoju oprogramowania” lub „zapewnia dużą widoczność tego, co powinniśmy poprawić”.
@Pierre 303 Jakikolwiek powód, by sugerować, dlaczego z punktu widzenia biznesu przyjęcie Agile było procesem, który może wydłużyć czas wprowadzania produktów na rynek i pozostać konkurencyjnym dzięki terminowym wydaniom naszego oprogramowania, jest nieważne i określałoby tę osobę jako nieświadomą, dlaczego należy używać Scrum? Musisz zrozumieć, że menedżerowie ds. Rekrutacji nie zawsze są technicznie skłonni, ale nie oznacza to, że korzystanie z Scruma w organizacji jest daremne.
Aaron McIver
1
@Pierre 303 Czy potrafisz nieco opracować swoją odpowiedź? Powodem zastosowania dowolnej metody opracowywania oprogramowania jest „dostarczanie naszym klientom jak najbardziej wydajnej wartości”, co dotyczy zarówno zwinnych, jak i RUP i innych.
Martin Wickman
1
Kompletnie się zgadzam. Zapytaj ich, dlaczego wybrali Agile. Solidny. +1
Agile Scout
5

Poprosiłbym ich o opisanie cyklu życia oprogramowania przy użyciu metodyki Agile. Jeśli się z tym zapoznają, powinni być w stanie dokładnie opisać każdą fazę w SDLC.

EDYCJA : Właśnie zdałem sobie sprawę, że pytasz z punktu widzenia rozmówcy, a nie ankietera. W takim przypadku prawdopodobnie zapytałbym ich o ich SDLC i sprawdził, czy kroki, które, jak twierdzą, podejmują, pasują do tego, czym naprawdę jest Agile.

Rachel
źródło
Dobra uwaga dotycząca pytania o SDLC. Jednak byłem w organizacji, gdzie śledzili wszystkie etapy SDLC, ale zespół źle zastosował metodologię.
Amir Rezaei
@Amir: Gdyby tak było, zakładałbym, że przynajmniej starają się stosować zwinną metodologię. Są szanse, że albo mają dobry powód, aby się od nich odstąpić, albo nie wiedzą, co robią i chętnie się nauczą, jeśli poświęcisz czas na ich nauczenie.
Rachel
Mają dobry powód. Dostosowują metodologię do swojej rzeczywistości.
Amir Rezaei
3

Podejście, które podchodzę naprawdę nie ma wiele wspólnego ze zwinnymi modnymi słowami, ale ma związek ze zwinnymi praktykami. Jedną ze wspólnych cech wszystkich zwinnych zespołów jest krótka iteracja, większość ludzi bierze tę część (jest to jedna z 12 zasad zwinności na stronie http://agilemanifesto.org ). Celem tej krótkiej iteracji jest wczesne uzyskanie opinii na temat jakości opracowanego oprogramowania. Od tego zaczynam.

  1. Zapytaj o testy jednostkowe. Przeważnie odpowiedź, którą tu otrzymałem, brzmiała: „uh, wycięliśmy to, ponieważ nie mieliśmy wystarczająco dużo czasu” (uwaga: pierwsze 2 flagi ostrzegawcze - brak czasu i brak testów jednostkowych)
  2. Zapytaj o to, kiedy oprogramowanie było testowane i jak często. Odpowiedzi mogą być kreatywne tutaj. Szczególnie, jeśli zespół używa „Agile” jako wymówki, aby odrzucić cały proces na bok. Jeśli odpowiedź jest pod koniec projektu lub coś innego niż przy każdej iteracji, nie wiedzą, co to jest zwinne.

Jak dotąd nie musiałem iść dalej, aby wiedzieć, że osoba nie wie, co to jest zwinność. Byłem także tylko w jednym wywiadzie z firmą, która ma już ugruntowane procesy zwinności.

Jest więcej niż jeden sposób na zwinność, a bardziej zależy mi na zasadach zwinności niż na jakiejkolwiek konkretnej marce lub modnym słowie.

Berin Loritsch
źródło
2

Istnieje kilka rzeczy, które oddzielają tych, którzy „działają” zwinnie od tych, którzy są zwinni:

  • Zapytaj o ciągłą integrację, jeśli nie używają CI odejmij punkt. Dodaj punkt, jeśli są. Dodatkowe punkty:
    1. Dodaj 1, jeśli używają zatwierdzeń dwufazowych (kod musi się pomyślnie skompilować, zanim programista będzie mógł się zalogować).
    2. Dodaj 1, jeśli skrypt kompilacji obejmuje uruchomienie zestawu testów
    3. Dodaj 1, jeśli kompilacja nie powiedzie się, jeśli zasięg kodu spadnie poniżej określonego progu
    4. Dodaj 2, jeśli można wdrożyć aplikację, aby była gotowa do uruchomienia jednym kliknięciem
  • Zapytaj o TDD (rozwój oparty na testach) odejmij 2 punkty, jeśli nie używają TDD, dodaj 1, jeśli to zrobią.
  • Zapytaj o iteracje, jak długo one trwają (odejmij 2 punkty, jeśli nie robią iteracyjnego rozwoju, odejmij 1, jeśli iteracja trwa dłużej niż miesiąc lub krócej niż dwa tygodnie, dodaj 1, jeśli to 2 tygodnie)
  • Zapytaj, w jaki sposób dokonuje się oszacowania, dodaj 1, jeśli wykorzystują punkty historii, dodaj 2, jeśli planują pokera lub coś podobnego, odejmij jeden, jeśli używają szacunków czasu bezwzględnego, odejmij 2, jeśli programiści nie są zaangażowani w proces szacowania.
  • Zapytaj, jak budowane są funkcje, dodaj 1, jeśli programista jest odpowiedzialny za funkcję od góry do dołu (pionowy wycinek) odejmij 1, jeśli programiści są odpowiedzialni za określoną warstwę (wycinek poziomy)

Istnieje wiele innych wskaźników, ale same te powinny dać ci dobry obraz, jeśli zespół faktycznie jest zwinny. Drużyna z 5 lub więcej punktami kwalifikuje się. Wszystko inne oznacza, że ​​„robią” zwinnie. Zwinność to nie tylko iteracje, ale także umożliwienie zespołowi łatwego dostosowania się do zmian. Jeśli iteracyjnie piszesz niepoprawny, zagmatwany kod, napisany pod presją zewnętrzną, to po prostu piszesz bzdury w iteracjach. Zauważ, że możesz zdobyć wiele punktów tylko dzięki ciągłej integracji. Ale to nie wystarczy, aby przynieść ci ponad 5, jeśli nie przestrzegasz innych praktyk.

Michael Brown
źródło
1
„Zapytaj o TDD (rozwój oparty na testach) odejmij 2 punkty, jeśli nie używają TDD, dodaj 1, jeśli tak” nie ma sensu. Po prostu dodaj 3, jeśli tak.
cbrandolino 16.01.11
Rozumiem, co mówisz ... Nie uprościłem mojej formuły ... ale myślę, że moje zdanie jest jasne.
Michael Brown
1
WTF ma CI i TDD związane z Agile? Jasne, ułatwia uwalnianie, ale tak naprawdę nie potrzebujesz go do zwinnego działania. I wierzcie mi, znam firmy z TDD i CI, które wcale NIE są zwinne.
gbjbaanb
Same TDD i CI nie sprawiają, że środowisko jest sprawne. Jednak brak tych elementów jest sygnałem ostrzegawczym, że nie ma prawdziwego zaangażowania w zwinność.
Michael Brown
2

Tak jak w przypadku wszystkich tych rzeczy, pytasz o przykłady z rzeczywistych projektów, nad którymi pracowali , a nie teorię. Akceptowanie odpowiedzi teoretycznych jest najprostszym sposobem na oszukanie przez kogoś, kto tak naprawdę tam nie był.

Więc prosisz o rozmowę z prawdziwymi programistami i pytasz o takie rzeczy jak:

  • Opowiedz mi o swoim obecnym projekcie. Jaki był początkowy cel końcowy? Co zawierał pierwszy sprint i co oprogramowanie może zrobić na jego końcu?
  • Czy możesz podać mi przykłady funkcjonalności lub projektu swojego ostatniego projektu, który Twoim zdaniem działał inaczej niż projekt wodospadu?
  • Podaj mi przykład, w jaki sposób duża część funkcjonalności została rozbita na wiele sprintów? Do jakich nieefektywności / przeróbek doprowadziło to? I jakie ulepszenia lub zmiany w stosunku do pierwotnie przewidywanych.
  • Kiedy zacząłeś pracować z agile, jakie rzeczy robiłeś podczas wczesnych sprintów, co zmieniłeś podczas późniejszych sprintów (lub projektów), kiedy opanowałeś metodologię?

Powracaj do nich z powrotem do rzeczywistych projektów - co starali się osiągnąć, przykłady tego, co było w każdym sprincie, przykłady rzeczy, które pojawiały się na spotkaniach, przykłady interakcji z użytkownikami.

Nie akceptuj teorii, nie akceptuj projektów innych ludzi, tylko rzeczy, nad którymi sami pracowali i o których mogą rozmawiać z pierwszej ręki.

Musieliby być oszałamiająco dobrym kłamcą, aby móc nadrobić 10-15 minutowe rzeczy, które ominie cię, jeśli znasz swoje rzeczy.

Jon Hopkins
źródło
2

Jeśli nie chcesz, aby były defensywne, znalazłem następujące pytanie, które zainicjuje rozmowę, która powie ci wszystko, co musisz wiedzieć o tym, czy faktycznie używają podejścia zwinnego, czy po prostu płacą mu za usta:

Kto jest odpowiedzialny za pisanie wymagań / specyfikacji dla twoich projektów oprogramowania?

Widziałem wiele firm, które twierdziły, że są zwinne, a nawet chciały, aby certyfikat Scrum Master opisał klasyczny duży proces projektowania z góry, kiedy pytasz o proces zbierania wymagań.

JohnFx
źródło
2

To, co mnie wyróżnia, to to, że szukasz stażu, co prowadzi mnie do zastanowienia się, jaki jest twój cel zadawania tych pytań. Czy próbujesz zadać pytanie o zwinność, aby rozmowa przebiegła dobrze, czy może odrzuciłbyś ofertę firmy używającej zwinnego modnego hasła? Jeśli naprawdę szukasz zwinnego środowiska, wybierz pytanie (dlaczego używasz zwinnego, o której godzinie masz standup, jak długo trwają iteracje, cokolwiek) i zapytaj go przez telefon lub e-mail, nie marnując czasu na wywiad. Jeśli szukasz dochodu, poczekaj na rozmowę i zadaj pytania, które pokażą twoją wiedzę / ekscytację na temat zwinnych metodologii (powiedz mi o cyklu życia oprogramowania) bez zawstydzania ankietera, jeśli używają jakiejś na wpół zwinnej obrzydliwości.

znak
źródło
To pytanie zadam podczas części wywiadu „Czy masz jakieś pytania do mnie?”. Zadaję pytanie, aby ustalić, czy mówią prawdę, gdy mówią, że są zwinne. Byłem już w środowisku kowbojskim i chciałbym temu zapobiec. Wiem, że istnieją organizacje, które używają zwinności jako modnego słowa, więc staram się je odfiltrować. Również wywiady przebiegają w obie strony, przeprowadzam wywiady z firmą, podczas gdy oni przeprowadzają ze mną wywiady.
indyK1ng
1

Proszę ich o opisanie typowej prośby, od powstania do ostatecznej dostawy do klienta.

Pytam również, czy zazwyczaj obsługują długoterminowe wsparcie dla produktu, który zapewnia klientowi (ponieważ zespoły, które to robią, zazwyczaj tworzą lepszy produkt, wiedząc, że to one naprawią go o 1 w niedzielę w weekend w Święto Pracy).

Pytam również, jak zarząd widzi swoją rolę w trakcie tego procesu. Łatwo jest sprawdzić, czy mają postawę ognia i zapomnienia (wystrzeliwujemy, lecisz, pytamy, czy trafiłeś w cel) lub nastawienie „pomagamy ci wiosłować łodzią w górę rzeki”.

Zazwyczaj pokażą ci, jak naprawdę robią rzeczy, a nie jak mają to robić lub jak twierdzą, że to robią.

Christopher Mahan
źródło
1

Najlepszym sposobem, w jaki znalazłem, aby zobaczyć, czy ktoś wie, co robią z perspektywy SDLC, jest zapytanie go, gdzie popełnił błąd w przeszłości i jak zrobiłby to inaczej. Ludzie, którzy przeszli przez ten proces kilka razy i w pełni przyznają się do tego, co spieprzyli, i ogólnie są dość szczegółowi. Otwartość na dyskusję pokazuje poziom pewności siebie, ponieważ przyznają, że nie są doskonali. Unikanie pytania przez powiedzenie „Prawie cały czas robią to OK” to prawdziwy znak ostrzegawczy.

kemiller2002
źródło
1

Jak często trafiają do produkcji. Im dłuższy czas, tym mniej są zwinne. Jak często mają warsztaty refleksji. Jeśli wiedzą, o czym mówisz, to dobrze. Jak często odbywają się spotkania grupowe. Codziennie jest super, miesięcznie źle. Czy mają serwer ciągłej integracji? To nie musi być, ale da ci wyobrażenie o ich użyciu narzędzi. Jak często użytkownicy końcowi siedzą z programistami. Nigdy nie oznacza, że ​​nie są zwinne.

Henz
źródło
+1 IMO, pierwszą rzeczą, która umiera w zwinnie poszukiwanej organizacji, jest retrospekcja. To naprawdę więcej koncepcja Scruma, ale skuteczna zwinność wiąże się ze zrozumieniem, jak dobrze Twój proces umożliwia, a nie wyłącza Twoją organizację. Bez mechanizmu introspekcji nie widzę, jak to możliwe.
MIA,
0
  • Daj im sytuację i poproś, aby rozwiązali ją sprawnie;
  • Zapytaj ich o ulubione praktyki zwinne (planowanie pokera, programowanie w parach, bdd / tdd, kanban);
  • Zapytaj ich, dlaczego nie wybrali innych metodologii (wodospad, rup itp.)
  • Kim są najbardziej znani ludzie w zwinnym świecie metodologii, którzy wymyślili ten termin i jakie najpopularniejsze książki o nim napisane.
Eimantas
źródło
1
Szczerze mówiąc, zawiódłbym czwarty punkt. Wiem, co to jest zwinne i przeczytałem wiele zasobów internetowych o tym, jak różni ludzie wyszli. Jednak moja droga do zwinności zawsze była dostosowana do zespołu / środowiska, nad którym pracuję.
Berin Loritsch 16.01.11
0

Jeśli używają Scruma, możesz zapytać, czy możesz obejrzeć następny stand-up. Jeśli ich nie mają, zapytaj, dlaczego nie, ponieważ zwykle byłaby to część metodologii.

Warto wspomnieć o kilku aspektach Agile. Poproś, aby zobaczyć tablicę opowieści, jak duży jest tylny dziennik lub jakie były najważniejsze wydarzenia w ostatniej retrospektywie, aby uzyskać kilka innych pomysłów. Kluczem jest tutaj dojście do czegoś namacalnego, co pokazuje, co się dzieje, w porównaniu z tylko puszystymi słowami, które tak naprawdę niewiele znaczą.

JB King
źródło
0

Zapytaj ich, jak radzą sobie z projektem. Jeśli powiedzą ci, że nie ma zwinnego projektu, nie rozumieją go.

Zapytaj ich, jak radzą sobie ze zmieniającymi się wymaganiami. Jeśli wydaje się, że zmiana wymagań ma swój własny proces, prawdopodobnie nie rozumieją tego.

Jeśli twierdzą, że używają Scruma, zobacz, jak to piszą. Sklepy, które dobrze znają Scrum, zwykle dobrze wiedzą, jak to napisać. Wskazówka: to nie jest SCRUM.

To może wydawać się pedanterią, ale jestem głęboko przekonany, że aby z powodzeniem zastosować szablon procesu, taki jak Scrum, RUP, XP lub cokolwiek innego, musisz zrozumieć filozofię i „dlaczego”, aby wiedzieć, jak się dostosować „co” dla Twojej organizacji. W Scrumie większość ludzi, którzy odrabiają lekcje, natknie się na te odrobinę informacji. Ludzie, którzy szukają przepisów na książki kucharskie do zarządzania projektami, zwykle tęsknią za tym szczegółem.

MIA
źródło
0

Dla mnie sensowne jest poproszenie ich o opisanie, w jaki sposób obsługują część procesu Agile. W tej chwili mój ulubiony to początek iteracji, ale możesz opracować swój własny.

Zapytaj: „biorąc pod uwagę stos biletów na początku sprintu, opisz stąd swój przepływ pracy”

Najważniejsze punkty do słuchania tutaj:

  • Czy deweloperzy oceniają bilety?
  • Czy śledzisz prędkość?
  • Co się stanie, gdy twoje oszacowania przekroczą prędkość?
  • Co się stanie, gdy twoje prognozy przekroczą prędkość, gdy będziesz miał termin? (Uważaj na spin tutaj: czy zmniejszają złożoność, czy zmieniają priorytety, czy tylko wprowadzają deathmarch zespół programistów?)

Żadne z nich nie stanowi problemu same w sobie, ale jeśli ich odpowiedzi na wystarczającą liczbę pytań sprawiają, że zastanawiasz się, być może są zainteresowani zwinnymi rytuałami , a nie faktycznym zwinnym rozwojem .

RyanWilcox
źródło