Pracovní pozice kolem frontend kodéřiny a bludy v pracovních inzerátech

V pracovních pozicích nějak se dotýkajících webové kodéřiny je trochu zmatek. Tenhle článek je tak trochu pro lidi z HR oddělení a vlastně všechny, co zaměstnávají webové vývojáře.
Článek původně vyšel na autorově webu Vzhůru dolů.
Mezi těmi, co nějakým způsobem pracují s HTML/CSS, samozřejmě dominuje obecný vývojář jen zaměřený na konkrétní programovací jazyky. Specializovanější frontend kodér je méně častý. Frontend designér je zatím vyloženě vzácný kousek.
Webový vývojář
Prostě programátor. U Javascriptového vývojáře se znalost frontend prostředí očekává skoro vždycky. Základy HTML/CSS jsou ale potřeba i u tradičně backendových jazyků – u nás odhaduji, že vede PHP, následované Javou a .NET.
Frontend kodér
Specializuje se na HTML/CSS. Z Javascriptu ho nebo ji zajímá především prezentační logika. Tedy view ano, model už moc ne. Oproti vývojářům se očekává větší cit pro design a odborné znalosti typografie. Dobrý kodér vám především – na rozdíl od mnohých vývojářů – nezkazí dobře udělaný design. Podívejte se, co všechno by měl kodér umět. A ano, je to opravdu kodér, nikoliv vývojář.
Frontend designér
Člověk co umí navrhnout uživatelské rozhraní a zároveň jej prototypovat nebo implementovat. Jako samostatná pozice zatím jen vzácně. Firmám, které dosud nemají UX oddělení, by ale takový člověk mohl ušetřit dost nervů s uživatelským rozhraním interních aplikací. Je to technik, takže do technických firem zapadne. Zároveň ale o designu ví docela dost.
Frontend designérů je malinko. Občas si dělám legraci, že v ČR jsme zatím s Adamem Kudrnou dva. Ale nedávno jsem našel inzerát, kde hledali dalšího. Takže brzy budeme tři! ;)
Časté bludy v personálních inzerátech
- „HTML programátor” neexistuje. Tímhle titulem se vám povede jediná věc – urazit autory HTML a programátory ve dvou slovech. Vy ale do firmy zřejmě hledáte frontend kodéra.
- „Webmaster“ už je taky přežitý. Nejspíš hledáte programátora, co velmi dobře rozumí frontendu, UX a marketingu. Jestli ho najdete, je to vzácný kousek. Važte si ho.
- „Webdesignér“ je na tom podobně. Před 10 lety bylo jasné, co chcete, dneska už bude název pozice vnímat grafik, designér nebo programátor jinak. Pokud hledáte někoho, kdo píše CSS a navrhuje design, hledáte „frontend designéra“.
- Když už hledáte „webového vývojáře“, zmiňte rovnou jazyk. Ono je PHP, Javascript, Java nebo Ruby trochu jako náboženství. Programátoři mezi nimi moc nekonvertují, natož po přečtení vašeho inzerátu. Správně tedy „PHP vývojář“ nebo třeba „Ruby programátor“. Programátorovi bude obecné „hledáme webového vývojáře“ znít nekonkrétně a neprofesionálně.
- „Frontend vývojář“ je samozřejmě možný, jen nejspíš hledáte „Javascriptového vývojáře”. Nespleťte si ho se zmíněným frontend kodérem.
CSS = design. Není to programovací jazyk
Ještě jednu poznámku si neodpustím. Když tak procházím pracovní inzeráty, ukazuje to místy dost nevalnou úroveň kamarádění vývojářských týmů se světem designu.
CSS = design. Není to programovací jazyk.
Hledáte někoho „s výbornou znalostí PHP, JS a CSS“ a nepožadujete designérské dovednosti? Chyba.
— Martin Michálek (@machal) June 13, 2016
Ano, CSS můžete používat jen pro implementaci designu. Lidé co píší styly, vždy designérské myšlení nemají. Skoro vždy ale ke škodě výsledku. Pouhý implementátor, který o designu nic neví, dokáže zadání od designéra více či méně pokazit. Na straně designéra či grafika pak také vzniká potřeba děsně neefektivního doslovného zadání.
Snad každý designér mi to potvrdí. Mít kodéra nebo kodérku, který o designu něco ví, mnohé si umí domyslet a mnohé dokáže sám navrhnout, je k nezaplacení.
Pokud se považujete za borce v CSS, za znalost základů UI designu vám zaměstnavatelé budou snášet modré z nebe. Neznamená to, že musíte dělat uživatelské testování a znát byznys firmy. Nejste UX designéři. Ale s grafikou, typografií a návrhem uživatelského rozhraní obecně byste rozhodně kamarádit měli.
Pište „frontend“, raději než „front-end“ nebo „front end“
A když už jsme u textu pracovních inzerátů — v českém textu to pište to jako „frontend“. Dohromady to vyslovujeme, takže psáno „front end“ to vypadá divně. Pomlčka uprostřed slova zase není moc obvyklá, takže „front-end“ taky vynechejte. V angličtině je to samozřejmě jinak.
Vylepšete své znalosti webového frontendu aktuálním přehledem nástrojů moderního kodéra a nových CSS3 vlastností v jednom ebooku.
CSS3 je turing complete, takze tvrdit, ze to neni programovaci jazyk je trochu demence :-)
Tvrdit, že CSS je programovací jazyk jen na základě turinga je ovšem větší demence 8-)
O definici programování se můžeme přít, ale je IMHO zbytečné. Mezi kódováním a programováním je šedivá zóna, kterou definovat nechci. Raději ukážu opačný extrém: vezměte opravdového programátora™, posaďte ho na den k CSS a pak se ho zeptejte, zda programoval. :-)
Turing complete by bol vtedy ak by bol generovatelny gramatikou typu 0. Jeho najjednoduchsi mozny automat je maximalne neperiodicky konecny automat. Implementacia rule 110 v html a css, nie je automat, css tam len zobrazuje stav checkboxov. Ak by aj css selektory implementovali regularne vyrazy tak je css3 maximalne pri type 3.
Niekedy je dobre si overit to co clovek napisal nez stlaci enter.
A víte, že pokud je něco gramatikou typu tři, tak je automaticky i gramatikou typu dva, jedna i nula?
Možno keby sme namiesto tejto nekonečnej debaty o job titloch radšej investovali do získania presahu. A to či už do databáz/backendu, designu/UX alebo grafiky je úplne jedno. Určite by nás to obohatilo viacej ako nekonečné dohadovanie sa ako definovať to čo aktuálne robíme a snažiť sa kresliť fixkou okolo seba hranicu kam už nemôžme preskočiť. Veď je to smiešne.
A ešte niečo. Technológie sa menia rýchlo a časom sa budú zrejme meniť ešte rýchlejšie. Dobrý vývojár vhodne využíva dostupné technológie na dosiahnutie cieľa. Zaostalý programátor sa slepo drží svojho jazyka/frameworku/knižnice/atď. ako náboženstva. A tam je ten zásadný problém.
Takže buďme vývojári. A nie ovce.
Článek je stavěný v reakci na reálný pracovní trh. To o čem píšeš – a já to rád podepíšu – je ideální stav.
Dneska už bych klidně za programátory označil i „spisovatele“ HTML i CSS. HTML sice není tak rozsáhlé, i přesto tam jdou tvořit rozsáhlé struktury, je potřeba hledět na kopu prohlížečů a lze třeba používat i direktivy pro server. V CSS nejenom že je někdy přizpůsobení požadovaný browserům docela maturita, ale lze použít i preprocessory, se kterými už lze tvořit docela komplexní a náročné konstrukce. Chci tím říct, že dnes už jsou to komplexní disciplíny klidně i na plný úvazek a to že se tam neřeší přístupy přímo do paměti nebo se běžně nedělají bitové operace nic neznamená. Na tyto věci normálně člověk nemusí narazit v polovině jazyků.
Jenom nevím, co by označení HTMLkářů a CSSkářů za programátory udělalo s egem programátorů povýšených jazyků.
Diskuze o tom, co si myslíte, nebo nemyslíte, že je programování jsou zcestné, definice je jasná a rozdělení také… Těch je sice několik ale upozorním například na dělení jazyků na
imperativní – říkáte jak se co má udělat, interpret vykonává instrukce, používají se algoritmy (C, Pascal, PHP, Java, C# a dalších x-set jazyků)
deklarativní – říkáte jaký má být výsledek, interpret vykonává deklarace, jak se to stane vás už nezajímá (z nejznámějších CSS, HTML, SQL)
Samozřejmě, některým se to nemusí líbit, protože „kdo nedělá v C není programátor“, ale to nemá nic společného s realitou, to je honění si ega ;)
Taky názor.
CSS je deklarativní, ale SCSS nebo jiný preprocesor už může být dost imperativní.
A furt je používá kodér, kterého já označuju za ne-programátora. Ty definice jsou prostě ošemetné, proto se jim vyhýbám.
Jak už píšu jinde: článek a popis pozic je reakce na reálný pracovní trh. Jsou to kromě jiného i dobře míněné rady lidem z HR. Tituly pozic jako „HTML/CSS programátor“ části vývojářům nevadí, ale jinou část naštve.
U nás backendem nazýváme C++ daemony, co generují data, frontend je potom vše od webserveru až po javascript v prohlížeči. A u nás platí, že všichni dělají vše (od CSS po C++), jsme tzv. fullstack developeři a bereme velký prachy.
Kde?
Ondro, u toho prispevku nejspis asi zalezi na tom, kolik ten clovek povazuje za velky prachy :)
Full stack developeri su drahi. Ja sa za takeho napr. nepovazujem, lebo neviem spravit poriadne pouzivatelske rozhranie, leda tak do toho dokazem fusovat, ked to mam prikazane. Ale su borci, co davaju vsetko.