Dzisiaj opowiem Wam realia robienia czegoś "na wczoraj", czegoś poniżej kosztów, spraw z pogranicza "mission impossible" albo gdy trzeba odpowiedzieć na pytania klienta/szefa z gatunku "pytania do jasnowidza". Czyli jak to się kończy gdy klient czy szef wymaga od informatyka "niemożliwego".
Każdy informatyk już pewnie na początku swojej kariery zauważył to zjawisko - prawie wszystko jest na przysłowiowe "wczoraj", zawsze na styk możliwości realizacji, zawsze zakłada się że łatwo pójdzie i nie ma scenariusza na inną opcję...
Częściej można spotkać bardzo wyśrubowany termin realizacji zadania niż groźną infekcje wirusową, ambitną konfigurację czy próbę włamu na serwer. Informatyk przeważnie zmaga się właśnie z bardzo krótkimi terminami niż hordami hackerów czy plagami infekcji...
Skąd się bierze zjawisko "mission impossible"?
Weźmy może prosty przykład, który może na początku nie wydaje się bezpośrednio związany z tematem.
W naszym
cenniku można znaleźć pozycję "
Usuwanie wirusów, trojanów oraz innego niechcianego oprogramowania". Jak widać - usługę tą wstępnie szacujemy na koszt od 30 do 100 PLN. Skąd taki rozstrzał?
Najprościej mówiąc - wszystko zależy od danego przypadku - różne ceny niby tej samej usługi wynikają z różnej pracochłonności zadania.
Jeśli infekcja polega usunięciu jednego niegroźnego wirusa, nieaktywnego i siedzącego sobie w zapomnianym katalogu na dysku, to mamy np. 15 minut roboty...
Innym razem jednak trafiamy na zjawisko infekcji totalnej - tu nie wystarczy już prosta procedura, trzeba sięgać po specjalne narzędzia, skanować komputer z poziomu płytki narzędziowej czy pendrive. A im więcej danych i im wolniejszy komputer, tym wolniejsze skanowanie. A pojedyncze skanowanie nie zawsze może dać efekt - czyli czasami zabieg trzeba powtórzyć. A czasami to się nie uda i trzeba całość jednak sformatować...
Taki czarny scenariusz może się ciągnąć godzinami aż osiągniemy pożądany efekt.
A zjawisko "mission impossible" bierze się stąd, że najczęściej zleceniodawca z góry zakłada najbardziej optymistyczny scenariusz, czasami wręcz otwarcie go oczekuje, stawia jako target naszych działań, czasami kojarzy to z czymś w typie best deal - czyli że z góry może utargować najkrótszy czas realizacji, coś jak wariant ekspresowy...
Gdy jednak dowiaduje się jakie są realia i że to wcale nie będzie najkrótszy wariant realizacji usługi, jest niezadowolony, to nie miało tyle trwać, ktoś mu nie dał najlepszej oferty...
Skąd klienci więc biorą swoje wyceny, szacowania?
Każdy z nas ma jakieś swoje wyobrażenie o danej usłudze, głównie na podstawie własnych doświadczeń albo doświadczeń znajomych, rodziny, zewnętrznych konsultacji itp.
Tak więc ktoś, kto widział udaną rozprawę z wirusami jedynie w wersji light (prosta infekcja), być może usuwanie wirusów kojarzy z taką szybką akcją i może być niezadowolony jeśli zabieg pt. "usuwanie wirusów" potrwa kilka godzin w przypadku dużej infekcji.
I odwrotnie - jeśli ktoś przywykł do długich potyczek z falami infekcji, usuwanie pojedynczej, prostej infekcji wywoła u niego uśmiech na twarzy i pewnie pomyśli że ci, którzy realizowali wcześniejsze usługi, może go naciągnęli czy oszukali albo że teraz trafił na super informatyka...
Pamiętajmy że cały czas chodzi o jedną i tą samą usługę w cenniku...
Od danego przypadku i tej kombinacji wrażeń "kiedyś-dzisiaj" zależy czy ocena takich działań będzie pozytywna czy negatywna.
Niektórzy zleceniodawcy czasami doszukują się również jakiegoś wątku handlowego w całej sprawie.
Wygląda to jakby założyli sobie target a potem, widząc że nie jest on osiągany, myśleli "
Dlaczego ten informatyk chce ode mnie więcej pieniędzy za robotę niż zakładałem, czemu tyle siedział nad prostą sprawą? Jaki argument powinienem rzucić aby zszedł z ceny czy zrobił robotę szybciej?"...
Być może odbierają sytuację na zasadzie że robią deal, że to dobijanie interesu, że to gra handlowa... Handlowiec może zejść z ceny i to w większości jest kwestia dobrej woli, więc podobnego podejścia oczekuje się od informatyka.
A czy tak powinno być?
Wg mnie nie. Taka zaoczna wycena czasochłonności powinna uwzględniać różne problemy jakie można napotkać podczas realizacji zadania informatycznego i wynikać z faktycznej trudności zadania a nie tylko z własnego przeświadczenia ile takie zadanie w teorii powinno zajmować albo porównań do innych, w rzeczywistości zupełnie innych przypadków (choć dla zleceniodawcy wydają się one identyczne).
Co z tego wynika?
Najczęściej ocena danego wykonawcy, jeśli nie jest do końca trafna, może się skończyć nawet niespodziewaną zmianą wykonawcy. To zresztą nie jest jedynie domena zleceń w branży IT, podobne sytuacje zdarzają się również w innych branżach.
Tak więc albo jeszcze przed realizacją zlecenia albo już w trakcie jego trwania, zleceniodawca zauważa że to zajmie dłużej i będzie kosztować więcej niż początkowo sobie oszacował. Wówczas albo kładzie nacisk na informatyka - niech zrobi coś aby to jednak zajęło krócej i kosztowało mniej, albo czując się oszukany, zaczyna rozglądać się za innym wykonawcą.
W efekcie wszyscy tracą:
- klient traci bo ma rozgrzebaną robotę, którą potem próbuje przejąć kolejny wykonawca z często jeszcze gorszym skutkiem, niż zaczął pierwszy. Poza tym, chcąc oszczędzić, bywa że klient płaci prawie podwójnie - raz pierwszemu wykonawcy za zaczęcie czy pierwsze etapy roboty, drugi raz drugiemu wykonawcy za dokończenie. O straconych nerwach nie wspomnę. Bywa też że po zmianie wykonawcy na kolejnego klienta czeka dalsze rozczarowanie bo ten drugi jest jeszcze mniej efektywny niż pierwszy - zwłaszcza jak zadanie było właśnie "mission impossible".
- traci pierwszy wykonawca bo czeka go spora ilość spięć i trudnych sytuacji z klientem, robota robi się mało wdzięczna a może się okazać że klient nie zapłaci bo wstępnie oszacował sobie dane zadanie inaczej a wyszło tak jak w realu a nie jak w teorii.
- bywa że traci również kolejny wykonawca, bo dostaje rozgrzebaną robotę po pierwszym wykonawcy, już wstępnie poirytowanego klienta i właściwie na dzień dobry wszystko jest "pod górę". Bywa że drugi wykonawca potwierdza swoim działaniem słuszność działań tego pierwszego i wtedy klient już naprawdę nie wie co z tym zrobić...
Czy są tu jakieś rady dla klientów/zleceniodawców?
Pamiętajmy że ludzie, którzy piszą programy czy systemy operacyjne też się mylą a z tego czasami wynikają problemy w naszej pracy informatyków i są to problemy naprawdę niespodziewane, nigdzie o nich nie uczą w żadnej szkole i właściwie tylko logiczne myślenie lub improwizacja pozwalają wybrnąć z nietypowego problemu. Dlatego nie zawsze wszystko jest na czas, zgodnie z obietnicą i w ogóle wg rozkładu jazdy.
W świecie IT nie zawsze wszystko do siebie pasuje, nie ma uniwersalnego prawa informatycznego, które wymagałoby aby programy pasowały do siebie i nie robiły błędów. Długo jeszcze poczekamy na taką idealną sytuację.
Jeśli chcecie szacować realnie - zapytajcie Waszego informatyka - podwykonawcy czy pracownika. Jeśli nie wie od razu, pozwólcie się mu dowiedzieć - to Wasz przewodnik po świecie IT.
Dopiero wtedy decydujecie ile co ma zająć i ile kosztować.
A co można doradzić informatykom?
Pamiętajcie, klient czy szef często ma swoją wizję, którą być może złapał w biegu, znajomy mu podpowiedział, nikt nie wnikał w szczegóły techniczne - skoro dało się wdrożyć w jednym miejscu, pewnie da się i w drugim. Innymi słowy - nikt nie spodziewał się "schodów".
Uświadomcie go dlaczego ten konkretny przypadek jest inny, wskażcie słabe punkty, wytłumaczcie że to nie deal czy oferta handlowa, że tu decydują konkretne możliwości techniczne a nie dobra wola. Posłużcie się jakimś przykładem z mniej informatycznego aspektu życia - np. "części do Audi nie będą pasować do Peugeota".