Jako starszy członek zespołu programistów, który niestety nie ma wystarczającej dokumentacji z powodów związanych z dziedzictwem, co można zrobić, aby nowy wynajem był wygodny?
Planuję sesje debugowania z osobą na temat określonych błędów / żądań funkcji, aby zapoznać ją z bazą kodu. Jednak baza kodu jest naprawdę duża i jest to tylko stała ilość kodu, na którą mogę narazić osobę w ten sposób.
Szukam sugestii w obu przypadkach, gdy nowy pracownik jest absolwentem lub doświadczonym profesjonalistą.
teamwork
knowledge-transfer
Fanatyk 23
źródło
źródło
Odpowiedzi:
Odnoszą się one do każdego nowego zatrudnienia, bez względu na to, czy są to osoby świeższe, czy mają duże doświadczenie branżowe:
x
podsystem?”. Jeśli udostępni się im listę do wynajęcia, są o wiele bardziej skłonni wysłać e-mail lub porozmawiać z nimi bezpośrednio, bez konieczności przechodzenia przez grupę ludzi, aby znaleźć właściwą.źródło
Myślę, że naprawdę mogę ci w tym pomóc. Kiedy miałem 18 lat, moją pierwszą pracą było stanowisko Jr. .Net Developer. Mieli bardzo dużą strukturę, a on od razu przystąpił do nauki kursu awaryjnego na CAB, a kiedy pojawił się pierwszy projekt, miałem oszacować projekt i nauczyć się SqlServer i ich frameworka. To, co sprawiło, że było to cudowne doświadczenie, polegało na tym, że mój Starszy deweloper był dla mnie przez cały proces od oszacowań, przez SqlServer, aż po ich środowisko. Nauczyłem się tego, czego musiałem się uczyć w odpowiednim czasie, ponieważ mogłem wykorzystać go jako źródło pytań i pomocy. Pamiętaj, że zrobiono to również, kiedy byłem w Kolorado, a on był w Kalifornii. (Zdalny rozwój). Kazał mi czytać oficjalne dokumenty na CAB, wskazywał na dobre zasoby itp., Więc to nie tak, że musiał wykonywać wszystkie nauki, ale gdy chodziło o pytania, był tam. Podsumowując, potrzebujesz kogoś, kto będzie wsparciem dla twoich Jr. Developers. Zwłaszcza jeśli chcesz, aby uczyły się i rozwijały w firmie oraz utrzymywały dobre relacje robocze. Chcieli, żebym przeprowadził się do Kalifornii, ponieważ byli zadowoleni z tempa, w jakim mogłem się uczyć i robić postępy, i mojej pracy, niestety nie mogłem przeprowadzić się z powodu kosztów / etc.
To jedno doświadczenie naprawdę nadało mi również cechę. Teraz z powodzeniem rozwijam oprogramowanie dla firm i fundacji w moim lokalnym mieście, a ja mam zaledwie 21 lat. To była najlepsza pierwsza praca i jestem niezmiernie wdzięczny Tomowi Andersonowi z RenEvo Software & Designs (który był moim starszym programistą). Niesamowity mentor.
źródło
Firma, z którą jestem teraz, IMO, robi to dobrze dla nowych pracowników. Oto niektóre z rzeczy, które widziałem jako skuteczne.
Mentorzy
Może to trochę mylące określenie, ponieważ niektórzy doświadczeni deweloperzy mogą nie myśleć, że ich potrzebują, ale mamy 1 osobę wyznaczoną na twojego mentora. Ta osoba ma być dostępna, aby odpowiedzieć na każde pytanie, które możesz mieć. Działa lepiej, jeśli siedzą blisko nowego pracownika. Cały sens mentora polega na tym, że nowi pracownicy, szczególnie młodsi, czują się na tyle wygodnie, aby nie wpaść w pułapkę niewystarczającego zadawania wystarczających pytań .
Dokumentacja
Wspomniałeś już o tym, ale dokumentacja może pomóc. Na naszej wiki mamy dokument, który w zasadzie opisuje twoje pierwsze dwa tygodnie pracy. Zanim skończysz przechodzić przez pierwsze dwa tygodnie, musisz wpaść w rytm, położyć się na ziemi i wygodnie tam pracować.
źródło
Cierpliwość
Dołączenie do nowej firmy może być dość zniechęcające, zwłaszcza jeśli masz nowy produkt do nauczenia się i używasz różnych narzędzi, do których jesteś przyzwyczajony. Daj im czas na osiedlenie się w nowym środowisku i przyspieszenie. Przypisuj im zadania do wykonania, ale pamiętaj, że zajmie im to znacznie więcej czasu niż zwykły doświadczony programista.
Wsparcie
Nie musisz im przypisywać dedykowanego mentora, ale upewnij się, że jest mnóstwo ludzi, którzy mogą zaoferować im pomoc, gdy jej potrzebują.
Każdy ma inne sposoby uczenia się, niektórzy mogą uznać, że potrzebują mentora, inni mogą zauważyć, że mentor ich spowalnia. Nie ma jednego uniwersalnego rozwiązania, więc zamiast tego pozwól im znaleźć ziemię i wspierać ich, i bądź cierpliwy podczas nauki lin.
źródło
Zacząłem od nowej pracy 4 miesiące temu i naprawdę uważam, że moje nowe miejsce pracy wykonało naprawdę dobrą robotę w związku z nowymi pracami związanymi z zatrudnieniem.
Kolega
Mają tak zwany „program dla kumpli”, w którym programiści mogą zarejestrować się jako kumpel / mentor dla nowych pracowników. Gdy zatrudniony jest nowy programista, programista w tym samym zespole (który zarejestrował się jako kumpel) zostaje wskazany jako kumpel / mentor nowego faceta. Jego obowiązkiem jest uruchomienie nowego faceta, pomoc w rozwiązaniu problemów, które napotka, pójście z nim na lunch, przedstawienie go zespołowi i tak dalej.
B. Niska zależność
Zostało to wcześniej wspomniane, ale zacznij od zadań, które nie są krytyczne i zbyt trudne do wykonania, bez pełnej wiedzy o bazie kodu. Nie ma nic gorszego niż wrzucenie do bazy kodu, której nie znasz, a następnie musisz wykonać od pierwszego dnia. Jeśli to możliwe, wykonuj zadania, które są stosunkowo łatwe ORAZ obejmują cały system. W ten sposób zdobędzie trochę wiedzy o systemie.
Prawdopodobnie masz małe zadania, na które nie miałeś czasu, kiedy pisałeś kod. Daj mu te zadania.
C. Szkolenia dla nowych pracowników
Jest to prawdopodobnie luksus dla większości, ale pracuję w dużej korporacji, na którą można sobie pozwolić. Co miesiąc lub co dwa miesiące organizowane są szkolenia dla nowych pracowników. Zasadniczo jest to seria prezentacji, których celem jest przekazanie nowym pracownikom pewnego rodzaju wiedzy o systemie, o tym, jak przeprowadzane są testy, jak działa śledzenie błędów i tak dalej.
Tam, gdzie pracuję, jest wiele różnych zespołów, które pracują nad zupełnie innymi zadaniami, ale przy tym samym oprogramowaniu. Członek każdego zespołu ma za zadanie przeprowadzić prezentację na swojej stronie oprogramowania, gdzie daje wprowadzenie do tego, co robi ta część, jak działa i tak dalej. Poza tym odbywają się szkolenia dotyczące testów (pracuję jako tester) na temat pisania testów, ich uruchamiania, sprawdzania w bazie danych i tak dalej.
Podsumowując, bądź łagodny w przypadku nowych pracowników i nie oczekuj od nich poważnej pracy w ciągu pierwszego miesiąca. Daj im narzędzia, aby uzyskać pomoc, a jeśli to możliwe, daj im prezentacje lub filmy.
źródło
Narysuj szybki szkic na kartce papieru. Bloki funkcjonalne i przesyłanie danych między nimi. Aby nowy najemca mógł trzymać tę listę pod ręką i sprawdzić, gdzie jest miejsce, w którym próbuje się dotknąć, i które moduły wpływają na nią hierarchicznie.
Wszystko inne przychodzi z czasem. Ale to duży obraz sprawia, że czujesz się głupio, gdy musisz zmienić 2 linie kodu, ale nie masz pojęcia, jakie skutki uboczne mogą powodować zależne moduły, bloki kodu itp.
źródło
Oprócz tego, co powiedziano wcześniej, określ potrzeby szkoleniowe i zapewnij je poprzez zapewnienie czasu, materiałów, wewnętrznych lekcji, książek itp. Nie wszystkie szanse są znane. Poinformuj go, że to jest OK.
Trzymaj go z dala od „złych” facetów. W każdej organizacji jest zwykle co najmniej 1 arogancka osoba (takie jest moje prawo :))
Jeśli wyznaczysz mentora, upewnij się, że mentor wie, że jego zadaniem jest pomaganie i że nie jest to poza jego sercem. Znajdź na to czas w harmonogramie mentora.
Kontynuuj swoje postępy przez mniej więcej pierwszy miesiąc, jeśli możesz, wywnioskuj jego problemy.
źródło