Mire gondolnak a cégek, amikor programozót keresnek?

18/04/06 péntek
ujnemzedek.hu
Mi a különbség a "sima" szoftverfejlesztő és a szoftvermérnök között? Eszik vagy isszák a front-end fejlesztőt? Ebből a kisokosból minden kiderül.

A legfrissebb hírek szerint 25 ezer programozó hiányzik a hazai munkaerőpiacról. Viszont az a kifejezés, hogy "programozó", rengeteg különböző dolgot jelent, nagyon különböző területeket szoktunk informatikus vagy programozó néven emlegetni. Segítünk eligazodni, hogy pontosan mit kell érteni az egyes pozíciókon.

Mikor tágabb értelemben informatikáról beszélünk, akkor a hétköznapi ember nagy valószínűséggel rendszergazdákat lát a lelki szemei előtt, ezzel a szakmával találkoznak ugyanis legtöbbet munkavállalóként. Az üzemeltetési területen dolgozók azonban csak kis szeletét jelentik az informatikusoknak, és munkájuk sokrétű felkészültséget kíván, de programozási képességet kevésbé – írja az egyik hazai műhely, a Codecool programozósuli közleményében.

Ahogy nem kell tudnia programozni az informatikai tanácsadóknak és az informatikai szolgáltatások értékesítőinek sem, ahogy a hardvereket fejlesztő és tesztelő mérnökök esetében sem elvárás a programozói szaktudás. Akkor melyek azok az informatikai szakmák, ahol a programozói szaktudás elengedhetetlen? A Codecool Programozóiskola összeszedte a pozíciókat a junior készségekkel is betölthető feladatkörtől a sokéves tapasztalatot igénylő, legjobban fizető állásokig haladva.

Szoftvertesztelő

A klasszikus értelemben vett szoftvertesztelő olyan tesztforgatókönyveket és terveket készít, amik tartalmazhatnak manuális (kézi) és automatikus (gépi) tesztlépéseket is. Ezeket a tesztforgatókönyveket végrehajtja, méri és elemzi, vagyis a szoftverfejlesztési folyamat minőségbiztosítási oldalán áll. Jellemzően még nem igényel komoly programozói tudást, sokkal inkább precizitást, rendszerszemléletet, dokumentációs készséget.

Front-end fejlesztő

Leggyakrabban webes alkalmazások felületeinek (UI) kialakítását és programozását végző szoftverfejlesztő. A front-end utalhat bármilyen rendszer (nem csak webes) azon részére, amivel a felhasználók találkoznak, így ritkább esetben lehet asztali fejlesztés (pl. WinForms, WPF, esetleg Java Desktop) is. Webes környezetben Javascript programozást, Javascript keretrendszerekkel (pl. Angular JS, React JS, Ember.js, Meteor.js) való munkát és HTML/CSS szerkesztést is tartalmaz a munkakör.

Mobil szoftver fejlesztő

A két legnagyobb mobilplatform az Android és az iOS. Az előbbire Java nyelven, a másikra már jellemzően Swift nyelven írnak mobil alkalmazásokat az erre specializálódott fejlesztők. Azért specializálódnak, mert a mobilalkalmazásoknak van egy egyedi logikája és megjelenítő rétege. Például nagyon más az alkalmazások életciklusa (mint egy webes alkalmazásé) és tudni kell kezelni a különböző képernyő-felbontásokat, platformverziókat, függőségeket, akár hardverfüggőségeket.

Adatszakértő

Mióta rengeteg digitális adat keletkezik és egyre hatalmasabb adatbázisok és adattárházak épülnek, létrejött egy új munkakör, a Data Scientist vagyis magyarul adatszakértő. Programozói tudást leginkább Python, R vagy SQL nyelveken használnak, de mellette szükség van statisztikai és mélyebb matematikai ismeretekre, akár gépi tanulási alapokra (machine learning) vagy adatvizualizációs és kommunikációs skillekre is.


Fotó: Pixabay

Full-stack szoftverfejlesztő

Jellemzően Java vagy C# nyelven, webes keretrendszerek használatával együtt akár a backend, akár a frontend területen dolgozni képes szoftverfejlesztő. A tervezéstől az implementáción át a tesztelésig és akár üzemeltetésig minden feladat a munkakörébe tartozhat, ettől lesz változatos és kihívásokkal teli ez a munka.

Technikai projektmenedzser

A szoftverprojekteket és -folyamatokat nem könnyű úgy átlátni, hogy az illető nem ért a mögöttes technológiákhoz, és sosem látott programokat vagy adatbázist közelről. Éppen ezért a projektmenedzserek új generációjára lett szükség, akiknek van technológiai háttere is. Gyakran programozókból lesznek ilyen menedzserek, akiknek jók a szervezési és kommunikációs készségeik, de azért fordítva is előfordul, hogy egy projektmenedzser képzi magát tovább szoftverfejlesztői témákban.

Tesztautomatizáló mérnök

A tesztek manuális futtatása meglehetősen időigényes feladat és a szoftverek száma egyre nő, ezért automatizálás nélkül elképesztően sok szoftvertesztelőre lenne szükség. Ennek megoldására jött létre egy speciális szoftvermérnöki pozíció. Ennek célja olyan szoftverek írása, amelyek tesztesetek automatikus futtatását és elemzését teszik lehetővé. Bármely nyelven – Java, C#, Python, Javascript, stb. – szükség lehet rá, attól függően, hogy az adott cég miben írja a szoftvereit.

Szoftvermérnök

Itt a mérnök megnevezés általában arra utal, hogy több az elvárás a programozói tudásnál. Mérnök végzettségre (villamosmérnök vagy mérnök informatikus, stb.) azért lehet szükség, mert például orvostechnológiai szoftvereket vagy más, erősen matematikára vagy fizikára épülő szoftvereket azok tudnak készíteni, akik ezt évekig tanulták. Az se ritka, hogy a hardveres részeket is át kell látni, mint például egy képfeldolgozó eszköznél.

Beágyazottrendszer-fejlesztő

A beágyazott rendszer célfeladatot lát el, nem olyan, mint egy általános számítógép. Feladatspecifikus mechanikus és elektronikus alkatrészeket és ezeken futó szoftvereket értünk alatta, mint például egy szervokormány, vagy egy digitális kamera. Azok a fejlesztők vagy mérnökök, akik ilyen rendszereket programoznak, jellemzően villamosmérnöki végzettségűek, mert gyakran kapcsolódik digitális vagy analóg áramkörtervezés a munkájukhoz. Az alacsonyabb szintű programnyelvek (pl. C) mellett tervező szoftverek ismerete is elvárás (pl. CAD-programok).

Szoftvertervező (Architect)

Azokat a szoftverfejlesztőket, akik már sok rendszert építettek fel az alapoktól, és képesek átlátni komplex struktúrákat, több száz modulból vagy szolgáltatásból álló hatalmas rendszereket, azokat egy idő után rendre szoftvertervezési feladatokkal látják el. Ebből következik, hogy junior (belépő szintű) szoftvertervező nem létezik, hiszen rengeteg tapasztalat és komoly rendszerszemlélet kell hozzá. Képesnek kell lenni megtervezni a szoftver működését a legapróbb részletekig, és érthetően átadni a terveket az implementációt végző fejlesztőknek.

„A legnagyobb kereslet a programozási készségeket igénylő munkavállalókra van, de az a jó hír, hogy célzott és jó minőségű oktatással ezen a területen fel lehet zárkózni megfelelő utánpótlással” - mondta Boda József, a Codecool Programozóiskola társalapító-ügyvezetője. A 12 hónapos elméleti és 6 hónapos gyakorlati oktatás akár olyanokból is programozót képesek faragni, akik korábban nem rendelkeztek tapasztalattal ezen a területen.