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:

  1. vývojář (programátor) vytvoří aplikace
  2. Ops nasazuje, spravuje, sleduje aplikace
  3. 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!