Interjú Csolti Péterrel

Csolti Péter

Csolti Péter informatikatanár, az OKJ szakképzés területén dolgozik. Több intézményben is programozást tanít. A SZÁMALK-Szalézi Szakgimnáziumban a szoftverfejlesztő szak szakfelelőse.

Ismeretsége az informatikával a Word és az Excel programokkal kezdődött. Ehhez kötődik az első oktatói tevékenysége is, egy békásmegyeri közösségi házban. Valami még hiányzott, de nem tudta mi az. Hamarosan bővítette a palettát a grafikai majd, a tervezői irányba, természetesen a hozzájuk kapcsolódó szoftverekkel. De ez még mindig nem volt az igazi, pedig a műszaki rajzok miatt – jó értelemben – alig tudott aludni! Aztán ezek mellett az egyik munkahelyén egyszer csak programozni „kellett”… És akkor rátalált!

Közben és utána kipróbált néhány iskolát. Amiről papírja van az a gazdaságinformatika, számítógép-rendszerprogramozó, C# és Android tanfolyamok, de évről évre folyamatosan képzi magát, inkább célirányos, rövidebb kurzusokkal.

Csolti Péter

Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője – készítette 2019. október 21-én.

K. S.: Mi motivált az informatika felé?

Cs. P.: A Commodore 64-től kezdődött – kb. 12 éves koromban – a dolog. A középiskolában még C64-et tanultunk, de még nem programozást. Sokat játszottunk a haverokkal: hetente legalább kétszer összegyűltünk és „toltuk az InterKarate 3-at”. Elsősorban nem a játék érdekelt, hanem az alkotás lehetősége. A kalandprogram írásának rejtelmei című könyvet kikölcsönöztem a könyvtárból és eldöntöttük, hogy közösen készítünk egy játékprogramot: a barátom szépen rajzol és én meg majd BASIC-ben leprogramozom.

K. S.: Milyen szakterületekben szereztél tapasztalatokat?

Cs. P.: Mérföldkövet jelentett a számítógéppel való kapcsolatom kialakulása során, amikor életem első Phong-árnyalású piros színű golyóját rendereltem a 3D Studio R4 verziójával – később ebből lett a 3ds Max – és láttam, hogy milyen szép és részletekben gazdag, és persze szembesültem azzal is, hogy milyen lassan készült el az állókép. Mindez odaszögezett és eldöntöttem, hogy ilyet akarok csinálni! Tetszett, hogy a grafikus programok szkriptelhetők, programozhatók, testre szabhatók. A grafika érdekelt, de nem ez jelentette a fő csapásirányt. Egy grafikus stúdióban dolgoztam, de inkább programozáshoz kötődő (rész)feladatokat láttam el. Nem szépet alkottam, hanem praktikusat és hasznosat. Szerettem rajzolni. A műszaki rajz is jól ment. Tervezőkkel, építészekkel kooperálva készítettem 3D látványterveket.

Évekig programoztam/szkripteltem a 3ds Max programban, kicsit kitekintettem az AutoCAD LISP nyelvére, de az nem ragadott magával. A Unity programozás is megfogott, a játékfejlesztéshez, grafikához és a virtuális valósághoz kötődve.

„Nem gombot szeretnék nyomkodni, hanem az érdekel, hogy mi történik a gombra kattintva és én azt akarom megírni! Nagyon rá tudok kattanni arra, hogy mi van mögötte.”

Ebben az élet úgy támogatott, hogy mindig adódott lehetőségem programozni. Az első munkahelyi élményem, hogy amikor programozni kellett, akkor jött a felismerés/érzés, hogy „na ezt vártam”. Megvolt az első flow élmény és az alkotás élménye azóta is megvan. Kicsit felemás, hogy nincs egy fizikai megjelenése a programozásnak, de azért megtestesült termék is bőven előállítható. Az alkotói folyamat továbbra is vonz, illetve az informatikához kötődő állandó fejlődés, megújulás is biztosított.

Néhány éve elkezdtem érdeklődni aziránt, hogy mi az informatika szerepe a gazdasági életben, azaz az IT hogyan tud támogatást nyújtani ehhez. Tettem egy kis kitekintést a számvitel és a könyvelés felé. Büszke vagyok magamra, hogy ezt abszolváltam és közben megfogalmazódott bennem, hogy „igen, most már tudom, hogy miért nem ebbe az irányba mentem”. Ha adódna lehetőség, akkor az üzemeltetés felé is szívesen nyitnék.

Az informatika egy feneketlen kút. Ezért akármerre fordulok/indulok, elárvultnak érzem magamat. Persze jönnek a pozitív megerősítések, hogy jól csinálom, amiket talán korábbi tapasztalataim alapján kialakult rutinnak köszönhetek. Érzem a diákokon is, hogy ők még nagyobb tengerbe csöppennek bele és nekik még „egypontnullásabb” a mentőmellényük, mint az enyém volt kezdőként. Szoktam mondani a diákoknak, hogy:

„Ha nem tudsz rákattanni arra, hogy hová nem tettél pontosvesszőt, akkor lehet, hogy nem neked való a szoftverfejlesztés. Nem ez a szakma szépsége, de fontos rész ez is. Következetesnek kell lennünk. Az nem megy, hogy tippelünk.”

K. S.: Hol találtál kapcsolódási pontokat a matematika és a programozás között?

Cs. P.: 15 évesen mágikus élmény volt számomra, amikor láttam, hogy egy térbeli modellezett alakzat megjelent a 2D monitoron és még forgott is. Lenyűgözött az, hogy emberek kitalálták a transzformációs mátrixokat, és azok milyen egyszerűen használhatók. Mindig nagyon jó matematika tanáraim voltak, de valahogy nem szerettem a tantárgyat. Ismerősöktől szívesen hallgatok a témakörben különböző problémákat, megoldásokat, algoritmusokat. Egy ideig aggódtam, hogy nem matek faktosként mi lesz majd velem, hogyan fog menni a programozás? Végül ez nem jelentett gondot. Néha érzem a határaimat egy nagyon absztrakt matematikai eszköztárat igénylő feladatnál, de ez természetes.

„Egy problémát addig érzel bonyolultnak, amíg meg nem oldod. Ez megerősít abban, hogy a megoldással szintet léptél.”

K. S.: A programozás tanításában hogyan jutsz el a starttól a célig? Legyen a start a nyelvi/szintaktikai problémák és a cél az OO tervezési minták.

Cs. P.: Onnan indulunk, hogy megpróbáljuk megfogalmazni a számítógép számára érthető módon a megoldandó feladatot. Tanuljunk algoritmusokat! Mondjuk azt – egyszerűsítve –, hogy minden algoritmizálható és három építőkockánk van: szekvencia, szelekció, iteráció. Egy darabig a szintaktikáról szól a történet és az építőkockákból építkezünk. Egy következő szint, amikor már nem határozzuk meg a feladatspecifikációban, hogy milyen építőkockákat és adatszerkezeteket használjunk, hanem ezeket fel kell fedezni, ki lehet választani, azaz bővül a mozgástér. Elvonatkoztatunk az eddigi konkrétumoktól.

Jönnek az objektumorientált alapelvek. Modellezünk, tervezünk, leképezzük a valós világ dolgait osztályokká és megvalósítjuk azokat objektumokkal. Átgondoljuk, hogy mi mivel/mikkel jellemezhető, mivel mi történik. Az OO három alapelvét – egységbezárás, öröklődés, polimorfizmus – hangsúlyozni kell. A szakdolgozatokban már kijöhetne az OOP ereje/előnyei, de ez sokszor még nem dominál. Az OKJ-ban a jószívű ötöshöz elegendő az OO szemlélet helyes alkalmazása: helyes modellezés, saját osztály(ok), helyes egységbezárás, koncepcionálisan helyes öröklődés.

Nagyobb projektekben már megjelen(het)nek az elosztott alkalmazások és a tervezési minták is. Igazi szakmai kihívás eddig eljutni a tananyagban és a diákoknak átadni azt, hogy „ha eddig eljutsz, akkor nagyon fogsz tudni szárnyalni”.

K. S.: Mi motiválna, ha karriert váltanál?

Cs. P.: Nyilván van az a pénz… Most az életpályám pedagógusi szakaszában vagyok, így innen tudnám megközelíteni a váltás lehetőségét. Ami itt tart jelenleg, az a szoftverfejlesztő szak menedzselési lehetősége. Az iskola hangulata is tetszik. A céges légkört is élveztem, amikor korábban kijártam oktatni. Ha csak azt csinálnám, akkor hiányozna az iskola légköre. Szereztem korábban ipari tapasztalatokat – nem multi környezetben –, de annyira nem éreztem jól magamat, hogy önmagában a pénz ott tartson.

K. S.: Kipróbálnád magadat külföldön?

Cs. P.: Mindkét testvérem élt és dolgozott már külföldön néhány évet, így van némi rálátásom erre. Örültem, hogy meg tudták csinálni. Alapvetően nem változott meg az életük. Persze újdonság, kipróbálható, de önmagában az, hogy külföld nem vonz a dolog, inkább „itthon ülő” vagyok. Nem attól boldogul az ember, hogy külföldön él.

Csolti Péter

K. S.: Ha a szakmai pályafutásod hossza 100 egység, akkor jelenlegi tapasztalataid alapján hol tartasz, és milyen mérföldköveket fogalmaznál meg ehhez kötődően?

Cs. P.: 20 évesen láttam a Kardhal című filmet. Éreztem, hogy hú: ha nem feltétlenül hackerré, de ilyenné kell, hogy váljak! Akkoriban 10 egység körül lehettem. Mindenféle cégnél dolgoztam és körvonalazódott, hogy ez nem én leszek, de a szakmai érdeklődés megmaradt. Ha jönne most egy hasonló kihívás, akkor azt nem tudnám elengedni, illetve nem szívesen engedném el. Egyébként annó a film után, jó pár év elteltével, de kaptam egy ilyesmi lehetőséget. Jól jött, hogy ismertem a Perl nyelvet, belecsöppenve a linuxos világba, egy asztrológia-párkapcsolati-társasági oldalt fejlesztettünk. Az idő tájt még javában dübörgött a Flash, ami szerencsére akkoriban a kisujjamban volt, a horoszkópot programozottan számoltattuk, rajzoltattuk vele.

A mostra az 50-et mondanám. Van még hová és akarok is fejlődni. Nyolc éve léptem a tanári pályára. Aktuálisan az oktatás és a módszertan irányára koncentrálok. Az OKJ-ben szükséges a módszertan. Jelenleg a helyemen vagyok.

Hogy újabb mérföldkő lesz-e? Talán attól is függ, hogy az IT milyen technológiát hoz egyre közelebb a hétköznapjainkba. A Big Data és a mesterséges intelligencia közül engem inkább az utóbbi tudna megfogni. 5-10%-ot minden évben hozzátettem az informatikai tudásomhoz. Az utóbbi időben ez inkább online kurzusokat jelent.

K. S.: Rád keresve a Google alig ad találatot. Tudatos, hogy ennyire korlátozottan vagy jelen online?

Cs. P.: Nagyon szeretem saját magam kézben tartani a dolgokat. Bizonyos értelemben introvertált vagyok, kissé antiszociálisba hajló módon. A magánéletnek meg kell maradnia magánéletnek. Féltem szakmai versenyektől gyerekként. Nem éreztem azt, hogy bizonyos helyeken már megmérettem magamat, így hiányzott ez a fajta szakmai önbizalom. Ez a mentalitás megmaradt: annak ellenére, hogy ma már tudom, hogy ebben-abban jó vagyok, mégsem érzem azt, hogy ezt-azt meg kellene osztani, ki kellene rakni. Tudatos törekvés a részemről a minimális online jelenlét. Fotó is csak az utóbbi időben érhető el rólam, az is csak azért, mert néhány helyen kötelező volt. Amióta elérhetőek a különböző chat platformok, azóta fennáll a veszélye annak, hogy a világon több ezer km-re lévő „ismerősödről” többet tudsz, mint a közvetlen szomszédodról.

Én szeretem magam megélni a saját élményeimet. Nem fotózom például, helyette inkább belül tárolom el az élményt/infót. Nem érzek késztetést arra, hogy ezeket megosszam. Nem akarok időt szánni az online jelenlétem „karbantartására”. Akikkel szeretném megosztani ezeket a dolgokat, azokkal személyesen éljük át az élményeket.

K. S.: Alapvetően más a diákokhoz/hallgatókhoz való hozzáállás az OKJ szintjén és a felsőoktatásban…

Cs. P.: Az OKJ-ban jellemzőbb a személyes kontakt és jobban van helye a fejsimogatásnak. A felsőoktatás kevésbé egyénre szabott. Az OKJ-ban a tutori, mentori feladatok markánsabban jelen vannak. A felsőoktatásban mindezek inkább csupán a tehetséggondozásra korlátozódnak.

A diplomához is adhat lendületet az OKJ. Egyrészt felmentésekkel a felsőoktatásban szóró-tantárgynak tekinthető programozás tantárgyakból, másrészt a tanulásban szerzett tapasztalatok – általában is – hasznosnak bizonyulnak.

K. S.: Milyen visszajelzéseket szoktál kapni az elhelyezkedett diákjaidtól?

Cs. P.: Alapvetően nem a programozási nyelvet kérik tőlük, hanem inkább a helyes objektumorientált gondolatmenetet. Elegendő munícióval keresnek állást a munkaerőpiacon. Az első fél-egy év komoly tanulással szokott telni, de tudnak mire építkezni. Például OO tervezési minták, adatbázis-tervezés. Fontos megerősítés, hogy hasznos az, hogy kimerítően foglalkozunk a szoftverfejlesztő képzésben például az adatszerkezetekkel és a programozási tételekkel, amivel megalapozható az absztraktabb dolgok felé vezető út. A többség tesztelőként helyezkedik el először és kb. fél-egy év gyakorlat után lépnek tovább a fejlesztői pozíciók irányába. Főleg a webes és a mobil irány a jellemző. A Java és a C# nyelvek esetében nagyobb arányban és kiforrottabban van jelen az OO. A webes vonalon (PHP és JavaScript) mindezek másként és kevésbé fordulnak elő. Ez a szakdolgozatok színvonalán is jól megfigyelhető.

Minden diákunktól visszajön, hogy támogatják, mentorálják őket a kezdeti időszakban. Az önálló szakmai fejlődésre vonatkozó igény mindenhol jelen van a szoftverfejlesztő szakmában. Néhol el is várják, hogy úgymond főiskolai/egyetemi végzettséget is előbb-utóbb szerezzenek. Az OKJ-ről továbbtanuló diákok tipikus visszajelzése: „az egyetem = OKJ + matek”.

Szervezett formában nincs alumni követésünk, de gyakran előfordul, hogy a szakdolgozati konzulensükkel egy ideig még tartják a kapcsolatot a diákok, sőt, gyakran visszajönnek az iskolába látogatóba. Ilyenkor felkeresnek szaktanárokat is.

K. S.: Az OKJ képzéseket rendszeresen átalakítják. Most is egy ilyen időszakban vagyunk…

Cs. P.: Amikor hozzányúlnak egy OKJ képzéshez, akkor a koncepció általában világosan látszik és jó is mindig az irány, de a megvalósítás nem mindig sikerül. Most egyelőre annyit lehet tudni, hogy a szoftverfejlesztő szak új nevet fog kapni: szoftverfejlesztő és –tesztelő. Ebből látszik, hogy merre megy a hajó, de az óraszámokat és a témakörök arányait még nem ismerjük (még a ráépülések esetében sem). Hasznos, hogy egyre inkább összecsengenek az OKJ szakok követelményei és a valós munkaerőpiaci igények.

K. S.: Hol van az OKJ helye a munkaerő-piacon?

Cs. P.: Alapvetően jó képességű diákokról van szó. Igény mindenképpen van rá. De ez nem végállomás, csupán egy mérföldkő. Több végzett diáktól is hallottam, hogy OKJ-vel megpályázott olyan pozíciót is, ahová diplomát kértek és fel is vették. Olyan helyeken, ahol nem várnak el több éves gyakorlati tapasztalatot és/vagy nem igényelnek komplex tervezést/modellezést, belépő szintként elegendő az OKJ végzettség. Kezdő/belépő/gyakornoki pozíciókról beszélünk. Alapvetően a szakmai hozzáértés/tapasztalat számít az iparban – ebből a szempontból a papír mellékes lehet. Hasznosnak gondolom, hogy az oktatásban rendelkezésre áll az OKJ – mint lépcsőfok.

K. S.: Az informatikai OKJ szakok között mennyire jellemző, hogy átjárhatóak?

Cs. P.: Az SZVK-k bizonyos mértékben lehetővé teszik ezt. Adott a törekvés arra, hogy a kétéves informatikai OKJ képzésekben az első év legyen közös. A gyakorlatban ez nem tud teljesen megvalósulni és nem is biztos, hogy egészséges. Joggal merülhet fel egy CAD-CAM informatikusban, hogy miért kell neki annyit tanulnia a hálózatokról, mint egy informatikai rendszerüzemeltetőnek, illetve náluk meg miért kell annyi programozást tanulnia, mint egy szoftverfejlesztőnek. 10%-nyi előrehozott szakmai tartalmat engedélyez a kerettanterv. Emiatt az első évben, motivált hozzáállással az átjárhatóság megoldható, azonban ha valaki menekül egy adott szakról, annak nincs szerencséje a felzárkózással. A második évben az átjárás már ésszerűtlen (lenne).

K. S.: Mit tanácsolnál azoknak a diákoknak, akik most szeretnének dönteni/választani az OKJ és a felsőoktatás között? Hasznos lehet némi pályaorientáció a szoftverfejlesztéshez kötődően.

Cs. P.: Sokan azért választják az OKJ-t, mert az „csak OKJ”. Ez úgy értendő, hogy talán kicsit könnyebb és egyszerűbb lesz. Ez még belefér (képesek rá és rövidebb is a képzés). Sokan nem mernek vállalkozni a főiskola/egyetem után. Kettős a hozzáállás: többen túl könnyűnek („ez csak ennyi?”), többen pedig túl nehéznek („miért tanuljuk ezt a nehéz témakört is, amikor ez egy OKJ?”) érzik. Néhányan nem érzik magukat a helyükön, de nem azért mert tényleg nincsenek a helyükön, hanem azért mert ez fejben dől el. Többen úgy gondolják, hogy játékfejlesztők lesznek, mert nagyon szeretnek játszani. Nyilván önmagában ez még kevés.

„Jobb, ha támogatunk valakit abban, amit akar (nyilván ha már tudja, mit akar). Sokkal inkább, mintha csak úgy elindítjuk egy irányba (ha még nem tudja, mit akar)”.

Aki még nem próbálta ki magát ebben a témakörben, az mindenképpen OKJ-vel kezdje, mert jóval hamarabb lesz sikerélménye. A felsőoktatásban tovább tart a sikerhez vezető út.

Aki még nem annyira tanult meg önállóan tanulni, annak is az OKJ-t javaslom, hiszen itt ebben is fejlődhet. A felsőoktatásban nem lesz/lenne ideje/lehetősége megtanulni tanulni.

Az OKJ esetében már két év múlva papírja lesz ahhoz, hogy bármihez kezdjen. Nem tanácsolnám, de akár önálló vállalkozásba is belefoghat. Inkább azt javaslom, hogy szakmai munkát végezzen.

Ha alapvetően nem tudom, hogy milyen motivációval jön a diák (hiszen előfordul, hogy ő sem tudja még), akkor pro-kontra elvekkel tudom orientálni.

Csolti Péter

K. S.: Milyen soft skillek szükségesek/hasznosak a szoftverfejlesztőknek?

Cs. P.: Konkrét skilleket nem neveznék meg, inkább példákat hoznék. Rendszerben gondolkodni, folyamatokat átlátni, illetve egy lépéssel előre látni/tervezni mindenképp szükséges. A logikus gondolkodás is elengedhetetlen, de persze nem a matematikai megközelítésben. A hozzáállást tekintve fontos, hogy merjen próbálkozni, merjen elindulni egy úton, merje felvállalni a saját döntését. Önálló kutatásra is legyen képes. Ne csak passzív befogadó legyen a tanulás során. Kell egyfajta elszántság, kitartás és belső motiváció is, hiszen néha olyan dolgokat is meg kell tanulni, olyan projektekben is részt kell venni, amit nem (mi) szeretnénk.

„Nem jó az a klisé, hogy az informatikus kocka csendben kockul és az jól van úgy, hiszen szakmai véleményt kell nyilvánítania, megfelelően ki kell fejeznie önmagát, képviselnie kell szakmai álláspontját.”

Meggyőzően akkor lehet kommunikálni egy projektfeladatról, ha otthon is belerakott időt/energiát. Ha ez hiányzik vagy kevés, akkor nyilvánvaló, hogy a dolog nem fog menni, de egyben egyértelmű az is, hogy mit kell azért tenni, hogy menjen. Ha egy feladat nincs precízen specifikálva, akkor is nagyon sok mindent észre kell vennie a sorok között. Az angol nyelvtudás nélkülözhetetlen.

Kell reális önismeret is. Egyben nyitottnak kell lenni a világra, a környezetünkre is. Értsd úgy, hogy a fejlődéshez nem a gép előtt töltött idő mennyiségét kell növelni, hanem annak minőségét is. Egy-egy új feladatnál fontos, hogy tudja: menni fog, mert ilyet már csinált, van benne tapasztalata, látott már hasonlót, tud kitől kérdezni, becsülhető meddig fog tartani (és van is annyi időm), illetve: be kell látnia, hogy valami nem fog menni (esetleg csak időhiány miatt).

A társas együttműködés lényeges a szoftverfejlesztésben. Akár virtuálisan is. Akár angolul is. Önállóan is kell tudni dolgozni. Lényeges a beilleszkedés, a tudja hol a helye. Megfelelő hozzáállás: a neki kiosztott részfeladatot akkor is el kell végeznie, ha a másik nem csinálta meg a sajátját. Iskolai környezetben könnyebb elevickélni a projektmunkákban mások farvizén, mint valós feladatokkal munkahelyi környezetben. Előbbi esetben nem szabad azt leszűrni, hogy hatékonyan tud kooperálni – pedig nem.

K. S.: Megfogalmazhatók eltérések a különböző OKJ képzést folytató intézmények között?

Cs. P.: A képző intézmények között mindenképpen vannak különbségek. A kimenetnek elvben azonosnak kellene lennie. Ez egyértelműen szerepel az SZVK-ban (Szoftverfejlesztő szakmai és vizsgakövetelmények). A vizsgafeladatok egyik része központi – tehát egységes –, és nagyságrendileg az első tanév tananyagát kéri számon. A vizsgafeladatok másik része az intézmények hatáskörébe tartozik, azaz a helyi tanárok állítják össze a feladatsort, és többnyire a második tanév szakmai anyagára vonatkozik. Utóbbi esetben követelmény, hogy grafikus felülettel rendelkező komplex alkalmazás legyen. Itt máshová helyezhetők a hangsúlyok (algoritmusok, adatbázis, tervezés, hálózatos kommunikáció, játékfejlesztés), attól függően, hogy ki és mit tanított.

A szakfelelős egy intézményben összefogja a szakot és felelős annak szakmai tartalmáért. Nem kötelező, hogy egy-egy intézményben legyenek szakfelelősök. Úgy tűnik, hogy ott, ahol vannak, szervezettebb/összefogottabb az élet és magasabb színvonalú a kimenet, illetve ahol nincsenek, ott jóval gyengébb a kimenet és nagyobb a szórás. Az óraszámok és tantárgyak tematikájának összeállítása során adott némi mozgástér. A szakfelelős feladata ezek meghatározása, egyeztetése, kialakítása, illetve belsős és óraadó tanárok felkérése a szakhoz kötődő tantárgyak oktatására, tananyagainak kidolgozására és a számonkérés lebonyolítására. A szakfelelős akkor tudja a munkáját eredményesen és hatékonyan végezni, ha megfelelő támogatást kap az intézmény vezetőségétől, illetve amikor egy-egy nem szakmai vélemény/igény/elvárás nem írja felül a szakmai szempontokat. Azokban az intézményekben, ahol több/sok szak is van, nem elvárható a vezetőség részéről, hogy mindegyikhez értsen, ezért is lényeges a szakfelelős szerepe.

K. S.: Milyen markáns különbségeket tapasztalsz a nappali és esti képzésre járó diákok között?

Cs. P.: A nappali tagozatra többnyire közvetlenül érettségi után jelentkeznek a diákok. Sajnos náluk jellemző a következő motiváció, némileg kisarkítva: annyit fog majd keresni, hogy az első fizetéséből is majd jachtot fog venni az unokája. Simán bemondják a 4-600 ezer forintos nettó fizetési igényt. Mindez persze messze nem reális. Ha valaki motivált, akkor nappalisként jóval több ideje van a képzés során, hiszen fiatal, még nem dolgozik, nem családfenntartó.

Az esti/felnőtt képzés esetén általában 25 év felettiek, és már rendelkeznek némi munkatapasztalattal, szakmai gyakorlattal. Náluk sokkal nagyobb a motiváció és tudatos a szándék, hogy ezt miért akarja végigcsinálni. Többnyire karrierváltók. Velük könnyebb dolgozni, annak ellenére, hogy lényegesen kevesebb idejük adódik tanulni, munkahelyi kötelezettségeik is vannak, esetleg gyerekeket is nevelnek.

Az is előfordult, hogy valakiben a képzés során tudatosult, hogy „nekem egy baromi jó szakmám van, és nem fogok váltani”. Úgy érezte a képzés felénél (egy év után), hogy két év alatt a szoftverfejlesztésben nem fog odáig eljutni, ahol jelenleg a másik szakmájában tart. Szerintem ez a pozitív megerősítés hosszú ideig ki fog nála tartani. Messze nem biztos, hogy bármilyen szakmából könnyen válhat valaki szoftverfejlesztővé.

K. S.: Milyen tévhitekkel találkoztál a szoftverfejlesztő képzéshez kötődően?

Cs. P.: Van egy pályaalkalmassági tükör – kvázi egy szintfelmérő, orientáló – amely segít eligazodni/eldönteni, hogy „alkalmas vagyok-e szoftverfejlesztőnek”. Elterjedt tévhit: mindenki úgy gondolja, hogy erre a szakmára alkalmas. Gyakran lezajlik az alábbihoz hasonló párbeszéd:

– Miért nem grafikusnak, orvosnak, biológusnak mentél?
– Mert ahhoz nincs készségem, ahhoz nem értek.
– És mit tudsz a szoftverfejlesztésről?
– Semmit, de azt biztosan meg tudom tanulni.

Mintha mindenki azt gondolná, hogy a szoftverfejlesztéshez nem kell „kézügyesség” (vagy egyebek), hanem beülök, a tanár elmondja, hogyan kell csinálni, megértem, megtanulom és milliomos leszek. Nem tudom, ez hol csúszik el, de a köztudatban ez van.

A másik gyakori tévhit, hogy aki szeret játszani, azt érdekli az informatika és egyben ért is hozzá.

K. S.: Vannak ösztöndíjak az OKJ képzésben?

Cs. P.: Igen, adott intézményi ösztöndíj és állami ösztöndíj is. Függhet a tanulmányi eredménytől, hiányzástól, szakmai eredményektől. Lehet jelképes összegű ösztöndíj, ami arra jó, hogy jól mutat később az önéletrajzban. Előfordulhat komolyabb összegű ösztöndíj is, amivel már lehet tervezni is.

K. S.: Követed a szakmai blogunkat? Van kedvenc olyan cikkünk, amit ajánlanál diákoknak?

Cs. P.: Amikor szakmai tartalomra vágyok, ötletet akarok meríteni, akkor természetesen a repertoárban benne van a szakmai blogotok. Azt nem mondhatom ebben az évben, hogy heti rendszerességgel visszajárok bármilyen oldalra, de azt igen, hogy a jókat rendszeresen felkeresem.

Nem emelnék ki egyetlen cikket, inkább azt, hogy a koncepció, a naprakészség, az aktualitás, a profizmus átsüt az egészen. Rengeteg hasznos, érdekes olvasmány található Nálatok, javaslom a szemezgetést. Kezdve a kipróbálható egyszerűbb – Hello World! másképpen – kódoktól, az adatbázison át az előadásokig, sok minden van. Ezt az IT karrier interjúsorozatot is egzotikumnak vélem a palettán. Szóval nem emelnék ki cikket, de azért javasolnék a diákoknak valamit: a záródolgozatukkal kapcsolatban sokat mondom, hogy ne arra törekedjenek, hogy „javíthatatlan”, befejezett, szakemberek által kikezdhetetlen munkát adjanak le, persze rakjanak bele mindent, hanem arra, hogy legyen meg a koncepciójuk, tudják, hogy az adott problémára miért azt a megoldást választották. Ezt az érzést, illetve a tanácsom magyarázatát láthatják a blogotok szakmaiságában, megjelenésében. Megéri felkeresni és időt szánni rá a tanulmányok során. Talán utána is.

K. S.: Véleményeznéd tanfolyamaink tematikáit?

Cs. P.: Nem titok, hogy nagyságrendileg a könyved alapján tanítok. Azért esett rá a választás, mert nem találtam más, módszertanilag ilyen jól felépített könyvet. Persze jó, hogy vannak benne gyakorló feladatok, meg kidolgozott példák is. A sokéves oktatói tapasztalat nagyon érződik. Röviden szólva: ugyanezt gondolom a tanfolyamaitok tematikáiról. Persze van, amit én máshogy csinálok/csinálnék, de biztosra veszem, hogy számodra ezeknek megvan a helye és nem véletlenül került oda. Hogy mondjak példát is, ilyen a fájlkezelés, talán az OKJ kimenet miatt, de jóval előrébb hozom az alapjait. Mélységeiben ráér később is. Illetve megemlíteném a tervezési mintákat, ami egy haladó, absztrakt szint. Ott a helye az OO ismeretek bővítésénél, én mégis valahogy külön kezelem, az OOP „elsajátítása” után mintegy ablakot nyit a következő szintre.

K. S.: Van kedvenc IT-s idézeted, mémed?

Cs. P.: Nem is tudom… ami van, az kicsit talán elcsépelt. Ha akarod, akkor felidézhetek ezekből, azonban egy időben gyűjtöttem a diákok válaszait, név nélkül természetesen. Van néhány, amire emlékszem, IT oktatós körökben szerintem megállják a helyüket:

– Mi a strukturált program jellemzője?
– Hogy teljesen strukturált.

– Mire jó a Scratch?
– Egy állatnak parancsokat lehet adni, és az végre is hajtja őket.

– Milyen számokkal tesztelnéd a fenti algoritmust?
– Háromfélével: 0, negatív és pozitív számmal.

– Mi a különbség az osztály- és az objektumdiagram között?
– Az objektumdiagram részletes, míg az osztálydiagram a felületes tervezést szolgálja!


Blog bejegyzéseink IT karrier témakörben

Csolti Péter

Interjú Csolti Péterrel

Csolti Péter informatikatanár, az OKJ szakképzés területén dolgozik. Több intézményben is programozást tanít. A SZÁMALK-Szalézi Szakgimnáziumban a szoftverfejlesztő szak szakfelelőse. Ismeretsége az informatikával a Word és az Excel programokkal kezdődött ...
Bővebben
/
Révész András

Interjú Révész Andrással

Révész András alapvégzettsége biológus, ökológia szakiránnyal. Szakmai pályafutását tájökológiával kezdte, azon belül is élőhely térképezéssel, amihez kötődik a térinformatika. Négy évig kutatás-fejlesztéssel foglalkozott az MTA Ökológiai és Botanikai Intézetében, majd ...
Bővebben
/
Schmidt Attila

Interjú Schmidt Attilával

Schmidt Attila három éves szoftverfejlesztői gyakorlattal (főként Android platformhoz kötődően) és két éves szoftvertesztelői tapasztalattal rendelkező mérnök-informatikus. Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője ...
Bővebben
/
Takács Roland

Interjú Takács Rolanddal

Takács Roland egyéves automatizálási teszt mérnöki és ötéves professzionális adatbázis-kezelés (MSSQL, Oracle) tapasztalattal rendelkező mérnök-informatikus. Jól érzi magát multikulturális környezetben. 2017 nyara óta külföldön él és dolgozik. 2018 őszétől PL ...
Bővebben
/
Lovas Bertalan

Interjú Lovas Bertalannal

Lovas Bertalan 22 éves pályakezdő szoftverfejlesztő. A kütyük mindig érdekelték. Hivatásként és hobbiként is gondol a programozásra. Sportos, korábban dzsúdózott, tornázott és a műugrást is kipróbálta. Korábban részt vett a ...
Bővebben
/

Interjú Görög Ibolyával

Görög Ibolya protokollszakértőt mindenki ismeri, bemutatni nem szükséges. De mégis illik, legalább röviden: 1987-től 1999-ig a Miniszterelnöki Hivatal protokollosa, majd protokollfőnöke volt, illetve 1999-től felnőttképzésben oktat. Érdeklődési körébe tartoznak: viselkedéstörténet, ...
Bővebben
/

Interjú Szűcs Tiborral

Szűcs Tibor mérnök-informatikus. Jelenleg a Corvinus Egyetem Koordinációs Irodáján dolgozik órarendszerkesztőként. Ez a feladat a létesítménygazdálkodáshoz kötődik és ő osztja be – sok-sok szempont alapján – az előadásokat, szemináriumokat, számítógépes ...
Bővebben
/
Nádai Gábor

Interjú Nádai Gáborral

„Nádai Gábor vagyok, de sokan leginkább Mefiként ismernek, a legtöbb felületen a @mefiblogger nicknév alatt vagyok elérhető. Eredetileg mérnökinformatikusként végeztem, a kétezres évek közepén a fősuli mellett saját vállalkozásba kezdtünk ...
Bővebben
/
Markovics Győző

Interjú Markovics Győzővel

Markovics Győző nem­zet­kö­zi kap­cso­la­tok sza­kos köz­gaz­dász, va­la­mint po­li­to­ló­gi­át is ta­nult a Bu­da­pes­ti Cor­vi­nus Egye­te­men. Az egye­tem­től fő­ként időt ka­pott – fel­nő­ni a kép­zés alatt. Gya­kor­la­ti is­me­re­te­it min­dig mun­ká­val sze­rez­te. Csa­lá­di ...
Bővebben
/

Interjú Révész Andrással

Révész András

Révész András alapvégzettsége biológus, ökológia szakiránnyal. Szakmai pályafutását tájökológiával kezdte, azon belül is élőhely térképezéssel, amihez kötődik a térinformatika. Négy évig kutatás-fejlesztéssel foglalkozott az MTA Ökológiai és Botanikai Intézetében, majd rövid ideig a Földművelésügyi és Vidékfejlesztési Minisztériumban dolgozott, ahol a projektmunkák csökkenésével úgy döntött, hogy „most valami nagyon mást kell csinálni, mert az alternatívák személyesen és szakmailag sem voltak jók”. Angliába két ok miatt költözött az EU csatlakozás után: nyelvtanulás és szakmai fejlődés. Úgy tervezte, hogy miután anyagilag rendbe szedi magát, visszaköltözik Magyarországra. Angliában egy helyi hatóságnál helyezkedett el és térinformatikával foglalkozik 2008 óta. A térinformatikán belül feladataihoz tartozik a térképi adatbázis-kezelés, web-térképezés, továbbá bármi, amit el tud végezni: különböző adatformátumok közötti konvertálás, rendszerintegráció, adatelemzés, stb. Napi feladataihoz kötődően sok mindent automatizált, így felszabadult munkaidejében folyamatosan fejlődik, foglalkozik adatbázis-kezeléssel, dokumentumkezelő rendszerek optimalizálásával.

Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője – készítette 2019. július 7-én.

Révész András

K. S.: Hogyan kerestél munkát külföldön?

R. A.: Már külföldön élő ismerősöktől tudtam, hogy az álláskeresés nem gond: aki akar és tud dolgozni, az el tud helyezkedni a szakmájában is. Tettem, amit sokan mondtak: jártam az ügynökségeket, az álláskereső portálokat, a szóba jöhető munkahelyeket.

Két év többnyire betanított munkák után 2008-ban kaptam meg Halifaxban az első rendes(ebb) állást, ahol hat évig dolgoztam. Több helyre is pályáztam és egyszer csak írtak, hogy várnak interjúra. Ez egy szakmai állásinterjú volt, így a kezdeti izgalom után hamar feloldódtam és még jól is éreztem magam. Hárman felvételiztettek: két leendő kollégám és egy HR-es, de a HR-es nem volt tól beszédes, szinte kizárólag szakmai kérdésekről beszélgettünk. Halifax nagyszerű hely, elég sok természethez közeli terület van, ahol szerettem lenni.

A következő váltást nem terveztem, de éltem a lehetőséggel 2014-ben. Informálisan ismertem kollégákat a környező hatóságoktól és megtudtam, hogy Barnsley-ban keresnek térinformatikust. Egyrészt a több fizetéséért váltottam, másrészt így ismerőseim nagyobbik része közelebb került hozzám. Kellemesen érzem itt magamat, és a következő néhány évben nem is tervezem, hogy munkahelyet/lakóhelyet váltok.

K. S.: Hogyan fejlődött az angol nyelvtudásod?

R. A.: Az egyetem óta folyamatosan. Nem csak az informatikában alapvető az angol nyelvtudás. Rengeteg könyvtári szakirodalom a biológiához kötődően is kizárólag angol nyelvű – egyszerűen nem fordítják le, mert a célközönség kicsi. A szakmai cikkek többsége is angolul van. Követelmény volt, hogy ismerjük az aktuális nemzetközi szakirodalmat, továbbá eleve a diplomához szükséges a nyelvvizsga/nyelvtudás, így erre mindig is készültem. A minisztériumi munkámhoz is szükséges volt az angol nyelvű anyagok olvasása.

„Angliába kiváló szövegértési/olvasási/írási angol nyelvi készségekkel mentem ki. A szóbeli dolgok kezdetben gyengébben mentek.”

Ráadásul sokféle ügyet telefonon lehet intézni – például telefon társaságoknak nincs is személyes ügyfélszolgálata –, így szóbeli kommunikációra kényszerültem, egyben ennek fejlesztésére is. Az első rendes(ebb) állás előtt is dolgoztam, aktívan beszélgettem sokféle kollégámmal, így az említett interjúra már rendelkeztem biztos szóbeli nyelvtudással. Az informatikus kollégákkal rendszerint félszavakból is megértjük egymást. Ha az anyanyelvi tudást 100%-nak vesszük, akkor az enyém kb. 30%-osnak tekinthető.

K. S.: Voltak markáns különbségek a 2008-as és 2014-es szóbeli interjúid között?

R. A.: A körülmények azonosak voltak: mindkét esetben két leendő kollégám/főnököm és egy HR-es vett részt a szóbeli interjún. A helyi hatóságoknál eléggé formálisak a felvételi eljárások. 2008-ban kezdőként főként azt kellett prezentálnom, hogy Magyarországról mit hoztam. Akkor még voltak nyelvi nehézségeim, így elég gyakran körül kellett írnom, magyaráznom dolgokat. 2014-ben már valamennyire már ismertek és tudták, mire vagyok képes. Akkor és ott sokkal konkrétabb igények voltak már. Ez egyszerűbbnek bizonyult, mert tudtam, hogy hová megyek és mit várnak el tőlem, így könnyebb volt felkészülni.

K. S.: Szükségesek Angliában álláskeresés során az ajánlások, referenciák?

R. A.: Halifaxban és Barnsley-ban is két-két referenciát kértek. Az egyik referenciát általában az előző munkáltatótól kérik. A referenciákat többnyire csak a nyertes pályázónál ellenőrzik le, miután visszajelzett, hogy elfogadja az állást. Amikor Halifaxba jelentkeztem, az ügynökségen, örültek is, hogy jó helyre kerültem. A második referencia általában szabadon választható, akár szakmai, akár személyes is lehet. Mindig könnyen be tudtam ezeket szerezni.

„Angliában fontosak a referenciák és le is ellenőrzik azokat.”

Az ellenőrzés kétféleképpen történik. Az egyik része formális: számszerűsíthető, munkaviszonyhoz kötődő adatokból áll, például mennyit volt betegállományban munkaviszonya alatt a munkavállaló. A másik része inkább informális, és a soft skillekre vonatkozik.

K. S.: Milyen munkakörülmények és -szervezés jellemzi a munkádat?

R. A.: Megvan a szervezeti hierarchia, de még a Head of IT-val egy nagy légterű irodában vagyunk. Ha valaki újként kerül be a rendszerbe, akkor például rögtön nem derül ki, hogy az egyes területeknek ki a vezetője (azaz nincs dedikált külön irodája, ahol mindig megtalálható). Továbbá Hot Desking rendszerben működünk: nincs saját asztal, csak egy terület, ahol bármelyik szabad asztalhoz le lehet ülni dolgozni. Így sokkal kötetlenebb a kapcsolat a munkatársak és közvetlen vezetők között.

A teljesítmény az, amit a vezetés elvár. A munkaidőnk flexibilis. 7 és 19 óra között akkor járunk be, amikor csak akarunk. Az előírt óraszámnak meg kell lennie minden héten, de egyébként teljesen magunk osztjuk be az időnket. Sosem kaptam még olyan visszajelzést, hogy bármi gond lenne azzal, hogy mikor érek be dolgozni.

A versenyszférához viszonyítva a közigazgatásban – Angliában is – alacsonyabbak a bérek. Saját főnökömtől tudom, hogy a bérrel versenyezni nem tudnak és nem is akarnak. Ehelyett inkább más jellegű támogatásokra helyezik a hangsúlyt. Investing in People – azaz megkérdezik, hogy mire van szükségem a hatékony munkavégzéshez, hogyan szeretnék fejlődni és ehhez ők mit tudnak hozzátenni. Támogatják a munkavégzéshez szorosan nem kötődő hobbi projekteket. Adott a lehetőség az otthoni munkavégzésre is. Családos kollégák főként azért szeretnek helyi vagy központi hatóságnál dolgozni, mert munka- és szabadidejüket rugalmasabban be tudják osztani.

Révész András

K. S.: Van-e kötelezően előírt képzési, továbbképzési kötelezettséged?

R. A.: Formális követelmény ugyan nincsen, de elvárják a fejlődés iránti elkötelezettséget. Egy angol álláshirdetésben például sokszor előfordul, hogy a pozíció betöltéséhez megadott végzettség vagy adott idejű szakmai gyakorlat szükséges. Főleg arra kíváncsiak, hogy mit tud elvégezni az illető, mire tudják felhasználni (a versenyszférában nyilván még az is számít, hogy az illető mennyi pénzt hoz). Az igazából másodlagos, hogy mindez a tapasztalat honnan jött.

Jellemző egy Personal Development Framework (PDF) rendszer. Évente kétszer a közvetlen főnökkel való megbeszélés során szoktunk egy elég flexibilis tervet készíteni. Mi az, amit el szeretnék érni? Mi az, amire ehhez szükségem van (amiben ő segíteni tud)? Milyen vizsgákat szeretnék teljesíteni? Van egy oktatási keret, amely felhasználó például vizsgadíjak kifizetésére. Képzés esetén adható munkaidő kedvezmény is. A helyi hatóságok ezekkel az eszközökkel elég sikeresen képesek a munkaerő megtartására. A rendszer formalizált: egy online formanyomtatvány kitöltését jelenti. Ez többnyire önkéntes vállalásokat tartalmaz, de mindenképpen közös megegyezésen alapul. Ha valami nem jön össze (időre), akkor nincsenek retorziók és inkább a tanulságok levonása a lényeg. Nem kényszerekkel élnek, hanem sokkal inkább motiválnak.

Néhány kollégámat bumeráng embernek hívják. Korábban itt dolgoztak, elmentek, majd visszajöttek. Közben kipróbáltak mást. Egyébként kilépéskor mindig elmondják a munkavállalóknak, hogy szívesen visszafogadják őket, hiszen ha már korábban egyszer beilleszkedtek a rendszerbe, akkor jóval kevesebb ráfordítással képesek produktív munkavégzésre, mint egy újonc, akit be kell tanítani, hogy képes legyen az adott feladat elvégzésére, adott munkakör betöltésére.

K. S.: Minek köszönhető, hogy a helyi hatóságoknál átrendeződtek a csoportmunkával kapcsolatos elvárások?

R. A.: A 2008-as gazdasági világválságot megérezték az angol helyi hatóságok is. Ezek bevétele két részből tevődik össze: a helyi adókat kiegészítik a központi költségvetésből. Utóbbi jelentősen megcsappant, körülbelül a felére esett vissza. Emiatt a helyi hatóságoknál egyrészt jelentős létszámleépítés történt, másrészt megjelent egy nagyon erős vezetői szándék a folyamatok optimalizálására. Utóbbi jórészt folyamatok automatizálását, digitalizálását jelentette, valamint a személyes ügyintézést fokozatosan felváltja a telefonos és online ügyintézés. Mindez eléggé kreatív hozzáállást és munkavégzést igényel, főként a csapatmunka területén. Én főleg a BackOffice-ban dolgozom (többnyire adatokkal), de ha valamit meg kell valósítani, akkor együttműködünk a Frontend-del és a Web-designerekkel. Sosem volt gondom azzal, hogy unalmas a munka és nincs kedvem csinálni.

K. S.: A térinformatika feladata a klasszikus definíció szerint „a földrajzi helyhez kötött adatok számítógépes megjelenítése, tárolása és analízise”. Hogyan jelenik meg ez a szakterület a hétköznapokban? Hogyan találkoznak ezzel az emberek? Pl.: ügyintézés, web, mobil… Milyen változást/átrendeződést tapasztalsz, amióta ezzel foglalkozol?

R. A.: Az önkormányzat feladatköre elég széles. A mi felelősségünk az ingatlan nyilvántartás, építési engedélyezés, úthálózat egy része, bérlakások, szociális szolgáltatások, szemétszállítás, választási rendszer, meg még néhány. A feladatok ellátásához rengeteg térbeli adatra támaszkodunk.

Elsődleges térbeli adatot viszonylag keveset állítunk elő, viszont rengeteg alapadat áll rendelkezésünkre. Használjuk a világ egyik legfejlettebb kataszteri térképét, néhány évente friss 30 cm felbontású légifotót, közigazgatási térképeket, beleértve az irányítószám határokat (ez utóbbi elég részletes, a házszám, vagy név és az irányítószám egyértelműen azonosítja az épületet), továbbá rengeteg – bárki által ingyenesen – hozzáférhető állami adatot.

Egyik feladatunk mindazon térbeli adatok könnyen hozzáférhetően rendelkezésre bocsátása, ami bármelyik szervezeti egység munkájához szükséges. Egyrészt a minél hatékonyabb és gyorsabb ügyintézéshez, illetve döntéshez, például építési engedélyek minél gyorsabb elbírálásához. Másrészt ha valaki felhívja a Call Centre-t, elvárás és követelmény, hogy az 1. hívás során minél több minden elintéződjön. Például ha valaki bejelent egy közvilágítás hibát, akkor az ügyintéző lássa a térképet, hogy egyértelműen rögzítse, pontosan melyikről is van szó, ne kelljen később pontosítani. A térinformatika ebben a formában akkor működik jól, ha a lakosságnak ez fel sem tűnik.

Amivel találkozhatnak – és szeretnénk is, hogy találkozzanak –, azok az online szolgáltatások. Elvárás az emberek részéről kényelem, idő megtakarítás és kiszámíthatóság miatt is, de számunkra is előnyös, mert munkaidőt és egyéb költséget takarít meg, nem utolsó sorban jobban illeszthetők automatizált folyamatokba. Elég egyértelmű példa az úthibák, illetve az illegális szemétlerakás bejelentése, ahol térképen jelölhetik meg a helyszínt. Nem ennyire egyértelmű, de a háttérben térbeli lekérdezések zajlanak, amikor valaki a szemétszállításról kér információt.

K. S.: A térinformatikához kötődően milyen szoftverkörnyezetben dolgozol?

R. A.: A vektoros adatokat nagyrészt SQL Server clusterben tároljuk, raszteres adatoknál (légifotók) viszont maradt a fájl alapú tárolás. Megjelenítéshez és egyszerű elemzésekhez WebGIS rendszert használunk (StatMap).

Létezik még néhány Deskop GIS (MapInfo) és egyenlőre elkerülhetetlen a fájl alapú tárolástól teljesen megszabadulni, de törekszünk rá.

A különböző szervezeti egységekben sok helyen használnak még térinformatikát saját szoftverek moduljaként, pl.: építkezési engedélyeztetés (új épületek létesítés, illetve meglévő épületek átalakítása), fejlesztési tervek, védett területek (fák) nyilvántartása, országos úthálózat fenntartása.

Adatelemzésre ETL (Extract, Transform, Load) rendszert használunk (FME). Ez többnyire adat átalakítást és rendszerintegrációt takar.

Azokat a funkciókat, amiket a fenti három szoftverrel nem tudunk megvalósítani, nyílt forráskódú szoftverekkel valósítjuk meg, ilyenek például a Quantum GIS és a GeoServer.

K. S.: Adott verseny a közigazgatási szoftverek angol piacán?

R. A.: A helyi hatóságok nagyságrendileg 40-féle szoftvert használnak. Több cég foglalkozik ezen szoftverek fejlesztésével, szóval van verseny. Előfordul, hogy egy szoftverfejlesztő cégtől több szoftver is származik: például a lakcím- és választási nyilvántartások. A helyi hatóságok igyekeznek több szoftvert is ugyanattól a cégtől megvásárolni. Amikor szeretnénk lecserélni egy-egy szoftvert – mert például nehézkesen lehet benne hozzáférni az adatokat, esetleg nem támogatja, hogy saját adatbázisban tároljuk adatainkat – akkor erre adott a lehetőség. Az ingatlan nyilvántartás például a helyi hatóságok felelőssége. Megvannak a törvényi szabályok továbbá standard formátumok, amelyek a központi nyilvántartáshoz szükségesek. Ezeknek a követelményeknek megfelelően több cég is fejleszt rendszert, amivel ellátható a feladat és időnként elküldi a helyi adatokat a központi nyilvántartásba a standard formátumokon keresztül.

K. S.: Milyen egyéb szoftvereket használsz a munkád során például munkaidő nyilvántartásra, levelezésre, szervezésre, folyamat- és projektmenedzsmenthez?

R. A.: Az önkormányzat elég nagy Microsoft fogyasztó. Mindenkinek rendelkezésre áll a Microsoft Office, a levelezés Outlookban megy és aktívan használjuk a Skype for Businesst. A munkaidő nyilvántartása nem annyira komoly – külön szoftverünk sincs erre –, mindössze egy Excel fájlt töltünk ki. A dokumentum menedzsment – kvázi intranet, de inkább fájlszerver – SharePoint alapú és például egy új szoftver beszerzésének folyamata is ebben követhető. IT support szoftvert használunk, hiszen alapkövetelmény, ha bármit kérnek tőlünk, akkor annak ticketing rendszerben legyen nyoma. Van még SAP rendszerünk, ami főleg a HR-t szolgálja ki, de néhány case management (illegális szemétlerakás, úthibák) szolgáltatást is kezel.

K. S.: Milyen a fluktuáció az angol munkaerőpiacon?

R. A.: Teljesen más a munkaviszonyhoz való hozzáállás. Az, hogy az ember az aktív élete során karriert épít teljesen elfogadott.

„Sokkal mobilisabb az angol munkaerő a magyarnál és erre a munkáltatók számítanak és próbálnak felkészülni: például része a Contingency Plan, illetve Business Continuity Plan.”

K. S.: Ha a szakmai pályafutásod hossza 100 egység, akkor jelenlegi tapasztalataid alapján hol tartasz, és milyen mérföldköveket fogalmaznál meg ehhez kötődően?

R. A.: A labdát kicsit visszadobnám, mert amikor elindultam 2000-ben, akkor azt gondoltam, hogy biológus leszek, és ha akkor tartottam 10 egységnél, akkor ez most teljesen más irány. Reset. Desktop térinformatikával és műholdkép elemzéssel kezdtem. Indultam kb. 15-ről és jó térinformatikusként elértem volna a 100-at valamikor. Áttértem főként a szerver és web alapú rendszerekre. Snapshotként: az informatikában 40-et elértem és még sok mindent el szeretnék érni. 40 éves vagyok.

„Angliában általában 70 éves korukig dolgoznak az emberek és látom az ismerősökön, hogy élvezik a munkájukat.”

Ezek alapján a karrierem hosszát tekintve 30-40-nél járok, és nem lehet tudni, hogy 80-90-ig eljutok-e. Hiszen lehet, hogy újra szakterületet fogok váltani. Jönnek az új irányok: mesterséges intelligencia, Big Data. Az még nem látszik, hogy ezek az új technológiák mekkorát fognak kiharapni a térinformatikából. Elérhető a 100, sőt adott technológiától függően akár a 120 is.

K. S.: Hogyan működsz csoportban? Milyen módszereitek vannak?

R. A.: Eddig ketten dolgoztunk szorosabban együtt. Mindkettőnket térinformatikára vettek fel, de sok más dologgal is foglalkozunk. Én inkább a szakmai vonalat képviselem, míg a kollégám inkább a projektmenedzsmentet viszi és a többnyire ő tartja a kapcsolatot a többi csoport/osztály illetékeseivel. Az egymás közötti munkakapcsolatunk főleg informatív, nem igazán formális. Egyszerűen megbeszéljük egymás között, hogy ki és mit csinál.

A „vállalati kultúrára” az Agile módszer a jellemző. Gyakran előfordul, hogy ténylegesen végignézzük a kollégákat, hogy ki, mit és hogyan csinál. Ha ezután megfogalmazza, hogy mit szeretne másképpen, akkor azt mi lefordítjuk technológiai specifikációvá, majd igyekszünk megvalósítani.

„Szeretnénk megérteni, hogy ki mit csinál. Mindannyiunk megközelítése az, hogy az informatika eszköz. Nem az informatika a helyi hatóság, hanem a helyi hatóságnak vannak feladatai és a kérdés az, hogyan tudunk mi ehhez hozzájárulni.”

Próbálunk minél jobban megfelelni már az első körben, de szükség esetén jönnek az iterációk. Ha már dolgozunk valamivel, akkor jó, ha azt használják is, hiszen így hatékony a munkánk és persze csak így van értelme. Informatikával kiváltható feladatok esetén nagyon megkönnyítjük a kollégák munkáját.

Révész András

K. S.: Elképzelhető, hogy néhány év múlva vezető leszel?

R. A.: Szakmailag igyekszem fejlődni és a tudásommal másokat lenyűgözni. Kevésbé vannak vezetői ambícióim. Egy konkrét csapat vezetése helyett jobban el tudom képzelni azt, hogy egy-egy feladat/projekt megoldását koordinálom. Minimális vezetői készségeket elvárnak. Eddig kerültem ezeket a szituációkat. A vezetői skilljeim megléte/ismerete a csapatnak is és egyébként személy szerint nekem is fontos lehet. A legutóbbi PDF-ben most vezetői skillek fejlesztésére is vállalást tettem.

K. S.: Hogyan látod a soft skilljeid fejlődését, mióta külföldön dolgozol?

R. A.: Öt dolgot emelnék ki:

  • A problémamegoldó képességem mindenképpen javult. A kommunikációs készségem is nőtt, de azt tudni kell, hogy az angolok nagyon türelmesek, ami megkönnyítette a helyzetemet.
  • A nyelvi készségeim nem annyira fejlődnek, mert az IT-ban félszavakból is értjük egymást. Említettem a Skype for Businesst, ahol a chat ablakban rövid és tömör üzenet, képernyőkép, válasz formájában meg is valósul a tényleges kommunikáció. Sok magyarral tartom a kapcsolatot. A munkán kívül kb. fele-fele arányban beszélek angolul illetve magyarul.
  • A vezetői készségek tekintetében – ahogy már említettem – mostanában próbálok kilépni a komfortzónámból.
  • Az időmenedzsmentet tekintve nem tapasztalok magamon változást, bár hasznos, hogy saját magam priorizálhatom a feladataimat.
  • A „mások gondolatainak átlátása”-ként megfogalmazható skilljeim jelentősen fejlődtek, és erre nagy szükségem is van, hiszen így – támogató informatikusként – jobban meg tudom könnyíteni mások munkáját. Ezt minél jobban tenni, igazi belső kényszer számomra.

K. S.: Mi a legfontosabb néhány olyan hasznos tanácsod, amit érdemes megfogadnia annak, aki most – vagy rövid időn belül – úgy dönt, hogy külföldre (akár Angliába vagy máshová) költözik?

R. A.: Fontossági sorrendben ezeket említeném:

  1. Járjon utána, hogy hová megy! Például hely- és emberismeret egyaránt. Nézzen szét online, olvasson blogokat! Legyen egy előzetes benyomása arról, hogyan gondolkodnak ott az emberek!
  2. Döntse el, hogy mennyi időt szán a folyamatra! Nagyon nem mindegy, hogy ez két hónap vagy akár egy év. Készüljön fel arra, hogy az átmeneti időszakban meg tudjon ott élni! Tartalék és türelem. Kell B terv is: például tudnia kell, milyen egyéb munkákat hajlandó vállalni, ha pénzre lesz szüksége.
  3. Socializing, azaz kapcsolatokat kell teremteni! Nem csak szakmai, hanem egyéb területeken is. Külföldön sok mindent másképpen kell csinálni, másképpen szerveződik az élet és a helyi tudás, tapasztalat adott esetben nagy segítséget jelenthet. Triviális példák: hol vásárolj be, a közelgő ünnep miatt előre vásárolj be…
  4. Kell kitartás és némi konokság: „igenis meg akarom csinálni”! Enélkül a mentalitás nélkül sokan elvéreznek.
  5. Az előzőekben is benne van, de külön kiemelném: alapvetően befogadónak, nyitottnak kell lenni! A nyitottság alatt egyrészt toleranciát értek, másrészt a kíváncsiságot. Tudni fogják, hogy magyarok vagyunk. A külföldiek akármennyire is az embert nézik, azért az intuíciók és benyomások jelen vannak. Fontos, hogy külföldön egyfajta nagykövetként képviseljük hazánkat, hiszen külföldön mi vendégek vagyunk. Erről sokan elfeledkeznek.

K. S.: Mi az aktuális hobbi projekted és hogyan kapcsolódik a programozáshoz?

R. A.: Nem esik messze az alma a fájától: egy környezeti kibocsátás csökkentő projektet találtam ki. Az épületekben számos tárgyaló van, amiket foglalás ellenében használhatunk. Az aznapi foglalások minden tárgyalónál egy A4-es papíron láthatók. Ez elég sok papírral jár, tárgyalónkét átlag 2 csomag/év és van majd 100 tárgyaló. Nem beszélve arról, hogy a papírokat minden nap nyomtatni és cserélni kell.

A projektem lényege, hogy a papírtartókat eInk kijelzőkre cseréljük amiket távolról, a foglalási rendszer alapján lehet frissíteni. Ezzel mind a papírt, mind a nyomtatást, mind pedig a cserével járó munkaidőt megtakarítjuk. További előnye, hogy a kijelző gyakrabban, jelenleg fél óránként frissíthető, szemben a 24 órás papír cserével.

Az eInk kijelző (ilyenek vannak az elektronikus könyv olvasókban) csak akkor fogyaszt energiát, amikor frissül, akkor is nagyon keveset. A kijelző frissítését egy szintén alacsony energiafogyasztású (ESP32 alapú) mikrokontroller végzi, ezért az egész hardver hónapokig üzemeltethető elemről.

A kijelzővel szemben követelmény, hogy minimális karbantartást igényeljen és azt is minél egyszerűbben. Kollégám olyan burkolat tervezésén dolgozik, amiben könnyű elemet cserélni.

A teszt kijelző frissítése egyenlőre egy egyszerű fél óránkénti frissítés. A kijelzőre küldendő kép előállítását és web tárhelyre feltöltését alapvetően a már korábban említett ETL rendszerben fejlesztettem. A háttérben azonban meg kellett oldani néhány dolgot:

  • A tárgyaló foglalását kezelő rendszernek nincs nyilvános API-ja. Szerencsére adatbázis alapú a nyilvántartás, amihez van hozzáférésünk. A dokumentáció hiányának ellenére az adatbázist nem volt nehéz kiismerni, ezek után a szükséges adatok kinyerése egy SQL query felépítése. Az ETL rendszerben lehetséges SQL lekérdezés az adatbázisból.
  • A kijelző adott felbontású (800*480 px). A tartalom megtervezése és generálására legkézenfekvőbb megoldás a HTML+CSS, annál is inkább, mert tervezésben támaszkodhatok a Web-designer kollégákra. Miután megvan a HTML sablon, a tartalmat az ETL már bele tudja helyezni.
  • Miután az ETL Python kódot is tud futtatni, kódból meg lehet hívni egy böngészőt és generáltani vele HTML fájlt, majd a kész dokumentum bármelyik elemét el lehet érni, például egy canvas-t amire JavaScript segítségével rá lehet helyezni a kívánt dokumentumot.
  • Végül az eInk kijelzőre a képet egy speciális formátumban lehet feltölteni. A canvas képet szintén Python kód konvertálja a kijelző formátumára, ami azután felkerül a webtárhelyre.
  • Végül a kijelző mikrokontrollerének csak le kell töltenie a kész képet és feltölteni a kijelzőre.

Természetesen újabb igények mindig jönnek. Legutóbbi például, ha bármely résztvevő megérkezik, akkor a belépőkártyájával ezt jelezhesse és ez kerüljön rögzítésre is. Probléma ugyanis, hogy elég sokszor nem használják a lefoglalt tárgyalót, amiről egyelőre panasz van, de számok nincsenek. Ez könnyen megvalósítható, mert a kijelzőn keresztül is működik az NFC érzékelés, így most ezen dolgozom.

K. S.: Milyen gyakran látogatsz haza Magyarországra?

R. A.: Az utóbbi időben beállt, hogy évente háromszor vagy négyszer. Karácsonyra mindig, ezenkívül egyszer tavasszal és egyszer ősszel. Nyáron nem szeretek hazamenni, mert akkor a klíma itt jobb számomra. Ritka családi/baráti események miatt általában előfordul további egy látogatás is.

K. S.: Nagy világutazó vagy. Miért vagy ennyire mobilis?

R. A.: Mindig is élveztem az utazást, ha valahova el lehetett menni. Gyerekkoromban rengeteget kirándultam belföldön és ahogy lehetséges volt, családdal majd minden környező országba eljutottunk nyaralások alkalmával. Testvéremmel még mindig találkozunk évente „Valahol Európában”.

Miután itt sikerült berendezkednem, a lehetőségek nagyok kitágultak. Többször jártam Kínában. Ez annyival kezdődött, hogy láttam egy utazási iroda reklámján, hogy mennyibe kerülne egy 2 hetes kínai utazás, a következő sarkon pedig a repülőjegy árakat. Ismerősök elbeszéléseivel összevetve felmerült bennem, hogy azért az utazási irodánál jóval olcsóbban ki lehet ezt hozni. Gondoltam, utánajárok. Az utánajárásnak az lett az eredménye, hogy ha már fele annyiból kijön, meg már majdnem mindennek utánanéztem, akkor most miért ne menjek is el. Ez történt 2011-ben, de ahányszor Kínában voltam, mindig úgy jöttem el, hogy vissza kellene menni, mert ez is kimaradt, az is kimaradt. Nem beszélve arról, hogy a nagysebességű vasúthálózattal sok olyan helyre el lehet jutni, amiről korábban csak álmodtak a nagyon Kína elhivatottak is.

A mobilitásnak úgy érzem, egyre nagyobb szerepe lesz a munkavállalásban is. A helyzet mindenhol egyre bizonytalanabb, most már sok minden elképzelhető. Alapvetően nem tartok attól, hogy itt forró lenne a talaj a lábam alatt, de néhány éve például még senki sem gondolt arra, hogy Anglia kiléphet az EU-ból. Ugyanígy az amerikai választások eredménye is sokakat meglepett.

„Jobb, ha az ember felkészült arra, hogy mobilis legyen.”

Hosszabb távon Európában gondolkodom, de ha adódna egy rövidebb (pl.: félévre) lehetőség, akkor Kínába, Kanadába, Malajziába, Japánba és még néhány helyre is szívesen mennék. Természetesen barátaimhoz is szívesen csatlakozom, mint például a Céline Dion koncerthez kötött kirándulás Japánba.

K. S.: Mik a jelen és szerinted mik lesznek a jövő sikerszakmái?

R. A.: A jövőre való becsléssel nagyon óvatosan fogalmaznék. Volt ugye rengeteg jóslat, ami nem jött be, ezekről rendszeresen vannak hírek, mémek. Másrészt eredeti szakmámból kiindulva, a géntechnológia és a molekuláris biológia is hozott kisebb áttöréseket – akkorát, amekkorát vártak tőle. Hasonlóan a nanotechnológia is csak minimálisan van jelen a mindennapi életben.

Adatot gyűjteni egyre olcsóbb, így véleményem szerint az átrendeződést az adatelemzés és információnyerés fogja jelenteni középtávon. Nem tartok tőle, hogy a szakmák jó részét átveszi a robotizáció és az MI, viszont azok a szakemberek, akik szakmájukban fel tudják használni a Big Data és az MI lehetőséget, jóval keresettebbek lesznek, mint a szakmát csak hagyományosan megközelítők. Például az a szigeteléssel foglalkozó kereskedő/elemző cég, aki távérzékelt adatokból meg tudja állapítani, hogy egy adott ház szigetelésében hol van a hiba és így csak azon a részen kijavítva olcsóbb ajánlatot tud adni, mint aki a fél tetőt újra szigetelné, jóval keresettebb lesz, mint aki erre nem képes.

K. S.: Van kedvenc IT-s idézeted, mémed?

R. A.: Nem IT idézet – terepi ökológusok között forog közszájon –, de IT-ben is tartom magam ehhez:

„Járt utat járatlanra ha csak lehet cserélj fel, hogy más oldalról is lásd a dolgokat!”


Blog bejegyzéseink IT karrier témakörben

Csolti Péter

Interjú Csolti Péterrel

Csolti Péter informatikatanár, az OKJ szakképzés területén dolgozik. Több intézményben is programozást tanít. A SZÁMALK-Szalézi Szakgimnáziumban a szoftverfejlesztő szak szakfelelőse. Ismeretsége az informatikával a Word és az Excel programokkal kezdődött ...
Bővebben
/
Révész András

Interjú Révész Andrással

Révész András alapvégzettsége biológus, ökológia szakiránnyal. Szakmai pályafutását tájökológiával kezdte, azon belül is élőhely térképezéssel, amihez kötődik a térinformatika. Négy évig kutatás-fejlesztéssel foglalkozott az MTA Ökológiai és Botanikai Intézetében, majd ...
Bővebben
/
Schmidt Attila

Interjú Schmidt Attilával

Schmidt Attila három éves szoftverfejlesztői gyakorlattal (főként Android platformhoz kötődően) és két éves szoftvertesztelői tapasztalattal rendelkező mérnök-informatikus. Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője ...
Bővebben
/
Takács Roland

Interjú Takács Rolanddal

Takács Roland egyéves automatizálási teszt mérnöki és ötéves professzionális adatbázis-kezelés (MSSQL, Oracle) tapasztalattal rendelkező mérnök-informatikus. Jól érzi magát multikulturális környezetben. 2017 nyara óta külföldön él és dolgozik. 2018 őszétől PL ...
Bővebben
/
Lovas Bertalan

Interjú Lovas Bertalannal

Lovas Bertalan 22 éves pályakezdő szoftverfejlesztő. A kütyük mindig érdekelték. Hivatásként és hobbiként is gondol a programozásra. Sportos, korábban dzsúdózott, tornázott és a műugrást is kipróbálta. Korábban részt vett a ...
Bővebben
/

Interjú Görög Ibolyával

Görög Ibolya protokollszakértőt mindenki ismeri, bemutatni nem szükséges. De mégis illik, legalább röviden: 1987-től 1999-ig a Miniszterelnöki Hivatal protokollosa, majd protokollfőnöke volt, illetve 1999-től felnőttképzésben oktat. Érdeklődési körébe tartoznak: viselkedéstörténet, ...
Bővebben
/

Interjú Szűcs Tiborral

Szűcs Tibor mérnök-informatikus. Jelenleg a Corvinus Egyetem Koordinációs Irodáján dolgozik órarendszerkesztőként. Ez a feladat a létesítménygazdálkodáshoz kötődik és ő osztja be – sok-sok szempont alapján – az előadásokat, szemináriumokat, számítógépes ...
Bővebben
/
Nádai Gábor

Interjú Nádai Gáborral

„Nádai Gábor vagyok, de sokan leginkább Mefiként ismernek, a legtöbb felületen a @mefiblogger nicknév alatt vagyok elérhető. Eredetileg mérnökinformatikusként végeztem, a kétezres évek közepén a fősuli mellett saját vállalkozásba kezdtünk ...
Bővebben
/
Markovics Győző

Interjú Markovics Győzővel

Markovics Győző nem­zet­kö­zi kap­cso­la­tok sza­kos köz­gaz­dász, va­la­mint po­li­to­ló­gi­át is ta­nult a Bu­da­pes­ti Cor­vi­nus Egye­te­men. Az egye­tem­től fő­ként időt ka­pott – fel­nő­ni a kép­zés alatt. Gya­kor­la­ti is­me­re­te­it min­dig mun­ká­val sze­rez­te. Csa­lá­di ...
Bővebben
/

Programozási nyelvek népszerűsége

programming-language-java-logo

programming-language-java-logoIgen érdekli a programozást most tanulni kezdőket, a magukat átképzőket és a cégeket is, hogy aktuálisan melyek a legkurrensebb programozási nyelvek, illetve melyeket használják rendszereik fejlesztéséhez.

Az alábbiakban felhasználási területet és egyéb szempontokat figyelembe véve tekintjük át a programozási nyelvek népszerűségének mérését, illetve azok között azt, hogy a Java jelenleg hol helyezkedik el, hogyan változott az elmúlt néhány évben népszerűsége. Mindez a kezdő programozóknak iránymutatás, a haladóknak megerősítés lehet. Láthatják a Java használatának trendjét, és hogy „jó nyelvre tettek”, hosszú távon is megtérül befektetésük magas szintű elsajátításába. A blogbejegyzés végén napjainkban a webprogramozáshoz használt legkedveltebb nyelveket tekintjük át és a profi webfejlesztővé válás javasolt hét lépését.

A programozási nyelvek iránti érdeklődés

A Google szerint a legkeresettebb programozási nyelvekre angolul keresve a találatok száma 2019 augusztusának közepén – amikor a többség nyaral és lassan a fű sem nő –, az alábbi volt:

  • programming languages toplist: 586 * 103;
  • top programming languages: 159 * 106.

A Google Trends segítségével azt is vizualizálhatjuk, hogy a Föld és Magyarország mely részein kiugróan magas például a „programming” szövegre keresés, illetve hogy ahhoz milyen kapcsolódó témakörökre keresések kiugróak. Például: https://trends.google.com/trends/explore?q=programming vagy https://trends.google.hu/trends/explore?geo=HU&q=programming. A témakörök között világviszonylatban a nyelvek közül 4-5. helyen megjelent a C, illetve a Python. Magyarországon 5. helyen áll a Kotlin.

google-trends

A „programming” kifejezésre világszerte (balra) és Magyarországon (jobbra),
az elmúlt egy évben, minden kategóriában,
internetes keresővel végzett keresések a Google Trends szerint
(2019. augusztus 18.)

A legszélesebb körben használt programozási nyelvek a legfelkapottabbak a kezdő programozók körében, hiszen nagy az ezeket ismerők iránti kereslet. De nem egyszerű meghatározni, hogy mely programozási nyelveket használják a legszélesebb körben, illetve a nyelvek közötti választás attól is függ, hogy milyen felhasználási terület vagy egyéb szempont szerint választanak a megbízók, mit igényel fejlesztési projektünk.

Felhasználási területüket nézve a nyelveknek, futnak ma is vállalati adatközpontokban, nagygépeken 30-40 éve Cobolban írt banki rendszerek. A Fortran használata erős a számítástechnikában és a mérnöki munkában. C-t érdemes használni beágyazott alkalmazások és operációs rendszerek írásához. És vannak programozási nyelvek, amelyek sokféle területen használhatók. További szempont lehet a programozási nyelvek elterjedtségének vizsgálatára a befektetendő programozói óra, szükséges kódsor, CPU-felhasználsi igény stb.

A programozási nyelvek jellemzői és a közülük való választás

A programozási nyelvet, vagyis olyan jelölésrendszert, amely segít az algoritmusként azonosított programok megírásában, már a számítógépek feltalálása előtt is alkottak, azóta pedig több ezer született, illetve folyamatosan hoznak létre újakat.

A nyelvek több szempont szerint csoportosíthatók, például általános célú és specifikus nyelvek; számítási modell szerinti (Neumann-elvű, automata elvű, funkcionális, logikai) nyelvek; alacsony és magas szintű nyelvek. A különböző csoportokon, a különböző célokra írt nyelvek között is eltérő tulajdonságokkal és erősségekkel rendelkeznek a nyelvek. Például batch nyelv helyett nem fogunk XML-alapút választani, gépközeli programozáshoz sem objektumorientáltat, vagy szóelemző nyelv helyett szkriptkezelőt.

A mai hardver-/szoftverfejlesztők lényegesen több programozási nyelvvel dolgoznak, mint elődeik. Az informatikai cégek is számos nyelvet alkalmaznak, hogy a különféle típusú alkalmazásaikat elkészíthessék. A választható nyelvek sokfélesége miatt esetenként nem kis feladat megtalálniuk a megfelelő nyelveket ismerő programozókat.

A programozási nyelvek jellemzőire tulajdonságaikkal hivatkozhatunk, amelyek közül a legfontosabb három az absztrakciók, a funkció és cél, valamint a kifejezőerő [forrás: Martin, 2015].

  • Absztrakciók. A programozási nyelvek rendelkeznek szabályokkal – például az adatszerkezetek megadásához/jelöléséhez, a parancsok végrehajtásához –, amelyeket absztrakcióknak nevezünk. Az absztrakció elve bizonyos esetekben az absztrakciók felhasználására adott ajánlásokból származik.
  • Funkció és cél. A programozási nyelv teljes meghatározásába beleértjük azt a dokumentációt vagy hardveregységet is, amelyet az adott nyelvre optimalizáltak. Ez is oka annak, hogy a programozási nyelvek eltérnek az emberi interakció nyelveitől.
  • Kifejező erő. A nyelveket többnyire az általuk kifejezhető számítások alapján osztályozzák.

A programozási nyelvek változatossága miatt a fejlesztőknek nehézséget okozhat a használandó(k) kiválasztása. Az alábbiakban a választást segítő tényezőket tekintjük át: célplatform, nyelvtartomány-egyezés, hatékonyság, rugalmasság és teljesítmény, könyvtárak elérhetősége, projekt mérete, kifejezőképesség és gyártási idő, eszköztámogatás [forrás: Martin, 2015].

  • Célplatform. Először is azt kell meghatározni, hogy milyen PC-s és/vagy mobilplatformon, beágyazott rendszerben stb. kell futnia a készítendő programnak. Ha változatos platformokon, akkor fordítókat, interpretereket is kell futtatni.
  • Nyelvtartomány-egyezés. A nyelvet a meglévő problématartomány alapján kell kiválasztani. Ehhez megvizsgálhatjuk azt a nyelvet, amelyet az adott szakterületen, iparágban mások használnak, vagy megpróbálhatunk a problémánkat megoldandó kódot is keresni.
  • Hatékonyság. Hogy a nyelvi platform gyors legyen, a nyelvvel együtt futó compilernek is hatékonynak kell lennie.
  • Rugalmasság és teljesítmény. A választott nyelvnek elég rugalmasnak kell lennie további programok vagy funkciók implementálásához. Ezen kívül általános teljesítményének meg kell felelnie igényeinknek.
  • Könyvtárak elérhetősége. A programozási nyelvnek rendelkeznie kell olyan könyvtárakkal, amelyek meg tudják oldani például a webfejlesztéshez kiválasztott nyelvvel kapcsolatos összes problémánkat.
  • Projekt mérete. Olyan nyelvet kell választani, amely támogat a kis vagy nagy projektünk magvalósításában.
  • Kifejezőképesség és gyártási idő. Kifejező nyelvet válasszunk, és a programok/kódok elkészítéséhez szükséges idő ne érintsen hátrányosan.
  • Eszköztámogatás. Eszközorientált nyelvet válasszunk, amely segít a szerkesztésben, vezérlésben, illetve a munkában.

A következőkben a felhasználási területtől független és egyéb szempontokat nem figyelembe véve tekintjük át a programozási nyelvek népszerűségének mérését, illetve azok között azt, hogy a Java jelenleg hol helyezkedik el, hogyan változott az elmúlt években népszerűsége. Mindez a kezdő programozóknak iránymutatás, a haladóknak megerősítés lehet. Láthatják a Java használatának trendjét, és hogy „jó nyelvre tettek”, hosszú távon is megtérül befektetésük magas szintű elsajátításába.

A programozási nyelvek népszerűségének mérése

A programozási nyelvek népszerűségének mérésére több, más-más szempont szerinti (elfogódottságú) módszert javasoltak. Ezek közül rangsoraik készítéséhez a https://en.wikipedia.org/wiki/Measuring_programming_language_popularity forrásaik megjelölésével az alábbi módszereket gyűjtötte össze az egyes programozási nyelvek esetén:

  • nevükre keresés internetes keresőmotorral;
  • internetes keresésekben említésük (például Google Trends);
  • nevüket tartalmazó álláshirdetések száma;
  • tanító/bemutató eladott könyvek száma;
  • rajtuk írt kódsorok számának becslése – alábecsülheti a nyilvános keresésekkel ritkán talált nyelveket;
  • a felhasználó projektek száma a SourceForge-on és a GitHubon;
  • az egyes programozási nyelv Usenet hírcsoportjaiban a hozzászólások száma;
  • az Open Hubon nyílt forrású projektekben előforduló vagy módosított forrássoraiknak a száma;
  • a bootcamp-ek eladott tanfolyamainak száma;
  • képzésekre a világon beiratkozottak száma;
  • hozzájuk megjelenő videók száma a YouTube-on;
  • hozzászólásaik száma a Redditen vagy a Stack Overflow-n.

Ezek mellett gyakran találunk az interneten például blogbejegyzéseket, amelyeket programozás-szakmabeliek készítenek saját tapasztalataik és véleményeik alapján.

A TIOBE és a PYPL programozási nyelvek ranglistája

A Google szerint 2019 augusztusának közepén a széles körben hivatkozott két ranglistára keresve az alábbi számú találat volt:

  • TIOBE programming languages: 157 * 103;
  • PYPL programming language: 160 * 103.

A TIOBE (The Importance of Being Earnest) programozási közösségi indexet, amely a nyelvek népszerűségének közismert mutatója, havonta aktualizálja a hollandiabeli TIOBE Company. Az egyes nyelveket használó mérnökök, tanfolyamok és harmadik fél gyártók számán alapul. Számításaihoz figyelembe veszi a népszerű keresőmotorok használatát (Google, Bing, Yahoo!), valamint a Wikipedia-n, az Amazonon, a YouTube-on és a Baidu-n kereséseket. A TIOBE listából tehát azt tudhatjuk meg, hogy programozási készségeink naprakészek-e; stratégiai döntést hozhatunk új szoftverrendszer fejlesztésekor programozási nyelv alkalmazásáról. A TIOBE a Turing-teljes nyelvekre összpontosít, ezért nem nyújt információt például a HTML népszerűségéről. A TIOBE-n 2019 augusztusában is vezetett a Java.

A TIOBE listájával szemben leggyakrabban a PYPL (PopularitY of Programming Language) indexszel találkozhatunk, amelyet Pierre Carbonnelle készít 2004 óta. A Google-n elemzi Föld- és öt ország (US, India, Németország, Egyesült Királyság, Franciaország) szintjén, hogy milyen gyakori a programnyelv tutoriáljaira keresés. (Ugyanezzel a módszerrel a legnépszerűbb integrált fejlesztői környezeteket, online fejlesztői környezeteket és adatbázisokat is listázza.) Nyers adatai a Google Trends-ből származnak. A PYPL index szerint a Java elől van, de 2018 elejétől második helyre csúszott.

tiobe-pypl

A TIOBE (fent) és a PYPL (lent) index szerinti első öt legnépszerűbb programozási nyelv
(2019. augusztus 18.)

Az alábbi diagramon megfigyelhető, hogy a legkedveltebb tíz nyelv közül a TIOBE index szerint 2002 és 2018 augusztusa között még mindig a Java az első.

tiobe

A legkedveltebb tíz nyelv a TIOBE index szerint 2002 és 2018 augusztusa között
(2019. augusztus 18.)

Ingyenes közösségi platformok, szakmai oldalak ranglistái

A GitHub a kódkezelés és -megosztás legnépszerűbb platformja, több mint 31 millió felhasználó dolgozott már rajta, összesen 337 programozási nyelven. Ezért ideális hely annak vizsgálatára, hogy mely programozási nyelvek a legnépszerűbbek a projektek számát tekintve. Ezek közül Martins D. Okoi 2019 áprilisának végén a nyelvhasználat aktvitását tekintve a hét legnépszerűbb nyelvet emelte ki. Ezek rangsor szerint: JavaScript, Java, Python, PHP, C++, C#, TypeScript.

A Black Duck Open Hub ingyenes közösség és nyilvános könyvtár a szabad és a nyílt forráskódú szoftverek (FOSS) számára. Elemzési és keresési szolgáltatásokat nyújt a nyílt forráskódokhoz és projektekhez. A BlackDuck OpenHub az általunk kiválasztott programozási nyelveken végzett kódsormódosításokat mutatja. A legutóbbi hónap adatait nem ábrázolják, hiszen még nem állnak rendelkezésükre az adatok. Ezen közösség szerint is, mint más indexek szerint meredeken emelkedik a Python használata, és fej-fej mellett van a Java és JavaScript.

black-duck-open-hub

Havi commitek (a teljes százalékában) az Open Hub szerint
(2019. augusztus 18.)

Programozási nyelvek hozzászólásainak száma a szakmai oldalakon

Az elmúlt évtizedben a vezető programozási nyelvek esetén a velük dolgozók munkájának megkönnyítésére összpontosítottak. Ha a programozási szakmát művelők nyelvek iránti vonzalmát vizsgáljuk, nem járhatunk rossz úton, ha a szakmai-közösségi oldalaikat vizsgáljuk. Az érdeklődési kör egyértelműen megjelenik a témákban, hozzászólásokban. A GitHub és a Stack Overflow méretük miatt és az elemzéshez szükséges adatok nyilvános megjelenése miatt érdemel külön figyelmet.

A Stack Exchange Inc. tulajdonában levő Stack Overflow tudáspiac széles körben tartalmaz programozással kapcsolatos kérdéseket és válaszokat. A weblap szlogenje: Where Developers Learn, Share, & Build Careers. A felhasználók kérdéseket tehetnek fel, amelyekre tagtársaik segítőkészen válaszolnak. A kérdések-válaszok wikistílusban szerkeszthetők, valamint pozitív/negatív értékeléssel láthatók el. A felhasználók további elismeréseket is szerezhetnek (hírnév pontokat [Reputation points], majd kitüntetéseket [Badges]). A növekvő elismertségi szinttel új jogosultságok érhetők el (szavazhatnak, kommentálhatnak, más hozzászólásait szerkeszthetik).

Egyre több programozó cég teszi „kötelezővé” a Stack Overflow aktív használatát programozói számára munkájuk támogatásához Magyarországon is. 2019 januárjától a Stack Overflow regisztrált felhasználóinak száma 10 millió fölött van, lekérdezéseinek száma pedig 2018 közepén meghaladta a 16 millió kérdést. A kérdésekhez rendelt címkék típusa alapján a webhely nyolc legélénkebb témája: JavaScript, Java, C#, PHP, Android, Python, jQuery és HTML – többnyire a webprogramozáshoz kötődva.

A felhasználókat kb. 20 perces kérdőív kitöltésére kérik meg, amelyek segítségével változatos szempontok szerint mérik fel a programozás világát. Tudják, hogy vannak rendszerszintű mintavételi problémáik, és azokat korrigálják is súlyozással (például ha a kitöltők között alulreprezentáltak a nők, vagy felülreprezentáltak az USA-beliek).

stack-overflow1

2019 augusztus havi Stack Overflow látogatások

Ahol releváns, rákérdeznek a leginkább kedvelt, megtanulni kívánt, keresett eszközökre, technológiákra, stb. A legnépszerűbb technológiák között (programozás, szkriptelés, jelölőnyelvek terén) minden válaszadó és a professzionális fejlesztők között is megegyezik az első nyolc sorrendje, amelyben a Java az 5. helyen van.

stack-overflow2

A legnépszerűbb technológiák arányai (programozás, szkriptelés, jelölőnyelvek terén)
2019-ben a Stack Owerflow szerin

A Stack Overflow a munkavállalók és a munkaadó számára több eszközt is biztosít, hogy egymásra találhassanak. Havonta kb. 50 millió tanulni, tudást megosztani, karriert építeni látogatója van. Közülük kb. 21 millió profi fejlesztő vagy egyetemi hallgató.

A 2019-es év legfontosabb eredményeiből szemezgetve a Stack Overflow kiemelte például, hogy a Python a leggyorsabban terjedő fő programozási nyelv. 2019-ben megelőzte a Java-t és a második legkedveltebb nyelv. A fejlesztők a Stack Overflow-t használva heti 30-90 percet takarítanak meg.

Stack Overflow 2019-es felmérésének anonimizált eredményei idén is letölthetők az Open Database License (ODbL) alatt.

A Reddit közösségi weboldal 2005-ben alapított vállalkozás. Jelmondata: The front page of the internet (az internet kezdőlapja). Az Alexa Internet szerint 2019 júliusától a Reddit az USA 5. leglátogatottabb és világszerte a 13. leglátogatottabb webhelye. A regisztrált felhasználók megoszthatják híreiket, képeiket és cikkeiket az ún. „alredditeken”, illetve értékelhetik a már meglevőeket „fel” és „le” nyilakkal.

A Reddit bejegyzései alapján a nyolc legaktívabban használt nyelv helyezési sorrenben: Python, Java, C++, C#, Rubby, Javascript, PHP, Go.

reddit

A legnépszerűbb programnyelvek a Reddit szerint 2019-ben

A RedMonk szoftverfejlesztőkre koncentráló iparági elemző cég USA-beli székhellyel, figyelembe veszi a kereskedelmi szoftverek változó szerepét. A szoftveripar trendeket tekintettel állítja elő programozási nyelvi rangsorát a GitHub használatának és a Stack Overflow-n folyó beszélgetéseknek a korrelációjából származtatva. Elemzése GitHub részéhez használt adatforrása a GitHub Archive. A RedMonk hasonló lekérdezést használ, mint a GitHub a nyelvek 2016 októberi állapotának összeállításához, továbbá a RedMonk lekérdezéseit összehasonlíthatóvá teszi. Rangsorai nem a programozási nyelvek általános felhasználását mutatják, hanem két olyan populáció közötti korrelációt vizsgálnak, amelyekről úgy gondolja, hogy előrejelzik a nyelvek jövőbeli felhasználását, ezért értéküket.

2019 harmadik negyedévében első helyen a RedMonknál is a JavaScript áll, az élbolyban követi a Java, Python, PHP, C++, C# és CSS.

redmonk

A RedMonk programozási nyelvek ranglistája 2019 3. negyedévére

A Krihelinator nyílt forráskódú projekt rangsorolása alternatíva a GitHubhoz. Az egyes adattárak kriheliméterét az elmúlt heti szerzők száma, kérések, problémák és commitek alapján számítja: Krihelimeter = 20 * authors + 8 * merged and proposed pull requests + 8 * new and closed issues + 1 * commits.

A szerző szerint a GitHubot biztonsági mentési szolgáltatásként használják, hetente több száz commitot automatizálva. Ezen projektek kiszűrése érdekében csak egynél több szerzővel rendelkező projektek lépnek be a Krihelinator adatbázisba. Tehát számítása azon alapul, hogy milyen arányú a fejlesztők saját hozzájárulásának aránya a programozási nyelvek használatához a GitHubon. Itt a Java a 4. leginkább használt nyelv.

Álláskereső portálokon készített ranglisták

Az Indeed 2004 novemberétől működik. Az egész világon elérhető keresőmotor álláskereséshez, több mint 60 országban, 28 nyelven. Portálján a legkeresettebb a Java programozó volt 2019 januárjában is.

indeed

A legkeresettebb programozási nyelvek
az Indeed álláskereső portálon 2017-2019 között

A Trendy Skills a népszerű hirdetési webhelyekről a munkáltatók által keresett készségekről és technológiákról végez kutatásokat és készít kivonatot. Kategóriáit osztályozza, amelyek közül az egyik a programozási nyelvek. Ez lehetővé teszi a felhasználó számára, hogy a meghatározott időtartományokban megfigyelhessék egy vagy több készség vagy kategória trendjeit. Az adatok nyilvános API-n keresztül is elérhetők, így bárki elkészítheti saját statisztikáit. Trendy Skills szerint a legkedveltebb programozási nyelv 2019. január 1 – augusztus 18 közötti időszakban messze a Java volt.

trendy-skills

A Trendy Skills listája az első tíz legkedveltebb programozási nyelvről
2019. január 1 – augusztus 18 közötti időszakra

Ahogy a fenti képernyőkép bal oldalán látható, az első fülön több szűrési lehetőség adható meg a programozási nyelvek rangsorolásához: időszak, kulcsszó/kategória, ország. A második fülön állásokra kereshetünk.

Az IEEE Spectrum rangsora

Az IEEE Spectrum az év legjobb programozási nyelveinek rangsorolásához 10 forrásból 12 mutatót szintetizál. A különféle mutatókat a GitHub, a Google Search and Trends, a Twitter, a Stack Overflow, a Reddit, a Hacker News, a Career Builder, a Dice.com és az IEEE Xplore Digital Library alapján gyűjti. Az interaktív rangsoroló alkalmazás lehetővé teszi a mutatók súlyának beállítását, a nyelvek szűrését típus (web, mobil, enterprise, beágyazott) szerint. Rangsorát évente készíti, alább a 2018-as első 10 helyezettje látható a teljes IEEE spektrumra. A Java itt 2. helyen van.

ieee-spectrum

Az IEEE Spectrum interaktív rangsoroló alkalmazásában
a 2018. évi első legjobb 10 programozási nyelve

Iparbeli események

A programozási nyelvek, például a Java kedveltségi, felhasználási rangsorbeli helyezésére események is hatnak. Például 2004 áprilisában a Google igyekezett megszabadulni bizonyos weboldalaktól, amely eredményeként a TIOBE indexben a Java és a C++ nyelvek óriásit zuhantak vissza. Az ilyen nagy ingadozások kivédésére az MSN és Yahoo! keresőmotort is elkezdték használni néhány hónap múlva a TIOBE index készítéséhez.

A Groovy, amely Java-kompatibilis, először 2016-ban került be az első 20 programozási nyelv közé, mert a Jenkins folyamatos integrációs eszközt főként Groovy-ban írták. 2019 augusztusára a 13. helyig lépett elő, mert az egyre népszerűbb Gradle build automatizációs rendszer is Groovy-t használ szkripteléséhez.

A webprogramozáshoz használt legkedveltebb nyelvek

Az internet egyre intenzívebb használatának eredményeként gyorsan fejlődik a webhelyek és a webes alkalmazások fejlesztése. A vállalatok folyamatosan foglalkoznak webfejlesztési szolgáltatásokkal, azzal, hogy weboldalaik és webes alkalmazásaik a lehető legszélesebb célközönséget vonzzák be.

A webfejlesztéshez programozási nyelvek, adatbázisok és kommunikációs hálózatok széles skálája tartozik. A webprogramozással foglalkozóknak nem elegendő csak egy nyelvben és az ahhoz szorosan kapcsolódó például fejlesztői környezet(ek)ben profinak lenni, minden általában használt és feltörekvő nyelvben otthonosan kell mozogniuk. Az alábbi röviden jellemzett nyelvek mellett mindenekelőtt ezeket a nyelveket, keretrendszereket, futtatási környezetet, adatbázist stb. kell ismerniük napjainkban: HTML és CSS, jQuery, Bootstrap, React.js, MySQL, Node.js.

A Stone River eLearning szerint a webprogramozáshoz használt nyelvek 2017 végén gyakoriságuk sorrendjében: HTML5, Javascript, PHP, Java, Python, .NET, Ruby volt. 2018-ban a FreelancingGig szerint a 100 milliónyi felhasználót kiszolgáló webszájt készítéséhez legmegfelelőbb programnyelvek: PHP, Java, Python, Final Verdict. A Webby Giants szerint 2019-ben a nyolc legmegfelelőbb nyelv: Python, Rust, Java, Go, JavaScript, TypeScript, C#, PHP.

Ahogy láttuk, a Python jelenleg, és növekedési ütemét tekintve még jó ideig biztosan az egyik legszélesebb körben használt magas szintű programozási nyelv. Ez a nyílt forráskódú nyelv az elemzők és a fejlesztők számára is a legjobb választás szabványos könyvtárával, megvalósítási funkcióival, beépített API-jaival, illetve háttérszolgáltatásaival a biztonság és az URL megbízhatóságának mérésére. Támogatja sikerét számos webfejlesztési keretrendszer is, például a Django, a Pyramid, a Turbo Gear és a Flash. Használják ipari alkalmazások, webes alkalmazások, webhelyek, asztali alkalmazások, gépi tanulás, adatelemzés, hálózatépítés és még sok más területen.

A 2018-ban a Stackoverflow Developers felmérésen keresztül bevezetett Rust forradalmasíthatja a szoftveripart. Alacsony szintű programozási nyelv, teljesítménykritikus feladatok megvalósításához való. Fejlesztése során cél volt, hogy elkerüljék a függő mutatókat, a puffertúlcsordulásokat, a szintaxis- és memóriahibákat.

Évtizedek óta a Java-t tartják a legnépszerűbb objektumorientált programozási nyelvnek. Bár a rangsorokban nem mindenütt az első, csak az első közötti, értékét és megbízhatóságát alátámasztja, hogy platformfüggetlen – write once tun anywhere, vagyis írd meg egyszer, és fut bárhol (ahol fut a Java Virtual Machine).

A nyílt forráskódú Go-t a Python ihlette, nyelve is hasonló ahhoz, egyszerűbb szintaxisú, a C/C ++-hoz hasonló hatékony erőforrásokkal. A Go-t többmagos alkalmazásokhoz, konkurens programok készítéséhez javasolják funkciói és továbbfejlesztett forrásai miatt. A nyelv egyesíti a funkcionális és az objektumorientált alapú programozási nyelvek legjobb aspektusait többek között beépített fejlesztési eszközökkel.

A JavaScript magas szintű, interpreter típusú, objektumorientált programozási nyelv, amely viselkedést vált ki a weboldalakon. A nyelv fontos szerepet játszik a front-end fejlesztésében. Leginkább a közösségi média platformjai számoltak be arról, hogy a JavaScript intuitív módon nyújt statikus és dinamikus weboldalakat zökkenőmentesen.

A JavaScript több böngészővel kompatibilis, felépítése logikus. Mivel front-end fejlesztési nyelv, számos népszerű keretrendszerben is használják, például AngularJS, Node.js és React.js keretrendszerekben. A 2018-as statisztikák szerint a JavaScript az egyik legnépszerűbb programozási nyelv, amely előrelép a játékfejlesztés, a dolgok internete és a robotika területén.

A JavaScript által ihletett TypeScript nyílt forráskódú programozási nyelv. Elsősorban nagyszabású alkalmazásfejlesztéshez használják. Nemcsak a front-end fejlesztésben elterjedt, hanem manapság hibrid mobil alkalmazások, mesterséges neurális hálózatok és mesterséges intelligencia alapú robotok programozásában is használt.

A C# domináns alkalmazásprogramozási nyelv Windows-ra, webalapú és mobil alkalmazásokhoz, illetve a Microsoft platform egyéb tagjaira. A C# szintaxisstruktúrája a C/C++-éból származik, de azoknál könnyebb használata azok számára, akik ismerik a C/C++ családot.

A C# tartalmazza az általában webhelyek és webalapú alkalmazások készítéséhez használt ASP.NET-keretrendszert, amely gyors alkalmazásfejlesztést tesz lehetővé. Virtuális valóság alkalmazások esetén is érdemes a C# tanulásába fektetni, továbbá 2D és a 3D videojátékok fejlesztéséhez a Unity 3D platform választása esetén is ez az ajánlott nyelv.

Az egész világon a PHP a legnépszerűbb szerveroldali szkriptnyelv. Folyamatosan fejlesztik, frissíthetjük verziónkat, ha a soros kódrészleteket statikus HTML fájlokban valósítottuk meg. A PHP ideális a professzionális webfejlesztők és a hatékonyan programozni kívánók számára azért is, mert számos keretrendszerrel együttműködik, például Laravel, Code Igniter és Symphony keretrendszerrel.

De ennyi nyelvet hogyan sajátítson el a kezdő programozó? Jean-Baptiste Jung (2019 július) az alábbi hét lépést javasolja a professzionális webfejlesztést megcélzóknak:

  1. Specializálódás. Szakosodhat a front-end vagy a back-end webfejlesztésre. A full stack fejlesztést megcélzóknak a front-enddel kell kezdeniük.
  2. Programozási nyelvtudás megszerzése. A szakosodásból következik, hogy mely programozási nyelveket kell megtanulni.
  3. Kis projektekben részvétel, saját online portfólió létrehozása. Kis projektekkel kezdve egyre nagyobbakat kell végigvinni. A nagy és összetett webhelyek egyszerű elveken alapulnak, kis projektek során felépíthetők. A kis projektekben létrehozott eredmények beépítve a saját weboldalba bemutatják a fejlesztő készségeit, tapasztatait. A közösségi média, illetve szakmai közösségekben jelenlét is ajánlott a programozási tudás megmutatására, a többi kódolóval találkozáshoz és a projektek kidolgozásához.
  4. Türelmes tesztelés és hibakeresés. A kódokat alaposan ellenőrizni kell, és ha türelemesek vagyunk a hibakeresés során, a jövőben a nagyobb projektekben kisebb eséllyel ismételjük meg hibáinkat.
  5. Webfejlesztői fórumhoz csatlakozás. Ezeken a fórumokon tanulhatunk mások hibáiból, megítélhetjük mások munkáit, tájékozódhatunk a fontos frissítésekről és hírekről, kérhetünk szakmai segítséget.
  6. Webhelyekről tanulás. Számos webhely nyújt újrafelhasználható kódokat is, amelyek beépíthetők a saját projektbe, segítve a gyorsabb tanulást.
  7. Gyakorlás. A sikeres weboldalak mögött hatalmas mennyiségű képzésben részvétel és gyakorlat rejlik. Ez csak önálló gyakorlással érhető el.

Összegzés

A Java compiler típusú, általános célú, magas szintű, objektumorientált programozási nyelv. Világszerte minimum 15 milliárd eszközt irányít, és több mint 10 millió fejlesztő dolgozik vele. Az SE fejlődése töretlen. Hatékonyan készíthetők vele platformfüggetlen szoftverek, amelyek bárhol futtathatók, ahol van telepítve Java virtuális gép („compile once, run anywhere”). Használják Android- és asztali alkalmazások, adatbázisok fejlesztésére, és gyakorlatilag az elsődleges nyelv az ügyviteli, vállalati rendszerekhez, a szerver-architektúrákhoz és a felhőben történő fejlesztéshez. A legnépszerűbb weboldalak többségénél használják a Java-t (is) szerveroldalon.

Első programozási nyelvnek kiváló a Java. Azért is, mert a tanulás kezdetén online is lehet tanulni a kódolást. Később az EE fejlesztői környezet kialakítása már komolyabb tervezést és fejlesztést igényel.

A fent bemutatott rangsorok alapján is látható, hogy a Java tanulásába előnyös fektetni. Nem minden feladathoz legjobb választás a Java, illetve minden nyelvnek megvannak az előnyei és a hátrányai. Mindig a feladat igényeire kell összpontosítani, hiszen a népszerűségen kívül sok más tényező is meghatározza a szoftverek fejlesztéséhez legmegfelelőbb programozási nyelve(ke)t.

Interjú Schmidt Attilával

Schmidt Attila

Schmidt Attila három éves szoftverfejlesztői gyakorlattal (főként Android platformhoz kötődően) és két éves szoftvertesztelői tapasztalattal rendelkező mérnök-informatikus.

Schmidt Attila

Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője – készítette 2019. augusztus 22-én.

K. S.: Már főiskolai tanulmányaid alatt is dolgoztál. Hogyan kerestél és találtál akkor munkát?

S. A.: Akkoriban még nem volt szakmai gyakorlatom és egy olyan helyen szerettem volna ezt abszolválni, ahol esetleg később teljes munkaidőben tudom folytatni a munkát. Hivatalos álláskereső oldalakon nézelődtem, nyitott szemmel jártam és a csoporttársaim tapasztalataira hagyatkoztam. Így sikerült bekerülnöm az első céghez ahol dolgoztam mobilfejlesztőként, ahol a főiskoláról egy csoporttársam volt a mobilos csapatnak a vezetője. Itt szereztem alaptudást a munka kapcsán és tapasztalatot gyűjtöttem, hogy hogyan megy mindez a gyakorlatban.

K. S.: Miről szólt a Tallymarks projekted?

S. A.: A Tallymarks egy számomra kedves mobilalkalmazás, amely ugyan egyszerű, mint a faék, a program működése viszont némileg bonyolultabb logika mentén megy végbe. 5 strigulát kell húznunk a kijelzőn: négyet függőlegesen az utolsót keresztben, mindezt úgy, hogy a program csak érvényes strigulát fogadjon el, így növekszik a számláló és tartja számon (azt, amit előtte beállítottunk például, hogy egy sorozatban hol tartunk). Sok hasonló alkalmazás létezik ezen a területen, de a kijelzőn történő rajzolás és ehhez tartozó funkció egyedülálló volt akkoriban, amikor ezt a programot fejlesztettem.

K. S.: Milyen szakterületei vannak a szoftverfejlesztésnek mobil platformhoz kötődően? Megfogalmaznád a kezdők és a rutinosak szintjén kétféleképpen ezeket?

S. A.: Kezdetben ezekre kell fókuszálni leginkább: UI összeállítása (XML), hálózatkezelés, funkciók implementálása. Ehhez jön később az adatbázis írás/olvasás, push notification/notification kezelés, verziókezelés (Git), hálózati kommunikáció és minden egyéb.

K. S.: Megpróbálnád kategorizálni – tudom, hogy nagyon nehéz – a szoftvertesztelés során előforduló tipikus hibákat? „Mire gondolt a költő”, amikor erről beszélünk…

S. A.: Tipikus hiba talán nem is létezik, ha csak nem nagyon hasonló programokat tesztelünk, amik egy kaptafa alá tartoznak, és mindig rögtön kitaláljuk, hogy hol van hiba a programban. Inkább a funkciók kombinációiban szoktunk hibára gyanakodni, de ezek nem tekinthetőek tipikusnak.

K. S.: Hogyan zajlott fejlesztőként egy tipikus munkanapod? Hogyan zajlik tesztelőként egy tipikus munkanapod?

S. A.: Az én esetemben minden nap azzal kezdődött fejlesztőként, hogy átgondoltam mi az, amit előző nap csináltam, és mi az, amit ma el szeretnék érni. Ez tesztelőként sincsen másképp, annyiban változott, hogy különböző feladataim vannak, fejlesztőként eldönthettem, hogy mi következik: például a szerver kommunikáció vagy a program funkcionalitása. Tesztelőként különféle feladatok vannak – amik függnek a program állapotától – és ez határozza meg a tesztelendő területet illetve a feladat típusát is, hogy most éppen tesztelnem kell-e, teszttervet készíteni, egy már meglévő és a rendszerben szereplő hibajegyet ellenőrizni. Persze

„a programozás lényegesen több gondolkodást igényel, mint a tesztelés”

hacsak nem automatizálásáról beszélünk – amivel én ezt a szakmát kezdtem –, és ilyen esetben is

„lényeges az, hogy mi a cél és milyen szerepet töltünk be a fejlesztés során”.

Schmidt Attila

K. S.: Jelenlegi munkád szakmai részében milyen szoftvereket használsz? Melyiket mire?

S. A.: Helix Alm (testtrack) – hibajegykezelés, Microsoft Teams – kapcsolattartás, Notepad++ – forráskód olvasás/írás.

K. S.: A munkád szervezéséhez kötődően (projektmenedzsment, időgazdálkodás, SCRUM, kommunikáció, verziókezelés) milyen szoftverekkel találkoztál eddig?

S. A.: SourceTree – verziókezelés, Trello – projektmenedzsment, Slack vagy MSTeams – kommunikáció.

K. S.: Általában atipikus, hogy fejlesztői pozíció után valaki tesztelőként folytatja. Mi motivált a váltásra?

S. A.: 2016-ban mobilfejlesztőként dolgoztam és a főnököm megkérdezte, hogy szeretnék-e tesztelő lenni, mert az egy halom pénzbe kerül a cégnek. Boldogan mondtam, hogy persze miért is ne, hiszen érdekelt ez a terület, valamint fejlesztőként is tesztelek ugyan, de kicsit mélyebben is szívesen beleásnám magam.

Fejlesztőként TDD-vel kezdtem, ami az automatizálás része. Kis idő múlva a cég elnyert 2-3 nagyobb projektet is és ezeknek én lehettem a tesztelője, így a manuális tesztelői világ is kinyílt előttem, ráadásul az akkori kollégáimmal – akik a fejlesztésben voltak jelen – remekül tudtam együttműködni.

Azt gondolom, hogy

„a fejlesztésben akkor lehetünk sikeresek, ha már elegendő rutinunk van egy projektet végigvinni az elejétől a végéig és ehhez sok-sok munkatapasztalatra és tudásra van szükség”.

A tesztelésben inkább a jártasság és a tapasztalat számít például, hogyan álljunk neki egy program tesztelésének.

K. S.: Mennyire csapatjátékosok a fejlesztők és a tesztelők? Milyen soft skillek hasznosak ezekben a munkakörökben?

S. A.: A fejlesztő és a tesztelő közötti kapcsolat nagyon fontos, elsősorban úgy gondolom, hogy a tesztelőnek kell azt éreztetni, hogy a fejlesztő munkáját szeretné segíteni és nem hátráltatja azt. Alapszabály, hogy nem szabad sokat kérdezni. Inkább egy adott problémát körültekintően körbe kell járni és meg kell érteni a probléma okát. Így meghatározó információval tudunk szolgálni, amikor a fejlesztő elé állunk, vagy ha csupán hibajegyet rögzítünk, ezzel (is) könnyítve a fejlesztő munkáját is a hiba kijavításában.

Ha csapatjátékos és segítőkész hozzáállást tanúsítunk, az sokat segíthet mind a két szakterületen, ezzel elősegítve azt, hogy hasznos információkhoz jussunk, amelyek segítenek a projekt előre haladásában.

K. S.: Ha a szakmai pályafutásod hossza 100 egység, akkor jelenlegi tapasztalataid alapján hol tartasz, és milyen mérföldköveket fogalmaznál meg ehhez kötődően?

S. A.: Ez kimondottan nehéz kérdés, de azért nem megválaszolhatatlan. Úgy gondolom, hogy az elmúlt 5 évben találkoztam pár dologgal ezen a két területen. A fejlesztést tekintve: az egy komoly mérföldkő, amikor a fejlesztő állítja elő a backendet is magának és erre írja meg a frontendet. Létrehozza a szervert, az adatbázist majd a végterméket. Ha években szeretnénk felállítani mérföldköveket magunknak, akkor a standard 1-3, 3-5, 5+ amivel számolni lehet, de ez nem mutat rá a munkavállaló tudására.

A tesztelést akkor kezdtem el, amikor a fejlesztésben úgy 15-25 között voltam és ez azóta nem is mozgott tovább, bőven lenne még mit tanulnom ezen a területen. A tesztelésben a tapasztalatok alapján egy kicsivel előrébb tartok, de ebben a szakmában is van hova tovább. Inkább az automata tesztelés felé szeretnék specializálódni.

K. S.: Hogyan tovább, mivel fogsz foglalkozni 5-10 év múlva?

S. A.: Célom, hogy tesztmenedzserré váljak és egy tesztelői csapatot koordinálhassak. Így képzelem el a jövőt 5 év múlva. Addig pedig minél több területen szeretnék tapasztalatot gyűjteni és kiegészíteni meglévő tudásomat. Érdeklődöm afelől is, hogyan zajlik a fejlesztés máshol, akár kisebb vagy nagyobb méretű cégről legyen szó.

Schmidt Attila

K. S.: Véleményed szerint mitől függ egy szoftverfejlesztő, szoftvertesztelő fizetése?

S. A.: Elsősorban a cég méretétől: startup, 10-15 éve működő vagy multinacionális. Másodsorban a munkavállaló években mérhető tapasztalatától. Ennek a kettőnek a függvénye adja meg a fizetést.

K. S.: Milyen tapasztalatod van bootcamp-es kollégával? Mit gondolsz, az idősebb (30+, 40+) karrierváltókat mi motiválja, hogy szoftverfejlesztők legyenek?

S. A.: Szerintem elsősorban a fizetés, mert sokat hallani, hogy kiemelkedően lehet keresni ezen a területen és érdeklődnek a szakma iránt, illetve érdekes is annak, aki lát benne perspektívát és elhivatott.

K. S.: Kipróbálnád magadat külföldön fejlesztői vagy tesztelői munkakörben?

S. A.: Mindig úgy voltam vele, hogy én itthon szeretnék dolgozni. Bőven van munka IT területen itthon, sőt egyre több. Egyelőre nem gondolkodom külföldi munkavállaláson, de sose tudni: biztosan átgondolnám, ha lenne rá lehetőség.

K. S.: A Java EE szoftverfejlesztő tanfolyamunk részletes tematikájához tartozik a hálózatkezelés, XML és JSON feldolgozás, valamint különböző hálózati kommunikáció megvalósítása is (Socket, RMI). Mennyire hasznosak ezek a témakörök, esettanulmányok azoknak, akik mobil irányba szeretnének specializálódni?

S. A.: A XML és JSON mindenképpen már kezdetben is hasznosak, a Socket, RMI szintén és gondolom, időben később játszanak szerepet és mindenképpen jó, ha a tanfolyam során ezekkel is megismerkedünk.

K. S.: Véleményed szerint a mesterséges intelligencia különböző szakterületei milyen hatással lesznek a szoftverfejlesztéssel és teszteléssel foglalkozó szakemberek hétköznapi tevékenységeire a közeli jövőben? És hosszabb távon?

S. A.: „Már saját magát tanítja programozni a mesterséges intelligencia.” Azt hiszem ezzel a mondattal válaszoltam is egyben arra, hogy milyen hatással lesz idővel a szoftverfejlesztésre. A tesztelésben szerintem kiváltja a konkrét tesztelőt, mint ahogyan egy gyár csomagoló részlegén a gép leváltotta már az embert, és még sokkal hatékonyabb is.

K. S.: Van kedvenc IT-s idézeted?

S. A.: “Quality is never an accident, it is always the result of intelligent effort.” – John Ruskin
Ha magyarul szeretném ezt megfogalmazni: a minőség sosem véletlenszerű, hanem a szakszerű erőfeszítés eredménye.


Blog bejegyzéseink IT karrier témakörben

Csolti Péter

Interjú Csolti Péterrel

Csolti Péter informatikatanár, az OKJ szakképzés területén dolgozik. Több intézményben is programozást tanít. A SZÁMALK-Szalézi Szakgimnáziumban a szoftverfejlesztő szak szakfelelőse. Ismeretsége az informatikával a Word és az Excel programokkal kezdődött ...
Bővebben
/
Révész András

Interjú Révész Andrással

Révész András alapvégzettsége biológus, ökológia szakiránnyal. Szakmai pályafutását tájökológiával kezdte, azon belül is élőhely térképezéssel, amihez kötődik a térinformatika. Négy évig kutatás-fejlesztéssel foglalkozott az MTA Ökológiai és Botanikai Intézetében, majd ...
Bővebben
/
Schmidt Attila

Interjú Schmidt Attilával

Schmidt Attila három éves szoftverfejlesztői gyakorlattal (főként Android platformhoz kötődően) és két éves szoftvertesztelői tapasztalattal rendelkező mérnök-informatikus. Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője ...
Bővebben
/
Takács Roland

Interjú Takács Rolanddal

Takács Roland egyéves automatizálási teszt mérnöki és ötéves professzionális adatbázis-kezelés (MSSQL, Oracle) tapasztalattal rendelkező mérnök-informatikus. Jól érzi magát multikulturális környezetben. 2017 nyara óta külföldön él és dolgozik. 2018 őszétől PL ...
Bővebben
/
Lovas Bertalan

Interjú Lovas Bertalannal

Lovas Bertalan 22 éves pályakezdő szoftverfejlesztő. A kütyük mindig érdekelték. Hivatásként és hobbiként is gondol a programozásra. Sportos, korábban dzsúdózott, tornázott és a műugrást is kipróbálta. Korábban részt vett a ...
Bővebben
/

Interjú Görög Ibolyával

Görög Ibolya protokollszakértőt mindenki ismeri, bemutatni nem szükséges. De mégis illik, legalább röviden: 1987-től 1999-ig a Miniszterelnöki Hivatal protokollosa, majd protokollfőnöke volt, illetve 1999-től felnőttképzésben oktat. Érdeklődési körébe tartoznak: viselkedéstörténet, ...
Bővebben
/

Interjú Szűcs Tiborral

Szűcs Tibor mérnök-informatikus. Jelenleg a Corvinus Egyetem Koordinációs Irodáján dolgozik órarendszerkesztőként. Ez a feladat a létesítménygazdálkodáshoz kötődik és ő osztja be – sok-sok szempont alapján – az előadásokat, szemináriumokat, számítógépes ...
Bővebben
/
Nádai Gábor

Interjú Nádai Gáborral

„Nádai Gábor vagyok, de sokan leginkább Mefiként ismernek, a legtöbb felületen a @mefiblogger nicknév alatt vagyok elérhető. Eredetileg mérnökinformatikusként végeztem, a kétezres évek közepén a fősuli mellett saját vállalkozásba kezdtünk ...
Bővebben
/
Markovics Győző

Interjú Markovics Győzővel

Markovics Győző nem­zet­kö­zi kap­cso­la­tok sza­kos köz­gaz­dász, va­la­mint po­li­to­ló­gi­át is ta­nult a Bu­da­pes­ti Cor­vi­nus Egye­te­men. Az egye­tem­től fő­ként időt ka­pott – fel­nő­ni a kép­zés alatt. Gya­kor­la­ti is­me­re­te­it min­dig mun­ká­val sze­rez­te. Csa­lá­di ...
Bővebben
/

Hogyan írjunk szakmai CV-t?

CV-logo

CV-logoHogyan írjunk curriculum vitae-t vagy resume-t, magyarul önéletrajzot, ha álláspályázatra kívánjuk beküldeni? Tanfolyamaink orientáló moduljának 17-20. óra: Soft skill tréning alkalmán foglalkozunk ezzel (is). Részletes ILIAS-os tananyagot állítottunk össze önéletrajzírással kapcsolatosan. Az alábbi kérdésekre adunk választ, figyelembe véve a tipikus IT-s, szoftverfejlesztő szakterületre jellemző sajátosságokat.

1. A CV termék saját marketingünkhöz

  • Mi a CV funkciója, célja?
  • Miért fontos, hogy tartalmilag és megjelenésében is megfelelő legyen CV-nk?
  • Miért kell minden jelentkezéskor testre szabni a CV-t?

2. Alap-CV készítése

  • Áttekintjük a különböző CV-k típusait: amerikai, Europass, gerilla, irodalmi.
  • Milyen kötelező elemekből (adattartalom) áll a CV?
  • Hogyan szabjuk testre az alap-CV-t az egyes kiválasztott cégekre?
  • Hivatkozunk kifejezetten IT-sok számára készített CV mintákat.

2.1. Terjedelem

  • Hogyan legyünk lényegre törők?
  • Mit hangsúlyozzanak a pályakezdők?
  • Mit hagyjanak ki azok, akiknek sok tapasztalata van?

2.2. Személyes adatok

  • Szükséges fénykép? Ha igen, akkor milyen legyen a fényképünk?
  • Miért fontos a lakhelyünk a munkaadónak?
  • Kell-e az életkorunk?
  • Milyen elérhetőségeinket adjuk meg?

2.3. Kronológiailag rendezhető részek

  • Milyen sorrendben adjuk meg végzettségeinket, munkahelyeinket?
  • Milyen adatokat adjuk meg végzettségeink, továbbképzéseink, nyelvvizsgáink esetén?
  • Hogyan adjunk képet eddigi karrierünkről, szakmai tapasztalatainkról?
  • Hogyan derül ki a munkaadó számára a CV-nkből, hogy meg tudjuk-e oldani a náluk felmerülő konkrét feladatokat?
  • Hogyan adjunk meg referenciákat?
  • Mit hangsúlyozzanak a pályakezdők?

2.4. Egyéb releváns adatok

  • Milyen nyelvet tudunk szakmai szempontból használni?
  • Milyen vezetői engedéllyel rendelkezünk?
  • Milyen informatikai ismeretekkel rendelkezünk (általánosan)?
  • Milyen hobbijaink, szabadidős tevékenységeink vannak, illetve mi iránt érdeklődünk?
  • Hogyan rangsoroljunk, ha ez a rész túl hosszú lenne?

2.5. Ne tegyük

  • Adjunk-e meg bérigényt? Ha igen, akkor hogyan? Ha nem, akkor miért nem?
  • Vannak-e kényes információk, amelyeket nem érdemes megadni a CV-ben?
  • Kézzel vagy szövegszerkesztővel készítsünk CV-t?

2.6. Ellenőrzés

  • Beadás előtt ellenőrizzük: helyesírást, ragozást, rövidítéseket, dátumokat, fájl nevét.

3. CV „cégre szabása”

3.1. Tájékozódás

  • Mik derülnek ki egyértelműen az álláspályázatból? Mi van a sorok között?
  • Mit és hogyan, milyen formában kérnek?

3.2. Átlátható formátum

  • Hogyan készítsünk letisztult megjelenésű CV-t?
  • Hasznosak-e a letölthető CV sablonok? Érdemes ezeket testre szabni?
  • Mikre figyeljünk, ha szakmai CV-t generáló honlapot használunk?

3.3. Ellenőrzés

  • Felsoroltunk minden – a pozíció szempontjából lényeges/szükséges – információt?
  • Megfelelő a dokumentum – mint grafika – a képernyőn és nyomtatva is?
  • Milyen visszajelzést adott családtagunk vagy barátunk, akitől véleményt, kritikát kértünk CV-nkel kapcsolatosan?
  • Megfelelő a fájl mérete?

4. Álláskeresés és pályázati anyag beküldése

4.1. Lehetőségek

  • Álláshirdetések, állásközvetítő, személyes kapcsolat, direkt jelentkezés, állásbörze…

4.2. Motivációs és kísérőlevél

  • Mire való a motivációs levél?
  • Milyen elemei vannak a motivációs levélnek?
  • Mire való a kísérőlevél?
  • Milyen elemei vannak a kísérőlevélnek?
  • Mintákat hivatkozunk…

4.3. Internetes felületen jelentkezés

  • Mikre figyeljünk webes űrlapok kitöltésekor?
  • Hogyan használjuk a LinkedInt?

4.4. Automatikusan feldolgozott CV-k

  • Milyen kulcsszavak használata célszerű, ha adatbázisba került adatok alapján szűr/válogat a cég?
  • Milyen releváns szakkifejezések a tipikusak?