Obecnie opiekuję się małym zespołem 4 młodszych programistów w małej firmie programistycznej. Są bardzo sprytni i często wykonują swoje zadania dzięki pracy wysokiej jakości, ale jestem pewien, że nadal mogą sobie radzić lepiej - w rzeczywistości mam dokładnie to samo uczucie :). Poza tym niektóre z nich są bardziej „młodsze” niż inne.
Chciałbym więc znaleźć zabawny sposób na podniesienie umiejętności CS (projektowanie, kodowanie, testowanie, algorytm ...) oprócz doświadczenia, które zdobywają w codziennej pracy. Na przykład myślałem o ustanowieniu cotygodniowych sesji, nie dłuższych niż 2 godziny, w których moglibyśmy się spotkać, aby popracować nad trudnymi ćwiczeniami z CS. Trochę jak dojo kodujące.
Jestem pewien, że zespołowi się to spodoba, ale czy to naprawdę dobry pomysł? Czy byłby skuteczny w kontekście zawodowym? Cały tydzień spędzają już na kodowaniu, więc jak mam to zorganizować, aby uzyskać jakieś korzyści?
Wszelkie opinie mile widziane!
Odpowiedzi:
Oto kilka pomysłów
Spotkanie grupy użytkowników, podczas którego wyznaczona osoba przedstawia to, poprawiłoby prezentację / umiejętności miękkie zespołu
raz na jakiś czas wykonując niezwiązane z pracą zadanie, takie jak pójście do Dave'a i Bustersa na zabawę w piątek lub coś w rodzaju .. w celu poprawy chemii zespołu
Każde zadanie lub spotkanie powinno trwać krócej niż 45 minut, aby cała grupa była zainteresowana. Każda rzecz, która wykracza poza godzinę, całkowicie spadnie na barki prezentera lub lidera grupy.
źródło
Ludzie mogą mieć własne pomysły na temat tego, jak chcą się uczyć. Osobiście wolałbym wziąć kurs lub pracować nad projektem w swoim czasie - i zrobiłem jedno i drugie. Jeśli wszyscy w zespole są w porządku z sesjami treningowymi, idź na nie, dopóki ludzie w twoim zespole nie zaczną traktować tego jak „pracy” z czasem ...
źródło
Myślę, że jedynym sposobem na utrzymanie wyszkolonego zespołu jest zatrudnienie programistów, którzy chcą kontynuować naukę.
Jeśli nie pochodzi od wewnątrz, nie przyniesie trwałych rezultatów.
jeśli chcą się uczyć, to to, czy uczenie się w zespole jest skuteczne, czy nie, będzie zależeć głównie od zainteresowań i stylów uczenia się.
źródło
Myślę, że system dojo brzmi fajnie i pozwalam im iść do domu, jeśli chcą. Dodanie jakiejś nagrody może być przydatne, ale możesz kłaść nacisk na rywalizację i nie wydaje mi się, żeby to przydało się w pracy zespołowej. W każdym razie, niesamowite miejsce, w którym można szukać problemów z komputerem, ocenia Sphere Online Judge . Definiuje problem, zestaw oczekiwanych wyników i umożliwia przesłanie pliku z rozwiązaniem problemu. Jeśli dobrze to zrobisz, punkty wzrosną.
Powodzenia z tym!
źródło
Jako programiści potrzebujemy wielu umiejętności, które niekoniecznie są bezpośrednio związane z kodem. Jednym z przykładów jest przedstawienie i wyjaśnienie zagadnień technicznych osobom nietechnicznym w sposób, który mogą zrozumieć. Coś, co może być skuteczne, gdy doprowadzasz swój zespół do miejsca, w którym chcesz, to zadanie domowe.
Każdego tygodnia dajesz swoim chłopakom problem do rozwiązania. Aby było to najbardziej korzystne dla firmy, trzymaj problemy związane z czymś, nad czym pracujesz. Najlepiej z jakiegoś punktu bólu, dla którego jeszcze nie wymyśliłeś sobie rozwiązania. Każdy z twoich młodszych członków przedstawiałby się na zmianę (najlepiej raz w tygodniu), podczas gdy grasz rolę klienta. Zasadniczo przy takim podejściu masz dwa cele:
Oczywiście każdą sesję rozpocznij od przypomnienia, że będziesz zadawać ostre pytania - a celem nie jest bycie podłym, ale przygotowanie ich dla twardego klienta.
źródło
Jako kierownik lub senior starałbym się rzucać wyzwania w „prawdziwej” pracy. Staraj się dawać ludziom rzeczy do pracy, które są trochę poza ich ligą lub przynajmniej rzucają im wyzwanie. Wyślij jednego z rówieśników, aby pomógł i w razie potrzeby udzielił korepetycji.
Po tym, jak ktoś coś skończy, rzuć mu wyzwanie, aby wypróbował nowe / inne podejście.
Naucz ich, jak wymyślać rzeczy na miejscu zamiast pracować nad rzeczami, których jeszcze nie wiedzą, jak to zrobić.
Zintegruj uczenie się z samą pracą, poboczne projekty uczenia się mają tendencję do pomijania terminów na horyzoncie.
Czasami bezpośrednie motywowanie danego eksperta może pomóc jako motywator.
źródło
Daj im 3 godziny tygodniowo na badanie / zhackowanie wszystkiego, co jest zainteresowane programowaniem. Idealnie byłoby więcej, ale myślę, że 3 godziny to dobry początek. Może to być wszystko w jednym kawałku, po drodze można je podzielić na małe 30-minutowe segmenty. Wygląda na to, że ci programiści są wystarczająco zmotywowani, aby mieć wszystko pod kontrolą.
Ale pozwalając im odkrywać własne pola zainteresowań, wrócą również, aby pomóc zespołowi. Jedna osoba, która naprawdę lubi dane, może zajrzeć i napisać małą aplikację przy użyciu rozwiązania NoSQL, które może pomóc w projekcie, który pojawi się kilka miesięcy później. Inna osoba może skorygować małą aplikację narzędziową do błahych potrzeb (takich jak analizowanie plików dziennika), która stanie się podstawową aplikacją w Twoim zespole. Nawet wiedza uzyskana z lektury tego, co robią duże firmy, może pomóc w ocenie opcji dla następnego projektu, który się pojawi.
Jesteśmy w środowisku, które ciągle się zmienia, a każdy członek twojego zespołu z pewnością wnosi coś wyjątkowego do stołu, więc daj im możliwość rozszerzenia na własnych warunkach. Będą wdzięczni, że nie zostali zmuszeni do czegoś (mimo że wszystkie intencje są dobre), a ty otrzymasz dobrą różnorodność opinii.
źródło
Inną techniką, którą widziałem, jest ta praca, czyli prezentację obiadową od starszego programisty / konsultanta raz na miesiąc. I nie zapomnij podać obiadu. Większość deweloperów, których znam, uwielbia darmowe grube Możesz zapytać ich, czy wolą jakieś konkretne tematy.
źródło