/ We know how

Czy większa liczba programistów przyczyni się do przyspieszenia prac nad aplikacją?


W tym artykule dowiesz się:

  • Dlaczego nie zawsze liczba programistów wpływa na czas wykonania projektu
  • Dlaczego metodyka Agile w zespole programistów ma lepsze zastosowanie niż Waterfall
  • Dlaczego powiększenie zespołu w pierwszej kolejności może opóźnić prace zamiast przyspieszyć
  • Czym jest skalowanie zespołu i dlaczego warto je zastosować 

Czy zatrudnienie większej ilość programistów przełoży się na szybsze powstanie aplikacji? Czy opłaca się zainwestować w większy zespół? To pytania, które naturalnie pojawiają się w umysłach wielu menadżerów projektu. Wymagają one jednak bardziej złożonej odpowiedzi niż wydaje się to na pierwszy rzut oka. Wszystko zależy od tego nad czym pracujemy i jak. Powszechnie wiadomo,
że „co dwie głowy to nie jedna”, ale jednocześnie mądrość ludowa głosi, że „gdzie kucharek sześć, tam nie ma co jeść”. W poniższym artykule przyjrzymy się zatem, kiedy większa liczba programistów pomaga, a kiedy przeszkadza w projekcie i co wpływa na tę odpowiedź. Zapraszamy do lektury.

 

 

Czy więcej programistów zawsze oznacza szybsze tworzenie aplikacji?

 

Chociaż powszechnie panuje przekonanie, że duże projekty wymagają większej liczby programistów, to rzeczywistość okazuje się bardziej złożona. Łatwo jest wpaść w pułapkę i wysunąć analogię pomiędzy tworzeniem aplikacji a, na przykład, malowaniem domu. Jeśli jeden robotnik pomaluje cały dom w ciągu czterech dni, a dwóch robotników poradziłoby sobie z tą samą pracą już w ciągu dwóch dni (malując różne powierzchnie), to czy nie logiczne jest, że więcej programistów też skończy projekt nad aplikacją szybciej? Praca nad aplikacją to jednak nie to samo co malowanie domu. Przede wszystkim trzeba wziąć pod uwagę złożoność wykonywanej pracy. Złożoność ta wymaga czasu na wprowadzenie nowych programistów i dobrego zarządzania ich zadaniami. Brak koordynacji w zespole może doprowadzić do opóźnień większych nawet niż gdyby oryginalnie przy projekcie zatrudnionych było mniej osób.

 

 

Jak zarządzać większym zespołem programistów?

 

Zarządzanie zespołem programistów wymaga dobrego planowania. Jeśli nowego członka zespołu nikt nie będzie miał czasu zapoznać z kodem, nie będzie on produktywny. Jeśli dwaj programiści w projekcie pracują nad różnymi ulepszeniami na różnych wersjach kodu, to po skończeniu ich prac będziemy musieli poświecić dodatkowo czas na stworzenie wspólnej wersji kodu. Problemów, które mogą pojawiać się przy wzrastającej liczbie pracowników przybywa wraz z powiększaniem się zespołu. Zatem efektywność pracy uzależniona jest przede wszystkim od komunikacji. Regularne spotkania pozwalają zorientować się na jakim etapie przebiegają prace, jakie są priorytety i jakie zadania są następne w kolejce. Szczególnie dobrze sprawdza się zastosowanie metodyki Agile, która w przeciwieństwie do tradycyjnego Waterfall umożliwia pracę w sprintach przez co polepsza elastyczność i rozwijanie powstających rozwiązań. Ponadto istnieją inne sposoby, które mogą znacznie usprawnić wdrażanie nowych członków zespołu i kooperację. Kluczowe jest tu skalowanie zespołu programistów pozwalające na optymalne wykorzystanie dostępnych zasobów, do którego jeszcze wrócimy.

 

 

Jakie są wyzwania związane z dodawaniem dodatkowych programistów do projektu?

 

Zatrudniając większą liczbę programistów do projektu, musimy mieć na uwadze wyzwania z tym związane. Przyspieszenie prac może paradoksalnie wymagać na początku czasu. Trzeba bowiem przewidzieć czas i zasoby potrzebne dla nowego pracownika na zapoznanie się z kodem i zrozumienie architektury aplikacji. Możliwe, że konieczne będzie dostosowanie istniejących procesów i narzędzi pracy do większej liczby osób. Należy pamiętać, że każda nowa osoba w zespole będzie potrzebowała sprzętu i licencji na oprogramowanie z którego korzystamy. Warto zastanowić się czy zasoby projektu pozwalają nam zatem na zatrudnienie dodatkowych osób nim podejmiemy decyzję o rekrutacji. Biorąc pod uwagę, że popyt technologiczny na rynku jest duży, natomiast specjalistów nadal nie wystarczająco (przykładową ścieżkę kariery dewelopera RPA opisujemy w tym artykule), zarobki programistów to istotny koszt dla projektu.

 

 

Jak efektywnie skalować zespół programistów?

 

Skalowanie zespołu programistów to dobra odpowiedź na kontrolę kosztów i może odbywać się na kilka różnych sposobów. Istnieją na przykład rozwiązania pozwalające na zatrudnianie tzw. citizen developers (czyli osób, które angażują się w tworzenie aplikacji, mimo że nie posiadają tradycyjnych umiejętności kodowania). Mowa tu o platformach niskokodowych (ang. Low code), o których pisaliśmy w innym naszym artykule. Podobnie dobrym podejściem może być stosowanie Clean Architure, zgodnie z którym właściwy dobór architektury i sposób kodowania zmniejsza koszty ich wytworzenia, rozwijania i modernizacji. To bardzo ważne, by pamiętać, że samo programowanie nie oznacza końca prac nad aplikacją. Warto tworzyć oprogramowanie w taki sposób, by w przyszłości możliwy był łatwy rozwój aplikacji. Oba te rozwiązania mają oczywiście też swoje wady, o których wspominamy w artykułach im dedykowanym, ale wciąż stanowią innowacyjne podejście do rozwiązania problemu z rosnącym zapotrzebowaniem na programistów.

Kiedy jednak już rozważamy zwiększenie ilości programistów do prac nad aplikacją, warto zastanowić się nad różnymi opcjami. Czy w danym przypadku lepiej sprawdzi się zatrudnienie nowych pracowników czy też może skorzystanie z usług zewnętrznych firm programistycznych, konsultingowych? Warto porozmawiać na ten temat ze specjalistami – w Mindbox mamy doświadczenie ze skalowaniem zasobów do potrzeb projektu i chętnie wspomożemy naszą ekspertyzą.

Porozmawiajmy!

    Wypełnij formularz,
    a my pomożemy Ci wdrożyć najnowsze rozwiązania!