Chcesz znacząco usprawnić współpracę i komunikację w zespole?
Przedstawiamy kilka metod, na których skorzystają zarówno osoby początkujące w świecie IT, jak i doświadczeni deweloperzy.
Umiejętności techniczne w świecie IT to tylko wierzchołek góry lodowej.
Pod wodą kryje się szereg umiejętności i cech, które są niezwykle ważne.
Należą do nich m.in. samodzielność, odpowiedzialność, komunikatywność czy też umiejętność organizacji pracy swojej i zespołu.
Sprawia Ci przyjemność to, że możesz komuś pomóc? Zapewne TAK. Większość ludzi przyznaje, że lubią pomagać. Jeżeli chcesz, żeby ktoś zainwestował swój czas, przygotuj się do tego. Przemyśl, o co dokładnie chcesz zapytać, i sprawdź, czy:
Pamiętaj, aby informację dostarczyć z wyprzedzeniem. Dzięki temu osoba, którą chcesz poprosić o pomoc, będzie miała szansę na przygotowanie się.
Przechodząc przez te kroki, często sami wpadamy na rozwiązanie problemu lub znajdujemy jego źródło.
Keep It Simple Stupid.
Postaraj się, aby twoje rozwiązanie było proste w użyciu i możliwe do zastosowania ponownie. Niepotrzebne komplikowanie utrudnia używanie Twojego rozwiązania dla różnych przypadków. Twoja wartość dla zespołu jest wynikiem efektów Twojej pracy oraz stworzonych rozwiązań.
Pamiętaj, że nie każdy zrozumie Twoje podejście do rozwiązywania problemów. Weź też pod uwagę, że Twoje rozwiązanie ma być przydatne przede wszystkim dla innych.
Staraj się utrzymać porządek w swoim zadaniu. Przed oddaniem sprawdź, czy nie zawiera niepotrzebnego bałaganu.
Nie chcesz przecież, żeby osoba sprawdzająca Twoją pracę musiała usuwać niepotrzebne komentarze, printy, console.log'i itp.
Wystarczy przed oddaniem zadania zweryfikować wykonane zmiany.
git diff upstream nazwa_brancha
# wyświetla różnice pomiędzy obecnym i wskazanym branchem
Nawet jeżeli pracujesz sam, zachęcam Cię do korzystania z GIT.
Z pomocą kilku prostych komend możesz weryfikować zmiany, jakie zachodzą w Twoim zadaniu.
Jeżeli pracujesz w zespole, pobieraj i wysyłaj zmiany projektu na bieżąco (nawet kilka razy dziennie).
Postaraj się także opisywać swoje zmiany w sposób czytelny i zrozumiały dla innych.
git checkout -b nazwa_brancha # zakłada nowy branch i przechodzi na niego
git pull upstream nazwa_brancha # pobiera najnowsze zmiany
git add . # dodaje pliki do śledzenia
git commit -am "opis zmian" # zapisuje zmiany na branchu wraz z opisem
git diff upstream nazwa_brancha # wyświetla różnice
git push upstream nazwa_brancha # wysyła zmiany na serwer
Minimum Viable Product.
Zawsze na początek twórz najbardziej podstawową wersję, a następnie przekaż ją do realnego używania. Dzięki temu dowiesz się, czego brakuje w pierwszej kolejności, a także co ewentualnie należy poprawić w kolejnej wersji.
Większość projektów umiera jeszcze zanim zostaną opublikowane.
Rozwój oprogramowania to marsz przez punkty kontrolne, a nie bieg przed siebie z nadzieją, że gdzieś się dobiegnie.
Rozpoznanie w boju często nie jest najlepszą strategią.
Facebook w początkowej wersji łączył studentów na podstawie ich uczelni i grupy. Pozwalał publikować wiadomości na ich tablicach. Pozostałe funkcje pojawiły się dużo później.
Jeżeli zatem budujesz aplikację np. do faktur, zrób tylko podstawową funkcjonalność związaną z tworzeniem najprostszej faktury. Dodatki typu filtrowanie, przeliczanie walut, wystawianie korekt itp. powinny być zrealizowane na dalszym etapie.
Jeżeli nie wiesz, w jaki sposób działa funkcja, plugin, metoda itp., lepiej ją najpierw zrozumieć.
Unikniesz dzięki temu wielu kłopotliwych sytuacji, w których ktoś może Cię poprosić o wyjaśnienie związane z zastosowanym rozwiązaniem.
Wyjaśnienia "najważniejsze, że działa" nie są mile widziane w żadnym zespole ceniącym jakość i rozwój.
Trzymaj się tego co znasz. Uzupełnij wiedzę lub - jeśli jest taka potrzeba - poproś śmiało o pomoc.
Niezależnie od technologii, w której pracujesz, zadbaj, aby Twoja wiedza i stosowane rozwiązania były aktualne. Staraj się korzystać z rozwiązań zgodnych z aktualnymi standardami. Chyba, że wymagania w projekcie mówią inaczej.
Na bieżąco rób listę miejsc, z których regularnie czerpiesz wiedzę. Mogą to być m.in.:
Ważne jest regularne aktualizowanie.
Zastosowanie odpowiednich narzędzi znacząco przyspiesza pracę i ułatwia rozwój projektu.
Korzystanie z oprogramowania i rozwiązań rekomendowanych przez Twój zespół, w pozytywny sposób wpływa na spójność projektu.
Dzięki temu praca będzie płynna, wydajna i efektywna.
Jeżeli znasz narzędzie, które mogłoby usprawnić waszą współpracę, przedstaw je zespołowi.
W ten sposób wszyscy będą o nim wiedzieć i z niego korzystać.
Współpracownicy i kandydaci często wspominają podczas rozmów, że szczerość jest dla nich bardzo ważna. Niestety w sytuacji, w której otrzymują negatywny feedback, wygląda to inaczej. Okazuje się, że szczerość jest super, ale tylko wtedy, kiedy wiąże się z pozytywami.
Naucz się wyciągać jak najwięcej informacji ze wskazanych błędów. Przemyśl, jak nie popełniać tych samych błędów w przyszłości. Pamiętaj, że udzielanie negatywnego feedbacku jest stresujące dla obu stron i ma na celu pomoc w Twoim rozwoju. Zastanów się, co jest ważniejsze - realny, szybki i konstruktywny feedback, czy miłe słowa, których głównym celem jest zadbanie o komfort psychiczny?
Nie odkładaj rzeczy na później!
Jeżeli będziesz czekać z wysłaniem maila, przekazaniem zadania do piątku do godziny 15:00, istnieje spora szansa, że twoja wiadomość zostanie zignorowana. Twój współpracownik po weekendzie może mieć już kilkadziesiąt takich wiadomości. Staraj się wszelkie niejasności rozwiązywać na bieżąco i nie kumulować tematów. Przyspieszy to wykonywanie zadań i dobrze wpłynie na wartość Twoją i zespołu.