Ochota vývojáře

Ochota vývojáře
« kdy: 06. 12. 2022, 11:31:46 »
Zdravím vespolek.

Pracuji jako obyčejný IT v malé firmě. Máme již mnoho let eshop s tisíci produkty postavený na open source systému. Doporučil jej vývojář, co nám na míru eshop upravuje. Také je možné dokupovat pluginy.

Ale teď k přístupu vývojáře - jestli je to obvyklé? Často mu musíme zadávat úkoly velmi přesně a kontrolovat to po něm. Např. máme mnoho let starý XML feed pro zboží.cz a potřebujeme jej opravit do nynějších požadavků. Tedy jsme zadali požadavek, že chceme opravit feed podle aktuálních požadavků zboží.cz. Ale vždy na DEMu eshopu musíme kontrolovat co a jak tam udělá. Třeba nějaké parametry tam nejsou, jiné jsou špatně, něco tam být nemá podle požadavků zboží.cz. Tak mu dáváme připomínky. On to opraví, ale zase tam jsou nějaké jiné nové nedostatky a tak stále dokola. Prostě nestačí zadat, že tady najde co zboží.cz potřebuje a v jaké podobě. Je to tak obvyklé? Děje se to při vývoji webu běžně?

Podobně potřebujeme nové Google Analytics. Na to nám doporučil koupit plugin. Ale ten nefungoval a vývojář se odmítl v tom kódu hrabat. Jeho doporučení bylo, abychom si to vykomunikovali s tvůrcem toho pluginu. Ale ten neví, jaké jiné zásahy máme v kódu. Je to správný přístup? A co pak bezpečnost eshopu s pluginy, kde vývojář nezná celý kód? Nemůže tam být nějaké riziko?

Celkově nevím, jestli je chyba u nás na IT, nebo na vývoji. Jaké máte zkušenosti vy?


Ink

  • *****
  • 654
    • Zobrazit profil
    • E-mail
Re:Ochota vývojáře
« Odpověď #1 kdy: 06. 12. 2022, 11:48:17 »
Zdravím vespolek.

Pracuji jako obyčejný IT v malé firmě. Máme již mnoho let eshop s tisíci produkty postavený na open source systému. Doporučil jej vývojář, co nám na míru eshop upravuje. Také je možné dokupovat pluginy.

Ale teď k přístupu vývojáře - jestli je to obvyklé? Často mu musíme zadávat úkoly velmi přesně a kontrolovat to po něm. Např. máme mnoho let starý XML feed pro zboží.cz a potřebujeme jej opravit do nynějších požadavků. Tedy jsme zadali požadavek, že chceme opravit feed podle aktuálních požadavků zboží.cz. Ale vždy na DEMu eshopu musíme kontrolovat co a jak tam udělá. Třeba nějaké parametry tam nejsou, jiné jsou špatně, něco tam být nemá podle požadavků zboží.cz. Tak mu dáváme připomínky. On to opraví, ale zase tam jsou nějaké jiné nové nedostatky a tak stále dokola. Prostě nestačí zadat, že tady najde co zboží.cz potřebuje a v jaké podobě. Je to tak obvyklé? Děje se to při vývoji webu běžně?

Podobně potřebujeme nové Google Analytics. Na to nám doporučil koupit plugin. Ale ten nefungoval a vývojář se odmítl v tom kódu hrabat. Jeho doporučení bylo, abychom si to vykomunikovali s tvůrcem toho pluginu. Ale ten neví, jaké jiné zásahy máme v kódu. Je to správný přístup? A co pak bezpečnost eshopu s pluginy, kde vývojář nezná celý kód? Nemůže tam být nějaké riziko?

Celkově nevím, jestli je chyba u nás na IT, nebo na vývoji. Jaké máte zkušenosti vy?

Odpovídá dodaný výkon smlouvě a ceně? Pokud ano, chyba není nikde a pokud ne, chyba je u vás, že si to necháte líbit. Obecně mi přijde, že co jste si zaplatili, to máte. A nemyslím to jako pochvalu.

Re:Ochota vývojáře
« Odpověď #2 kdy: 06. 12. 2022, 12:01:33 »
Pokud máte dost peněz, určitě seženete lepšího, ochotnějšího, šikovnějšího - případně servisní smlouvu s nějakou firmou, ať nezávisíte na jediném člověku, kterého zítra může přejet tramvaj.
A pokud dost peněz nemáte, musíte se naučit žít s tím, co za takové peníze seženete.

Bugsa

  • ***
  • 106
    • Zobrazit profil
    • E-mail
Re:Ochota vývojáře
« Odpověď #3 kdy: 06. 12. 2022, 12:04:44 »
Normální to není. Vhledem k tomu, že to je one-man-show projekt to je celkem očekávatelné a doporučuji se poohlédnout jinde. Situaci neznáme podrobně, ale kdyby spolupráce fungovala jak má, tak se tu ani nebudeš ptát.

Re:Ochota vývojáře
« Odpověď #4 kdy: 06. 12. 2022, 13:09:18 »
... estli je to obvyklé? Často mu musíme zadávat úkoly velmi přesně a kontrolovat to po něm.
Zadávání úkolu velmi přesně a provádění kontroly je samozřejmostí. Je to důkazem toho, že to máte kvalitně promyšlené.  Nikdo není telepat a tudíž přenášet myšlenky a představy do mozků vzduchem nefunguje. Kvalitní podklady(zadání) mohou a taky většinou předchází potencionálním problémům a chybám.

Např. máme mnoho let starý XML feed pro zboží.cz a potřebujeme jej opravit do nynějších požadavků. Tedy jsme zadali požadavek, že chceme opravit feed podle aktuálních požadavků zboží.cz. Ale vždy na DEMu eshopu musíme kontrolovat co a jak tam udělá. Třeba nějaké parametry tam nejsou, jiné jsou špatně, něco tam být nemá podle požadavků zboží.cz. Tak mu dáváme připomínky. On to opraví, ale zase tam jsou nějaké jiné nové nedostatky a tak stále dokola. Prostě nestačí zadat, že tady najde co zboží.cz potřebuje a v jaké podobě. Je to tak obvyklé? Děje se to při vývoji webu běžně?
Podle mě pokud opravuje chyby vaše tak by si to účtovat měl, ale pokud opravuje svoje chyby tak by si je účtovat neměl, to by mělo jít na jeho triko. Jestli je daný pracovní proces obvyklý? No úplně normální není. Určitá míra iterací při vývoji je samozřejmě zcela běžná.

Podobně potřebujeme nové Google Analytics. Na to nám doporučil koupit plugin. Ale ten nefungoval a vývojář se odmítl v tom kódu hrabat. Jeho doporučení bylo, abychom si to vykomunikovali s tvůrcem toho pluginu. Ale ten neví, jaké jiné zásahy máme v kódu. Je to správný přístup? A co pak bezpečnost eshopu s pluginy, kde vývojář nezná celý kód? Nemůže tam být nějaké riziko?

Celkově nevím, jestli je chyba u nás na IT, nebo na vývoji. Jaké máte zkušenosti vy?

Pokud máte problémy, prostě se poohlédněte někde jinde. Mějte třeba 2 vývojáře paralelně vedle sebe a uvidíte jestli je daný vývojář "špatný" a můžete je porovnat. A taky může nastat situace, že vystřídáte 10 vývojářů a zjistíte že chyba je  u vás.


Re:Ochota vývojáře
« Odpověď #5 kdy: 06. 12. 2022, 13:20:37 »
Tak programátoři je obecně sorta lidí sama pro sebe.
To že chce aby jste mu dávali přesný popisy funkčnosti nejspíše znamená, že máte mezi sebou nekorektní obchodní vztah, tzn. že mu to asi nechcete zaplatit a nebo zpochybňujete výši hodin apod.
Na druhou stranu když mám software, tak musím očekávat, že se programuje průběžně, a to ne pouze nová funkcionalita, ale hlavně i odstraňování chyb a zapracování změn. Proto si myslím, že pro Vás je nejlepší domluvit měsíční paušál, a ten např. po roce "nějakého běhu" mít vázaný pak na funkčnost a odměnu - bonus za funkčnost.

Takže otázka zní, kolik mu dnes platíte např. za hodinu. Jestliže je to cca. 600 Kč za hodiny (úmyslně radši uvádím takovouto nízkou cenu) tak je to vaše volba, ale asi blbá. Pakliže platíte kolem 1500 Kč za hodinu tak už bych očekával že se s ním domluvíte na měsíčním paušálu (např. 6-20 tis.), přičemž za 6t. Vám to bude hlavně monitorovat a za 20tis. to dokáže garantovat. A vyšší cena je opět vaše chyba, protože tam lze očekávat již znalosti senior provozního programátora.

Jinak, ale k naprogramování čehokoliv, je zapotřebí pochopit způsob práce. Např. u "banality" tzn. např. 1 hodina zadání/zjištění požadavků, 1-2 hodiny příprava informací pro externí řešení (XML seznam.cz) a jejich logické propojení na systém, 1 hodina komunikace s vámi a odsouhlasení toho co opravdu chcete a technického řešení, následně 0,1-2 hodiny programování, 2 hodiny testování, 1 hodina testování u vás v test verzi a 1 hodina předání a překlopení do ostré verze a v poslední fázi 0-2 hodiny oprava chyb, pakliže na začátku nebylo podchyceny všechny výjimky (které zadavatel nelogicky argumentuje "to jste měl vědět" nebo "to už děláme jinak"). Takže ta "banalita" může trvat klidně 12 hodin.

Samozřejmě je u "onemanshow" problém, s překlápění programátora do pozice obchodník/tester/programátor, který se ale dá řešit buď rámcovým reálným rozpočtem a nebo měsíčním paušálem.
Každý má rád finanční jistoty, protože nutnost platby složenek je taky jistota.
Takže mé zkušenosti s kýmkoliv, kdo dělá na hodinovku, že když zákazník očekává že jednou za půl roku mu zavolá a něco chce, tak nikdo není moc nadšen, protože každý takovýto člověk hledá ty jistoty a najde si někoho lepšího který využije jeho služby více častěji a pravidelněji. Toto je pak lepší řešit pomocí firem, které mají více programátorů, více zákazníků a výkyv propadu prodeje služeb u jednoho zákazníka kompenzují okamžitě jinde.

alex6bbc

  • *****
  • 1 432
    • Zobrazit profil
    • E-mail
Re:Ochota vývojáře
« Odpověď #6 kdy: 06. 12. 2022, 13:40:57 »
a mate zdrojaky v ramci smlouvy k dispozici?
neuvazoval nekdo z kolegu, ze by do toho zacal vrtat a sam to postupne, treba i levneji pro firmu prevzal.
jestli outsourcing nebo ne, to je vzdy hadanka.

Re:Ochota vývojáře
« Odpověď #7 kdy: 06. 12. 2022, 15:16:55 »
Do jisté míry je to normální, vy musíte vědět, co chcete. Jinak by se mohlo stát, že vývojář dostane požadavek ve stylu "ať je to lepší než konkurence". Vývojář by měl být schopný vám do určité míry poradit a nasměřovat vás, vysvětlit různé možnosti řešení, výhody, nevýhody, důsledky, následky,... ale rozhodnutí bude chtít po vás! Musíte mít ale na své staně někoho, s kým se může na úrovni bavit a kdo může ta rozhodnutí učinit. Vývojář musí vyvíjet podle konkrétního zadání.

A ano, jeho ochota dělat věci nad rámec popisu jeho práce bude úměrná tomu, jak je ohodnocen. Za málo peněz a ve své režii to bude dělat možná tak nějaký nadšenec. Tam ale můžete na s tím, že si to bude dělat zcela podle sebe.

by_cx

  • ****
  • 290
    • Zobrazit profil
    • E-mail
Re:Ochota vývojáře
« Odpověď #8 kdy: 06. 12. 2022, 15:51:19 »
neuvazoval nekdo z kolegu, ze by do toho zacal vrtat a sam to postupne, treba i levneji pro firmu prevzal.

Kdyby měli prachy na někoho z kolegů, tak neřeší týpka, který to má zjevně jako nějakou historickou bokovku.

Rike

Re:Ochota vývojáře
« Odpověď #9 kdy: 06. 12. 2022, 16:35:11 »
Tak to zadávání, aby bylo přesné, to docela chápu. Je takový místní nešvar, že se zadá zadání vágně a nějak si s tím vývojáři poraď. Nevíš, co znamenaj tyhlety kolonky? Zeptej se někoho z obchodního, nemáme čas. Nevíš, jakou jednotku má tohle číslo? Zavolej si skladníkovi, nemáme čas...
Poučený vývojář ty špeky buď najde už při zadávání, nebo vás s tím rovnou pošle k šípku a bude vyžadovat pořádnou dokumentaci a procesní diagramy, nepoučený se s tím bude trápit a jeho cílem bude se vás zbavit :D

Re:Ochota vývojáře
« Odpověď #10 kdy: 06. 12. 2022, 17:37:08 »
Podle mě pokud opravuje chyby vaše tak by si to účtovat měl, ale pokud opravuje svoje chyby tak by si je účtovat neměl, to by mělo jít na jeho triko.
Pokud neni fix, ale podle realne straveneho casu tak nevidim duvod proc by mel vyvojar pracovat zadarmo.
A z me zkusenosti to patrne chudak vyvojar vidi tak, ze mu nedodavate kompletni zadani a nejste ochotni zaplatit testovani (at uz clovekem nebo vytvareni automatizovanych testu).
Kazdopadne evidentne je to fair - pokud dodal opensource tak ho muzete zkusit vymenit. Ale pocitejte, ze to bude bud drazsi nebo maximalne stejne kvalitni.
Děkuji za možnost editace příspěvku.

Re:Ochota vývojáře
« Odpověď #11 kdy: 06. 12. 2022, 17:56:24 »
A to testování se dělá kvůli tomu, aby se zjistilo, zda to odpovídá zadání. Pokud to bude testovat sám vývojář, téměř vždy to dosáhne 100% výsledku, protože to normálně testuje průběžně. Jeden z mnoha důvodů, proč zadavatel nechce nic testovat je ten, že sám vlastně neví co chce, a jak by se měl systém v jaké situaci chovat. Není se pak čemu divit, když následně nahlášené chyby nejsou považovány za chyby, protože nikdo toto konkrétní chování nevyžadoval, ale za feature requesty, které budou odpovídajícím způsobem vyfakturovány.

Nejhorší pozici má takový vyvojář na HPP, který musí na jednu stranu být ochotný ledasco domýšlet, aby uspokojil chlebodárce a dosáhl nějakých výsledku, a zároveň musí umět vyslovené hlouposti slušně odmítnout, aby si nekopal vlastní hrob.

Re:Ochota vývojáře
« Odpověď #12 kdy: 06. 12. 2022, 18:00:05 »
Z trochu většího odstupu, odpovím protiotázkou:
a co Vaší firmě, jak se daří? Rostete? Začíná Vám být "one man show" těsná?

Ony totiž požadavky budou časem košatět. A objem práce, který tomu je schopen dát jeden člověk, navíc pro jednoho zákazníka, je krutě omezený. Prostě one-man show má své meze.

Jsou tu na trhu komerční řešení e-shopů. Jsou tu komerční ERP. A příkop / hranice mezi nimi se možná postupně umazává. Softwarová řešení existují na různých "platformách". Prostě existují standardizovaná řešení, která fungují u spousty zákazníků, za takovým řešením stojí větší či menší firma, tentýž požadavek slyší z více stran a mají víc lidí než jednoho na to, aby ho zapracovali. Protože chtějí svůj SW produkt dále prodávat, tak se o něj dlouhodobě starají, mají na to lidi na plný úvazek, a neúčtují Vám celý jejich čas, protože práce těch programátorů následně slouží mnoha zákazníkům/uživatelům.

Velký software samozřejmě není zadarmo. A přechod na jiný software může taky docela bolet - ale tady záleží na firmě a oboru. Třeba zrovna přechod e-shopu s malým skladem na nový kvalitní soft kdovíjak bolet nemusí. Nadále budete potřebovat na své straně někoho, kdo se bude s dodavatelem bavit, klást mu dotazy, specifikovat a vznášet požadavky, hlásit problémy, pokud to pojede na Vašem vlastním hardwaru (a OS) tak tomu někdo od Vás bude dělat sysadmina...

Sladké je především to, že software s větším počtem zákazníků má zaběhané "best practices", dodavatel se "neučí všechno na Vás", obvykle spíše "přijdete k hotovému". Všelijaká rozhraní pro automatickou synchronizaci ceníků od distributorů, výměna dat se státní správou v kontinuálním průvanu legislativních změn, nebo třeba automatické založení firmy v lokální databázi podle dat z OR, automatizovaná rozhraní pro download dat z bank dle tuzemských zvyklostí, pro objednávání dopravy u balíkových služeb... je toho fůra, a slušný lokální software má toto všechno pokryto. Něco stojí počáteční pořízení, následná kontinuální údržba/podpora může stát třeba tolik jako půl až jeden zaměstnanec... Ve finále si hrajete s kosmetikou e-shopu a drobnými vychytávkami na front-endu, ale uvnitř máte všechno integrováno od dodavatele SW balíku.

Re:Ochota vývojáře
« Odpověď #13 kdy: 06. 12. 2022, 18:04:11 »
1) Z toho jak jste to popsal to může být úplně stejně tak normální, jako nenormální, dáběl je v detailu, z výše popsaného nelze soudit. Je možné, že to je slabý kus flink, který špatně nakopíruje nový feed a ani to nezkontroluje. Stejně tak je možné, že je dokumentace feedu neúplná, nebo chybná, a vaše zadání to nereflekujte (eshopy neprogramuju, toto je jen obrazný příklad)

2) Pokd máte eshop na open source, pak je statisticky pravděpodobnější že a) prodej na eshopu není váš hlavní produkt b) nemá business potenciál řešit drahé custom eshop řešení c) a z nějakého důvodu nechcete používat ready made 3rd party eshop řešení v cloudu(což c je obecně default v dnešní době) v rámci nějakého měsíčního fee.

3) Zadávání tasků a řešení issues a edge casů má dělat někdo jako business analyst, který to má vykomunikovat s vaším dodavatelem programátorem (případně dodat nějaký dokument/procesní graf). Váš business analyst nemá čas? Nebo vůbec business analysta nemáte? Pravděpodobně viz 2 - business potenciál tohoto eshop projektu je natolik malý, že se business nezaplatí, a pravděpodobně vám business analysta dělá dodavatel (kterého to typicky moc asi nebaví), aniž byste to vnímali.

4) Testuješ, testuji, testujeme. Je zcela běžné, že developer otestuje a dále to testuje klient a vrací, zde závisí na nuancích, zdali to jsou chyby natolik triviální (nefunguje tlačítko přidat do košíku) nebo netriviální (nějaký webhook posílá starý JSON při nějakém eventu, a v business case 27b jsme v 6 lidech na callu řešili, co že to má posílat, a nakonec to někdo měl napsat do zadání, ale nenapsal, protože měl dovolenou atd.)

5) Integrace marketing tools jako analytics a podobné jsou kapitola sama o sobě, zvláště když máte open source shop, do kterého máte instalovat nějaký 3rd party plugin kdoví odkoho a v jakém stavu. Má tento 3rd party plugin placenou podporu a tu podporu zajištuje firma nebo Franta z garáže? Opět se rozrůstá prostor problému.

6) Nechci hádat, ale z výše psaného to vypadá, že jste se rozhodli ze začátku pro nejlevnejší cestu (nic proti tomu) v neprobádáném uzemí a postupem času jste se dokódovali do rohu a vývoj se zpomalil. A logicky to vypadá, že za málo peněz byl najat Franta z garáže, který to možná opravdu neumí moc dobře businessově promyslet (což za malé peníze ani nelze čekat) a nebo to nechce promýšlet (což za malé peníze ani nelze čekat).

7) Perla na závěr od kolegy co se eshopum kdysi věnoval, budu citovat. Spousta firem si myslí, že musí na eshopu dělat nějaké super skvělé businessové změny, protože si myslí, že to zvýší prodej (pouze myslí, žádnou metriku nemají ani a/b testování ani nic podobného).
« Poslední změna: 06. 12. 2022, 18:09:05 od LambdaLover »