Typy vývojářů
kolik typů vývojářů znáte? A pokud jste vývojář, na který typ se odkazujete? V reálném světě jsou hranice mezi různými typy vývojářů rozmazané. Čím profesionálnější se stanete, tím více typů se vám hodí. Podívejme se tedy, kolik typů vývojářů je k dispozici v odvětví vývoje softwaru.
Než začneme, chtěli bychom poděkovat Lorenzo Pasqualis, jehož článek nás inspiroval k vytvoření tohoto materiálu.
abych byl upřímný, většina z nás rozpoznává pouze tři typy vývojářů softwaru: frontend, backend a fullstack. To je zřejmé, ale je to jen polovina pravdy. V dnešní době mohou různí vývojáři se stejnými technologickými zásobníky aplikovat své dovednosti a znalosti na jinou oblast. Je to jako požádat svého mobilního vývojáře, aby pracoval na vytvoření hry. Mohl znát nástroje, ale není vývojářem her. A to dělá obrovskou diferenciaci v typech vývojářů.
začneme s hlavní typy:
Rozhraní
Včera jsme psali největší článku s taháku pro frontenders. Tak kdo jsou? Jedná se o typ vývojářů, kteří se specializují na vizuální uživatelská rozhraní, estetiku a rozvržení. Jejich kód běží ve webovém prohlížeči, v počítači uživatele webu. Pracují na vytváření webových aplikací a webových stránek. Hardware není to, o čem specialisté na frontend obvykle přemýšlejí.
jejich práce vyžaduje pochopení interakce člověk-stroj a principů návrhu více než teorie informatiky.
dovednosti pro rozvoj Frontendů:
- design uživatelského rozhraní (UI)
- design uživatelské zkušenosti (UX)
- CSS
- JavaScript
- HTML
- UI rámců.
Frontend vývojáři potřebují, aby se seznámili s rámců, jako je Bootstrap, Foundation, Páteř, AngularJS a EmberJS, které zajistí skvěle vypadající obsah, bez ohledu na zařízení a knihoven jako jQuery a MÉNĚ, což balíčku kódu do více užitečné, šetří čas tvořit. Mnoho front-end developer výpisy práce také zkušenosti s Ajax, široce používaná technika pro pomocí Javascriptu, která umožňuje stránky dynamicky vložte stažením dat serveru v pozadí.
Backend
druhý nejoblíbenější typ vývojářů. Vývojář backendu se specializuje na návrh, implementaci, funkční logiku jádra, výkon a škálovatelnost softwaru nebo systému běžícího na počítačích vzdálených od koncového uživatele. Integrují širokou škálu služeb, jako jsou databáze, ukládání do mezipaměti, protokolování, e-mailové systémy atd.
co umožňuje přední část webové stránky? Kde jsou všechna ta data uložena? To jsou otázky pro vývoj backendu. Backend webové stránky se skládá ze serveru, aplikace a databáze. Vývojář backendu vytváří a udržuje technologii, která pohání ty komponenty, které společně umožňují, aby strana webových stránek směřující k uživateli vůbec existovala.
Backend rozvoj dovedností:
- Java
- C, C++
- Ruby
- Python
- Scale
- Go, atd.
také použít nástroje, jako je MySQL, Oracle a SQL Server najít, uložit, nebo změnit data a slouží to zpět k uživateli v front-end kódu. Volná pracovní místa pro backend vývojáři často také volají po zkušenosti s PHP frameworky jako Zend, Symfony, a CakePHP; zkušenosti s verzí software, jako je SVN, CVS nebo Git; a zkušenost s Linux jako vývoj a nasazení systému.
Fullstack
zavolejte tomuto vývojáři průvodce, ale on (nebo ona) dělá frontend i backend práci. Vývojář fullstack má dovednosti potřebné k vytvoření plně funkční webové aplikace. Má se za to, že práce na straně serveru i na straně klienta profesionálně otevírá více příležitostí. Jsou to jacks-of-all-trades.
složitost full stack vývoj lze ilustrovat tento obrázek (samozřejmě, existuje více technologií):
Image přes TechCrunch
fullstack developer by měl být schopen:
- nastavení a konfigurace Linux serverů
- napsat server-side Api
- ponořit se do client-side JavaScript napájení aplikace
- otočit „design oko“ na CSS
Mobilní vývojáře
je To vývojář, který píše kód pro aplikace, které běží nativně na spotřebitelské mobilní zařízení, jako jsou chytré telefony a tablety. Tento typ se objevil po rozmachu mobilních zařízení na počátku roku 2000 a explozi trhu se smartphony. Do té doby byl mobilní vývoj považován za podmnožinu vestavěného vývoje (o vestavěných vývojářích budeme psát také v tomto článku).
mobilní developer chápe složitosti mobilní operační systémy jako je iOS a Android, a rozvoj prostředí a rámců používaných psát software na těchto systémech.
mobilní vývojářské dovednosti:
- Java
- Rychlé
- Objective-C
- C, C++ a Java
- Rozhraní pro Programování Aplikací (API), jako je Apple iOS, Android, Windows Mobile, a Symbian
- vývoj Webových jazyků jako je HTML 5 a CSS
- Cross-platform mobilní suites jako Anténa a ZESILOVAČ ( Účetnictví-Management-Propagace)
Herní vývojář
Každou hru-závislý dítě chce, aby se stal herní vývojář v budoucnosti. Ale toto povolání je stejně romantické a zábavné jako komplikované a náročné.
Game developer se specializuje na psaní her, a může spadat do jedné z ostatních kategorií vývojáři, ale často mají specifické znalosti a dovednosti v navrhování a provádění poutavé a interaktivní herní zážitky.
Dovednosti pro herní vývojáře:
- DirectX, OpenGL, Unity 3D, WebGL rámců
- jazyky jako C, C++, a Java
- JavaScript a HTML5
- Swift a Java pro mobilní zařízení.
Data Scientist
tento typ vývojáře píše softwarové programy pro analýzu datových sad. Často mají na starosti statistickou analýzu, strojové učení, vizualizaci dat a prediktivní modelování. Docela romantické, že? Seznam dovedností, které by měl mít datový vědec, však zahrnuje spoustu věcí souvisejících s vědou:
- Statistické programovací jazyky, jako R nebo Python a databáze, dotazování jazycích, jako je SQL
- Pochopení statistiky a různé techniky, které jsou (nebo nejsou) platný přístup
- Znalost metod strojového učení
- Znát Integrální a diferenciální počet a Lineární Algebra principy
- Vědět, jak se vypořádat s nedostatky v datech (včetně chybějících hodnot, v rozporu řetězec formátování atd.)
- Vizualizaci a komunikaci dat, je velmi důležité,
- Mají silné softwarové inženýrství pozadí
- Schopnost řešit vysoké úrovni, problémy
DevOps vývojka
Toto je typ pro vývojáře obeznámeni s technologií, stavět, nasadit a integrovat systém a správu back-end softwaru a distribuované systémy.
vysvětlit cestu:
- vývojář (programátor) vytvoří aplikace
- Ops nasazuje, spravuje, sleduje aplikace
- DevOps vytváří aplikace A nasadí/spravuje/monitory.
DevOps byl umožněn díky cloudu a nástrojům/platformám, které usnadňují nasazení a správu. Dovednosti potřebné devops:
- Kubernetes
- Docker
- Apache Mesos
- HashiCorp zásobníku (Terraform, Tulák, Packer, Trezor, Konzul, Nomád)
- Jenkins, atd.
Software Development Engineer in Test
tento typ vývojáře je zodpovědný za psaní softwaru pro ověření kvality softwarových systémů. Vytvářejí automatizované testy, nástroje a systémy, aby se ujistil, že produkty a procesy běží podle očekávání. Dovednosti potřebné pro inženýry v testu:
- Python
- rubín
- selen.
Embedded developer
vestavěný vývojář pracuje s hardwarem, který není běžně klasifikován jako počítače. Do této kategorie spadají například mikrokontroléry, systémy v reálném čase, elektronická rozhraní, set-top boxy, spotřební zařízení, zařízení IoT, hardwarové ovladače a sériový přenos dat.
Vložené vývojáři často pracují s jazyky jako:
- C, C++
- Montáž
- Java nebo proprietární technologií, frameworků a toolkitů
S embedded developer definice, bychom chtěli dokončit seznam developer‘ typy. Pojmenovali jsme pro vás hlavní typy vývojářů, které se zásadně liší. Ale také jste mohli slyšet o:
– web developer (účel webový vývoj je zřejmý)
– aplikační vývojáře (kteří jsou zdatní ve vytváření různých typů aplikací)
– bezpečnostní vývojáře (kdo vytváří systémy, metody a postupy pro testování bezpečnosti softwaru systém)
– CRM developer (oni pověsit ven s SAP, Salesforce, Sharepoint, a Enterprise Resource Planning)
– Big data developer (zřídka setkal, tento typ vývojáři používat systémy pro distribuované ukládání a zpracování velkého množství dat, jako MapReduce, Hadoop a Spark)
– Grafika vývojáři (oni se specializují na psaní software pro vykreslování, osvětlení, stínování, stínování, utracení a řízení scén)
přihlaste se k Odběru našeho týdenního zpravodaje najít více zajímavých věcí na vývoj softwaru!