-

Pierwsze kroki z Droptica? Zobacz, jak realizujemy onboarding projektu

Chciałbyś skorzystać z profesjonalnej usługi utrzymania, wsparcia lub rozwoju strony internetowej na Drupalu, ale zastanawiasz się, jak oddać swój projekt w odpowiednie ręce? Wyobraź sobie, że już przekazałeś swoją aplikację naszemu zespołowi. Teraz pokażemy Ci, jak pracujemy na początku naszej wspólnej drogi, jakie kroki podejmujemy, żeby poznać Twój serwis i wymagania oraz kto uczestniczy w onboardingu projektu, aby wszystkie etapy przebiegały szybko i sprawnie. 

Wybrałeś usługi drupalowe. Co teraz?

Niezależnie od tego, czy zdecydowałeś się na wsparcie Drupala, czy na usługę tworzenia strony przez zespół programistów Drupala, nadszedł czas, aby powitać Twój projekt na pokładzie Droptica. Podczas tego procesu, zapoznajemy nasz zespół z Twoją istniejącą aplikacją oraz celami biznesowymi. Jeśli podjąłeś współpracę z nami w celu zbudowania serwisu internetowego od podstaw, to jest to moment, w którym poznajemy Twoje dokładne wymagania. 

W tym artykule omówimy jednak głównie kroki dotyczące usługi wsparcia istniejących stron, choć proces onboardingu w przypadku budowania nowej witryny zwykle przebiega podobnie.

Dlaczego onboarding projektu jest tak ważny? 

Z perspektywy agencji jest to kluczowy krok, aby upewnić się, że każdy specjalista zaangażowany w projekt zna zasady i rozumie nie tylko Twoją stronę internetową, ale także cel realizowanej usługi. Ten etap ma również znaczenie pod względem technicznym. Nasz zespół upewnia się, że mamy dostęp do wszystkich informacji potrzebnych do skutecznego przetestowania i wdrożenia Twojej aplikacji internetowej, aby nie było żadnych niespodzianek po drodze.

Onboarding projektu jest również dla Ciebie – naszego klienta. To czas, kiedy możesz poznać cały zespół pracujący nad Twoją stroną (m.in. project managera, tech leadera, QA testera i inżyniera DevOps). Na początku tego procesu przedstawiamy Ci plan działania, wyjaśniamy nasz sposób komunikacji oraz prezentujemy Ci kilka podstawowych narzędzi, z których korzystamy. 

Jak długo trwa onboarding projektu w Droptica?

W Droptica stosujemy elastyczne podejście do onboardingu projektu. Czas trwania procesu zależy od stopnia skomplikowania strony internetowej, nad którą pracujemy. Dla mniejszych stron internetowych i landing page'ów czas ten wynosi około dwóch tygodni od podpisania umowy. W przypadku większych projektów może potrwać dłużej (około miesiąca). 

Cały proces może się również wydłużyć, jeśli nie uzyskamy wszystkich możliwych dostępów. Czasami potrzebujemy też więcej czasu, gdy musimy przeprowadzić szczegółową analizę kodu strony. Oczywiście o wszystkich możliwych zmianach terminu będziemy informować Cię na bieżąco. 

Onboarding projektu – tak poznajemy Twoją stronę internetową

Teraz gdy rzuciliśmy trochę światła na podstawy onboardingu projektu, przeprowadzimy Cię przez kolejne etapy procesu. 

Onboarding projektu w Droptica to pięć etapów, podczas których poznajemy twoją stronę internetową.


Zaproszenie na spotkanie startowe projektu

Pierwszym istotnym etapem onboardingu projektu jest tzw. kickoff meeting, czyli spotkanie startowe z Tobą jako naszym klientem. Jest to okazja do wzajemnego poznania się. Podczas tej rozmowy: 

  • Przedstawiamy Ci zespół projektowy, wyjaśniając role poszczególnych jego członków. 
  • Prosimy Cię o opowiedzenie o wizji produktu i podanie jego kontekstu biznesowego. Dzięki temu możemy zebrać informacje o kluczowych funkcjonalnościach strony. 
  • Ustalamy zasady wzajemnej komunikacji i krótko omawiamy narzędzia takie jak Jira czy Slack. 
  • Specjaliści tech leader i inżynier DevOps ustalają z Tobą techniczne aspekty projektu.
  • Wspólnie ustalamy termin kolejnych spotkań. 

Gdy mamy już ogólny zarys projektu, rozpoczyna się etap przeglądania witryny.

Tworzenie kopii strony internetowej i środowiska programistycznego

Zawsze stawiamy na jakość i bezpieczeństwo serwisu internetowego. Z tego względu podczas onboardingu projektu wykonujemy kopię Twojej witryny na naszych serwerach. Dzięki temu przed publikacją możesz podejrzeć zmiany i bieżący rozwój strony na środowisku testowym.  

W ramach tej czynności budujemy również replikowalne, osobne lokalne środowisko programistyczne w Dockerze. Odzwierciedla ono w jak największym stopniu Twoje środowisko produkcyjne. 

Dlaczego środowisko programistyczne jest tak ważne? Ponieważ pozwala nam wyłapać problemy i naprawić je jeszcze przed właściwym wdrożeniem. Dzięki temu implementowanie zmian na produkcji jest szybsze i bezpieczniejsze.  

Wprowadzenie witryny do kontroli wersji

Kolejnym istotnym krokiem, który podejmujemy podczas onboardingu projektu jest objęcie Twojej strony kontrolą wersji (jeśli nie zrobiłeś tego wcześniej). Co to takiego? 

Kontrola wersji to proces zarządzania i kontrolowania zmian w projekcie. Użycie tego typu systemu pozwala nam śledzić każdą aktualizację i modyfikację w kodzie na przestrzeni czasu. Jeśli zdarzy się błąd, możemy porównać wersje projektu głównego i naprawić go, zanim użytkownicy go powielą. 

Utrzymywanie strony w systemie kontroli wersji jest ważne, zwłaszcza w sytuacji, kiedy nad jednym projektem pracuje wiele osób, tak jak w naszym zespole. Dzięki zastosowaniu systemu wersjonowania (my wybieramy do tego celu GIT), możemy zapobiec rozbieżnościom w wersjach kodu oraz nadpisywaniu fragmentów kodu przez różnych użytkowników. 

Pozwala nam to również eliminować powielanie błędów w oprogramowaniu i wykrywać, czy ktoś niepowołany (np. hakerzy) nie zmienił plików. Oczywiście oszczędza to również czas, który musielibyśmy poświęcić na ręczne sprawdzanie potencjalnych błędów. 

Budowanie skryptów do automatyzacji wdrożeń

Obsługując projekt, staramy się zwiększać wydajność pracy bez utraty jakości oraz minimalizować ryzyko błędu ludzkiego. W związku z tym automatyzujemy wdrażanie nowych zmian na serwer produkcyjny. Choć czynność ta zajmuje około trzech dni, pozwala zaoszczędzić mnóstwo czasu w kolejnych fazach pracy.  

Zautomatyzowany mechanizm wdrażania pozwala nam jednym kliknięciem publikować aktualizacje i modyfikacje w rzeczywistym środowisku. Cały proces jest nie tylko szybki, ale i przewidywalny. Możemy monitorować wydajność strony, od razu testować aplikację i znajdować błędy, które trudno wykryć ręcznie.  

Audyt bezpieczeństwa i przygotowanie rekomendacji

W ostatnim, ale równie ważnym kroku zwykle przeprowadzamy audyt bezpieczeństwa Twojej strony na Drupalu. W tej części procesu przeglądamy kod strony, aby zidentyfikować potencjalne zagrożenia dla bezpieczeństwa i luki w systemie, które mogą skutkować wyciekiem danych, atakami hakerskimi lub innymi niebezpieczeństwami. 

Na tym etapie często sprawdzamy, czy rdzeń Drupala, dodatkowe moduły i biblioteki są aktualne. Jeśli od jakiegoś czasu nie aktualizowałeś systemu, to bardzo prawdopodobne, że Twoja strona jest podatna na ataki hakerów, a być może nawet już została zhakowana. Z tego powodu staramy się wyśledzić każdy problem, aby jak najszybciej go naprawić. 

W wyniku audytu bezpieczeństwa przygotowujemy zalecenia dotyczące działań, które należy podjąć w pierwszej kolejności. Wskazówki te często dotyczą wdrożenia łatek bezpieczeństwa i wykonania aktualizacji, jednak dostosowujemy je do wykrytych problemów lub luk w zabezpieczeniach. 

Kto jest zaangażowany w onboarding projektu?

Nasz zespół w Droptica pracuje, aby zapewnić Ci najwyższą jakość naszych usług. Każda osoba jest odpowiedzialna za inne zadania podczas naszej współpracy. Poznaj role w zespole i obowiązki podczas onboardingu projektu. 

Zespół onboardingu projektu tworzą service delivery manager, pm, DevOps, tech leader i QA tester. 


Service Delivery Manager

Każdy projekt potrzebuje kogoś, kto będzie czuwał nad całością i przebiegiem procesu. W naszej firmie taką rolę pełni service delivery manager. Na starcie osoba ta jest odpowiedzialna za przypisanie project managera i członków zespołu do projektu. Czuwa również nad przepływem pracy i pozostaje do dyspozycji klientów, jeśli chcą skonsultować się w ważnych kwestiach. 

Project Manager

Projekt może odnieść sukces tylko z dobrym project managerem. Jest to ważna rola również w fazie onboardingu. To ten specjalista organizuje spotkania z klientami, ustala zasady komunikacji i przydziela zadania odpowiednim członkom zespołu. Podczas spotkania startowego, PM wyjaśnia rolę każdej osoby i omawia dostęp do narzędzi. Później komunikuje się z klientem i koordynuje onboarding projektu. Na koniec przekazuje informację o zakończeniu procesu.

Tech Leader

Kolejną kluczową rolą w naszym zespole onboardingowym jest tech leader. Ten specjalista, po uzyskaniu niezbędnych dostępów i informacji, zapoznaje się ze stroną internetową i jej istotnymi funkcjonalnościami. Następnie tech leader generuje środowisko programistyczne i wykonuje kopię strony. Ten członek zespołu dokonuje również przeglądu kodu, przygotowuje rekomendacje i tworzy dokumentację techniczną projektu.

Inżynier DevOps

Trudno sobie wyobrazić agencję Drupala bez tego specjalisty na pokładzie. Inżynier DevOps (ang. Development and Operations) łączy umiejętności techniczne i nietechniczne, które są również cennym atutem podczas onboardingu. Specjalista ten jest odpowiedzialny za wprowadzenie strony internetowej do narzędzia Jenkins, aby móc automatycznie tworzyć, wdrażać i testować aplikację. 

Inżynier DevOps przygotowuje również projekt do przyszłych wdrożeń i dodaje witrynę do narzędzia Zabbix w celu jej monitorowania. Na koniec opracowuje zalecenia dotyczące serwerów i baz danych, a także kompletuje dokumentację techniczną.

Tester QA

W naszym zespole nie mogło też zabraknąć specjalisty od quality assurance, czyli kontroli jakości, który dba o to, aby aplikacje cyfrowe spełniały wszystkie wymagania techniczne. Po dokładnym przejrzeniu strony internetowej specjalista ten jest odpowiedzialny za zaplanowanie strategii quality assurance, która określa zasady i mechanizmy testowania strony po wdrożeniu poprawek bezpieczeństwa. Plan ten ustala wspólnie z klientem podczas procesu onboardingu. Tester, wraz z project managerem, decyduje również, czy zadania wymagają zaangażowania designerów.

Jakie narzędzia grają istotną rolę podczas onboardingu projektu? 

Jak widać, podczas onboardingu projektu podejmujemy wiele działań. Do każdego z nich wykorzystujemy systemy i moduły Drupala, które optymalizują i przyspieszają naszą pracę. Przedstawiamy nasze podstawowe narzędzia przypisane do różnych czynności. 

Komunikacja i zarządzanie projektami za pomocą Slacka i Jiry

Do komunikacji z Tobą oraz pomiędzy członkami naszego zespołu wykorzystujemy aplikację Slack. Aby usprawnić kontakt, tworzymy dedykowany kanał tematyczny. To narzędzie doskonale nadaje się do bieżącej wymiany pomysłów, pytań i odpowiedzi. Gromadzi wszystkie osoby zaangażowane w projekt. 

Naszym kluczowym systemem w organizacji pracy jest Jira. Jest to jedno z najpotężniejszych narzędzi do zarządzania projektami, które pozwala nam na planowanie pracy, monitorowanie godzin spędzonych nad poszczególnymi zadaniami oraz grupowanie różnych wątków w większe grupy tematyczne (zwane Epikami). Jako nasz klient, możesz korzystać z Jiry, aby widzieć postępy naszego projektu, przeglądać raporty, a także współpracować bezpośrednio z zespołem w razie zgłaszania błędów.

Jira to narzędzie do zarządzania projektami, które pozwala planować, monitorować i analizować pracę.

Źródło: Atlassian.com


Ocena współpracy w systemie NPS

Na początku naszej współpracy prosimy Cię o przystąpienie do systemu NPS (ang. Net Promoter Score). Jest to narzędzie do mierzenia poziomu Twojego zadowolenia z naszych działań. Przeprowadzanie regularnych ankiet i zbieranie punktów pomaga nam udoskonalać obsługę, komunikację i wsparcie, aby nasza współpraca była udana. 

Tworzenie środowiska programistycznego w Dockerze

Jak już wspomnieliśmy, podczas onboardingu projektu budujemy dla Twojej witryny środowisko programistyczne w Dockerze. W skrócie, Docker to platforma open source, która pozwala naszym programistom tworzyć, uruchamiać, wdrażać i aktualizować stronę internetową odzwierciedlającą Twój oryginalny serwis. Dzięki temu możemy testować wszelkie wprowadzane zmiany jeszcze przed dodaniem ich na produkcję. 

Automatyzacja wdrożeń za pomocą Jenkinsa

Kolejnym pomocnym narzędziem jest Jenkins - multiplatforma open source. Używamy jej do automatyzacji różnych etapów pracy z witryną, takich jak budowanie, testowanie, aktualizowanie i wdrażanie. System ten umożliwia nam również dodawanie zmian do projektu i uruchamianie wielu procesów naraz. Dzięki temu możemy zarządzać każdą akcją szybciej i sprawniej.

Audyt bezpieczeństwa - PHP CodeSniffer, PHP Rector i Hacked!

W zależności od stopnia skomplikowania strony i struktury kodu, dobieramy odpowiednie narzędzia do przeprowadzenia audytu bezpieczeństwa. Oto najbardziej praktyczne rozwiązania:

  • PHP CodeSniffer - pomaga nam sprawdzić, czy kod jest czysty i zgodny ze standardami. 
  • PHP Rector - narzędzie przegląda kod i automatycznie poprawia jego jakość. 
  • Moduł Drupala Hacked! - umożliwia nam sprawdzenie rdzenia Drupala, modułów i skórek. W rezultacie możemy określić, czy linie kodu zostały zmienione (np. w wyniku ataku hakerów). 

Monitorowanie witryny w Zabbixie

Używamy Zabbixa, ponieważ jest to nieoficjalny lider wśród narzędzi do monitorowania serwerów. To rozwiązanie open source pozwala nam monitorować aplikacje internetowe w dzień i w nocy. Dzięki temu możemy natychmiast zidentyfikować i rozwiązać niektóre problemy z wydajnością (zarówno z siecią, jak i z serwerami). Narzędzie Zabbix zbiera i analizuje również istotne dane, które mogą posłużyć do wyciągania wniosków ważnych dla projektu. 

Onboarding projektu w Droptica - podsumowanie 

Jak widzisz, onboarding projektu jest niezbędny w naszej współpracy z klientem. W trakcie tego procesu nasi specjaliści mogą odpowiednio dobrze poznać Twój serwis i wymagania. Dokonują również dokładnego przeglądu aplikacji internetowej, tworzą kopię strony i środowisko programistyczne, wprowadzają witrynę do kontroli wersji, budują skrypty do automatyzacji wdrożeń oraz przeprowadzają audyt bezpieczeństwa. Z drugiej strony, Ty jako nasz klient, masz możliwość spotkania się z zespołem, zadania pytań specjalistom i zapoznania się z planowaną agendą projektu. 

Mamy nadzieję, że teraz łatwiej możesz wyobrazić sobie, jak wygląda przekazanie projektu profesjonalistom. Jeśli potrzebujesz pomocy w utrzymaniu swojej strony internetowej lub w jej rozwoju, możesz polegać na doświadczonych ekspertach wsparcia Drupala.

W ramach wsparcia dla Drupala utrzymujemy istniejące strony internetowe i rozbudowujemy je o nowe funkcjonalności