Full-stack developer

cppdev

Re:Full-stack developer
« Odpověď #15 kdy: 08. 04. 2017, 21:30:31 »
Pokud bychom se bavili obecně o trendech, rozvíjí se sice specializace (UX, design, frontent, backend, marketing...), ale na druhé straně dochází zase ke konvergenci (vývoj frontendu i backendu v jednom jazyce - např. javascript, dále jsou frameworky, které odstíní člověka od webového vývoje - např. vaadin). Navíc i na frontendu se používají návrhové vzory známé dříve spíš na backendu, potřebu mít grafika a sazeče může zase pro řadu projektů eliminovat použití frontend frameworku (např. bootstrap).

A jak se nazývaji developeři, co vyvíjejí tyto frameworky?


Tom682

Re:Full-stack developer
« Odpověď #16 kdy: 08. 04. 2017, 21:53:31 »
Za svých cca 10 let komerční praxe jsem  poznal poměrně dost kolegů a dělal jsem na nejrůznějších projektech od desktopu (C++, C#), přes embedded C, po web asp., javascript, SQL. A nejlepší programátoři, které jsem znal byli FullStack developeři. S těma se mi také nejlépe pracovalo. A to zejména ze dvou důvodů:

1. odladí a promyslí si svoji práci přes všechny vrstvy aplikace protože umí backend i frontend. Správně si navrhne architekturu, protože chápe celou aplikaci. Nemusí nikoho otravovat, aby mo přidal někam funkci. Dokáže najít chybu, protože si to dokáže sám ladit přes celou aplikaci.

2. Z principu není línej, protože byl ochotnej dělat věci navíc, naučit se věci navíc. Když budeš chtít někomu dát úkol, který se týká nové technologie, tak bude pravděpodobně ochotný to udělat a naučit se to.

Já jako vedoucí programátorů mám FullStack developery rád. Mohu jim zadat úkol a oni ho prostě udělají, přidají si funkci do databáze, backendu, udělají si grafiku a je hotovo. To každý vedoucí ocení.

Nemám programátory, kteří se zafixují na jeden jazyk, jednu knihovnu a  musí si nimi řešit API, každou chybu hledají jen od rozhraní svojí vrstvy a pak říkají: "To neni moji chyba, na mojí straně to funguje". A já pak musím zase hledat někoho, kdo je ochotný odladit i tu druhou stranu nebo se na to kouknout jako celek. Hledání chyb trvá věčnost, protože si chybu jednotlivý specialisti přehazují jako horký brambor.

Ideální developer má znolosti do písmene T. Docela slušně (do šířky) zná pár programovacích jazyků a technologií (Fullstack developer) a navíc aspoň v jedné věci je fakt dobrý.


Tomas2

  • ****
  • 310
    • Zobrazit profil
    • E-mail
Re:Full-stack developer
« Odpověď #17 kdy: 08. 04. 2017, 22:32:45 »
jak píše kolega nade mnou, není problém mít full stack developera, ale není to člověk s 3 roky praxí, často to jsou lidi s 5 - 15 lety a opravdu prošli dost technologií a mají dobré zkušenosti.

Osobně také se zaměřuji na jednu, dvě konkrétní technologie, ale dalších deset jsem dělal 1+ roku a s dalšími spousta jsem se potkal na různých projektech. Ne, nedokážu třeba zastat grafika, ale technicky si umím změnit velikost tlačítka ve photoshoptu nebo udělat render hotové scény v solidworks. A ano, šetří to výrazně čas a práci.

Pako

Re:Full-stack developer
« Odpověď #18 kdy: 08. 04. 2017, 23:31:09 »
S tímhle je ale jeden opravdu principielní problém který jsem několikrát zažil na vlastní kůži: totiž že tzv. "Full-stack" ve skutečnosti není "full": pokud není ten jmenovaný "full-stack developer" zároveň také velmi schopný a disciplinovaný architekt tak si ten full-stack ušije sobě (technologiím které zná a zrovna potřebuje) na míru a ve chvíli kdy se má do toho systému zapojit cokoli dalšího tak je to strašně práce pokud to vůbec jde. Typický příklad je "full-stack" od vývojářů co na front-endu znají pouze web. Když je pak potřeba připojit jiného klienta (nativní mobilí aplikaci, integraci s jiným systémem) tak to že API "si upravuje jak zrovna potřebuje" - rozuměj pro svého jednoho webového klienta - je smrtelný konec.

Manažeři je mají rádi - ne že ne - protože zezačátku velmi rychle vybudují něco co "funguje". Ale taky velmi restriktivně zafixuje co se s tím systémem v budoucnu bude dát podnikat, a jak jej rozšiřovat. 

Za svých cca 10 let komerční praxe jsem  poznal poměrně dost kolegů a dělal jsem na nejrůznějších projektech od desktopu (C++, C#), přes embedded C, po web asp., javascript, SQL. A nejlepší programátoři, které jsem znal byli FullStack developeři. S těma se mi také nejlépe pracovalo. A to zejména ze dvou důvodů:

1. odladí a promyslí si svoji práci přes všechny vrstvy aplikace protože umí backend i frontend. Správně si navrhne architekturu, protože chápe celou aplikaci. Nemusí nikoho otravovat, aby mo přidal někam funkci. Dokáže najít chybu, protože si to dokáže sám ladit přes celou aplikaci.

2. Z principu není línej, protože byl ochotnej dělat věci navíc, naučit se věci navíc. Když budeš chtít někomu dát úkol, který se týká nové technologie, tak bude pravděpodobně ochotný to udělat a naučit se to.

Já jako vedoucí programátorů mám FullStack developery rád. Mohu jim zadat úkol a oni ho prostě udělají, přidají si funkci do databáze, backendu, udělají si grafiku a je hotovo. To každý vedoucí ocení.

Nemám programátory, kteří se zafixují na jeden jazyk, jednu knihovnu a  musí si nimi řešit API, každou chybu hledají jen od rozhraní svojí vrstvy a pak říkají: "To neni moji chyba, na mojí straně to funguje". A já pak musím zase hledat někoho, kdo je ochotný odladit i tu druhou stranu nebo se na to kouknout jako celek. Hledání chyb trvá věčnost, protože si chybu jednotlivý specialisti přehazují jako horký brambor.

Ideální developer má znolosti do písmene T. Docela slušně (do šířky) zná pár programovacích jazyků a technologií (Fullstack developer) a navíc aspoň v jedné věci je fakt dobrý.

Re:Full-stack developer
« Odpověď #19 kdy: 09. 04. 2017, 01:22:44 »
S tímhle je ale jeden opravdu principielní problém který jsem několikrát zažil na vlastní kůži: totiž že tzv. "Full-stack" ve skutečnosti není "full": pokud není ten jmenovaný "full-stack developer" zároveň také velmi schopný a disciplinovaný architekt tak si ten full-stack ušije sobě (technologiím které zná a zrovna potřebuje) na míru

No tak ten full-stack developer může svoji architekturu konzultovat s kolegy, ne? Aby mu udělali oponenturu - měl by o to mít zájem, protože se tím učí. Anebo to neudělá a celé to bude rychleji hotové akorát v případě potřeby se pak prostě bude muset vhodné API pro mobilního klienta navrhnout. Taky možnost.


Ivan Nový

Re:Full-stack developer
« Odpověď #20 kdy: 09. 04. 2017, 08:57:38 »
Pánové nechcete snad říci, že nějaká sw firma pokaždé aplikuje jinou architekturu unikátně vymyšlenou a že neexistují předem dané a promyšlené postupy jak co implementovat (moduly, perzistence a vytváření objektů, XML definice objektů, jejich jednoznačná vazba na databázové operace, ORM, na FE zase omezená množina datových zobrazovacích prvků, ze kterých se jen skládají pohledy atp.) a že se to jen tak ad hoc lepí a že každý projekt je vlastně od základu a od vývojáře jiný.

javaman ()

Re:Full-stack developer
« Odpověď #21 kdy: 09. 04. 2017, 09:03:04 »
Tím se liší lopata od vývojáře. Lopata používá jen naučené postupy z minula. Vývojář vždy tvoří věci nově. Nebavíme se o tupém webíku, které zvládnou i malé děti, ale normální byznys logice, která není úplně jednoduchá a musí se vždy dělat na míru.

Takže ano, máš pravdu, že lopata za 80 nebude řešit cokoli nového, když včera to dělala nějak. Dnes to udělá stejně. Stejně jako když se učíš matiku na VŠ. Prostě nazpaměť a pak to opakuješ jako papoušek (zboj). Takhle se dnes ve velké míře dělá. Ale není to vývoj.

Ivan Nový

Re:Full-stack developer
« Odpověď #22 kdy: 09. 04. 2017, 09:17:05 »
Tím se liší lopata od vývojáře. Lopata používá jen naučené postupy z minula. Vývojář vždy tvoří věci nově. Nebavíme se o tupém webíku, které zvládnou i malé děti, ale normální byznys logice, která není úplně jednoduchá a musí se vždy dělat na míru.

Takže ano, máš pravdu, že lopata za 80 nebude řešit cokoli nového, když včera to dělala nějak. Dnes to udělá stejně. Stejně jako když se učíš matiku na VŠ. Prostě nazpaměť a pak to opakuješ jako papoušek (zboj). Takhle se dnes ve velké míře dělá. Ale není to vývoj.

Byznys logika je ale něco jiného, já tady hovořil o provozních věcech aplikace, které jsou vždy stejné, mícháte-li byznys logiku s provozními věcmi, pak žádný vývojář nejste. To míchání je jen jiná forma špaget. Byznys logika má být zřetelně oddělená od provozu aplikace, aby šla podle potřeby vyměnit a upravit, aniž by to vyžadovalo zásahy do provozního jádra aplikace.

Pokud chcete vidět dobře navržený systém, podívejte se na Odoo.

Kit

Re:Full-stack developer
« Odpověď #23 kdy: 09. 04. 2017, 09:53:34 »
Full-stack developer by měl zvládat cca 6 jazyků, včetně návrhu dané vrstvy. To se dá aplikovat u jednodušších (one-man) projektů, ale nedají se od toho očekávat zázraky. Vždy budou některé z těch vrstev "kulhat".

wily

Re:Full-stack developer
« Odpověď #24 kdy: 09. 04. 2017, 10:20:14 »
Ahoj, chtěl bych znáš vás názor na rozmáhající se nešvar s názvem full-stack developer/engineer. Myslím, že nápad je to zajímavý a teoreticky by dával smysl, ale prakticky je to nemysl. Spíše jen firmy chtějí ušetřit, protože naberou jednoho člověka na 3 až 4 pozice. Trpí tam určitě kvalita, ale ne vždy je kvalita to nejdůležitější. Podle mě nemůžete dobře umět více věcí, ale o to nejde.

Chtěl jsem se tedy zeptat zdejších full-stack vývojářů, jak to vidí oni. Jak to vidí v práci a jestli fakt dělají pravidelně všechno a nebo jen mají přehled a jsou zaměřeni na nějakou část.

Přijde mi to podobné jako DevOps. Je to mix špatného admina se špatným vývojářem a to mi také nepřijde jako ideální kombinace.

DevOps je mix špatnýho admina a vývojáře?
Viděl jsi někdy někoho z DevOps? Nebo sis to jen přečetl na internetu?

black3r

Re:Full-stack developer
« Odpověď #25 kdy: 09. 04. 2017, 11:22:13 »
Dobrý programátor by sa mal vedieť prispôsobiť ľubovoľnému programovaciemu jazyku podľa potreby projektu. Ja som weby začínal robiť pred cca. 5 rokmi v PHP, z toho som presedlal na pythonie frameworky Django / Pyramid, robil som back-end a konvertoval statické HTML od FE do templatov, časom som sa naučil JavaScript a dačo z CSS, teraz robím hlavne FE v Reacte, ale keď si potrebujem napísať jednoduché API na back-ende v Djangu, tak si ho viem dopísať sám, nevidím v tom žiadny problém.

Argumentovať tým, že keď niekto robí 30 vecí, tak nedokáže ani jednu vec robiť poriadne je dobrý spôsob argumentácie, ale nemusí to viesť k tomu, že sa neporiadny kód dostane do produkčného prostredia. Však existujú testy, code reviews. Keď niečo neviem, tak sa radšej opýtam kolegov. Keď ideme implementovať novú feature, tak ju vždy navrhujeme aspoň 3, aj keď to nakoniec bude implementovať menej ľudí.

Nevýhody Full-Stacku sú jasné, ľahšie sa človek naučí jednu vec, ako viac vecí. Sám na sebe vidím, že moje 4 roky skúseností s tvorbou webov sa dosť jasne delia na také 2 roky back-end a 2 roky front-end a ľudia s 8 rokmi skúseností s back-endom sú lepší back-endisti ako ja. Ale ja osobne si neviem predstaviť, že by som celý život mal robiť s tými istými technológiami a prestal sa popritom učiť novým veciam.

jpu

Re:Full-stack developer
« Odpověď #26 kdy: 09. 04. 2017, 11:47:42 »
pokladat HTML a CSS za programovacie jazyky? :O

k teme:
dnes je trend taky, ze sa hlada zena pre vsetko a hlavne musi byt lacna. clovek nic poriadne nevie.

Egoistický kokot

Re:Full-stack developer
« Odpověď #27 kdy: 09. 04. 2017, 12:07:04 »
Citace
DevOps je mix špatnýho admina a vývojáře?
Viděl jsi někdy někoho z DevOps? Nebo sis to jen přečetl na internetu?

Děláš ten samý obor jako já? Programuješ v tom samém jazyce jako já? Píšeš to úplně stejně jako já? Ne? Tak jsi špatný vývojář, lopata, lepič a špagetové monstrum. Smiř se s tím.

Kit

Re:Full-stack developer
« Odpověď #28 kdy: 09. 04. 2017, 12:24:56 »
pokladat HTML a CSS za programovacie jazyky? :O

Nevšiml jsem si, že by tu někdo něco takového psal. V každém případě jsou to jazyky, které každý full-stack developer musí znát.

Vykook

  • ***
  • 135
    • Zobrazit profil
    • homepage
    • E-mail
Re:Full-stack developer
« Odpověď #29 kdy: 09. 04. 2017, 12:47:36 »
Posledni dobou vidim spoustu lidi bez akademickeho vzdelani pisici v javascriptu s drzosti nazyvat se software engineer
Žádné akademické vzdělání sice nemám, ale vcelku často, po těch tvejch akademických software engineerech dávám dohromady naprosto nefunkční a zbastlenej kód. Takže tím to asi nebude.