Kutatók éjszakája 2019

Kutatók éjszakája

Kutatók éjszakájaA Kutatók Éjszakája nemzetközi rendezvénysorozat 2005-ben indult. Magyarország 2006-ban csatlakozott. Azóta évről-évre egyre több intézmény nyitja meg hazánkban kapuit, szervez érdekes programokat, sok-sok településen, több száz helyszínen, több ezer eseményt meghirdetve sok tízezer érdeklődő/résztvevő látogatónak biztosít tartalmas estét.

Bár a kezdeményezés elsősorban a kutatói pálya népszerűsítését szolgálja, ezért leginkább a tizen- és huszonévesekre számít, az események vonzók és elég érdekesek ahhoz, hogy a kisgyerekektől a legidősebbekig mindenki megtalálja a számára izgalmas programokat. Korábban nagyobb felsőoktatási intézmények és kutatóintézetek szerepeltek döntően, de az utóbbi néhány évben egyre több kisebb intézmény, tehetséggondozással foglalkozó középiskola, cég, egyesület is csatlakozott a rendezvényhez. A Kutatók éjszakája rendezvény minden meghirdetett programja ingyenes.

Rendezvényünk plakátja

it-tanfolyam.hu_Kutatok_ejszakaja_2019_plakat

Az it-tanfolyam.hu 2019-ben sem marad ki a sorból. (2018-ban is szerveztünk programokat.) Meghirdettünk öt programot a kutatokejszakaja.hu weblapon. Az eseményekre regisztrálni kell a weblapon, ami talán szervezőként ránk keresve bizonyul legegyszerűbbnek. Szervezői lapunk: https://www.kutatokejszakaja.hu/szervezo-intezmeny/it-tanfolyam-hu/. A regisztrációs időszak szeptember 14-26-ig tart és a programjainkra szeptember 27-én 17:40-20:50 óráig kerül sor.

Bízunk abban, hogy idei programjaink is népszerűek lesznek, sok-sok kérdés is elhangzik és kellemes hangulatú szakmai párbeszéd alakul ki.

Az előadások prezentációit tanfolyamaink hallgatói számára – a témához kapcsolódó témakörökhöz, ILIAS-ra feltöltve – tesszük elérhetővé.

17:40-18:10 – Milyen eséllyel és hány találatos szelvénnyel nyerhetünk, ha sok lottószelvénnyel fogadunk?
Véletlenszám-generátorral lottószelvényeket állítunk elő. Különbözőeket. Sokat: ezret, tízezret, százezret. Azután szimulálunk egy lottósorsolást. Megnézzük az eredményeket: hány darab két-, három-, négy- és telitalálatos szelvényt kaptunk. Átgondoljuk, hogy milyen eltérések adód(ná)nak ötös-, hatos- és heteslottó esetén. Közösen áttekintjük a Java nyelven implementált szoftver lépéseit és testre szabásának lehetőségeit. A program a Java SE szoftverfejlesztő tanfolyamunk tematikájához kapcsolódik.

18:20-18:50 – Tervezzünk hálózatos programokat! – Denevérek a barlangban
Adott a szerver és kliensek. Előbbi a barlang, utóbbiak a denevérek. Átgondoljuk, hogyan kommunikálnak egymással és ennek milyen elvi és gyakorlati megvalósítási lehetőségei adódnak. Ismertetjük a Java RMI technológiáját. Mit érdemes megmutatni a két program működése közben? Közösen áttekintjük az osztálydiagramot és a Java forráskódokat. Ötletelünk és megfogalmazunk sok-sok ötletet a továbbfejlesztésre. A program a Java EE szoftverfejlesztő tanfolyamunk tematikájához kapcsolódik.

19:00-19:30 – Jelenítsük meg webes térképeken Céline Dion koncertturnéjának helyszíneit!
A híres énekesnő idén szeptemberben világ körüli turnéba kezd (Courage World Tour) és ennek állomásait kb. fél évre előre meghirdették már áprilisban. Ismertetünk egy esettanulmányt. Ez egy hálózatos Java projekt, amely webről összegyűjtött adatok alapján, többféle Google Charts objektumot állít elő. A termék JavaScript-re épülő weboldalak sokasága, amely tipikus felhasználói igényeket/követelményeket kielégíthet. A megvalósítás kivételkezelést alkalmaz, HTML és JSON tartalmat olvas és generál, valamint elvégzi/elvégezteti az adatok térképen való megjelenítéséhez szükséges geokódolást. Az előadás ismerteti a specifikáció és a tervezés lépéseit, az implementációt, a tesztelést, valamint továbbfejlesztési javaslatokat is ad.
A program a Java EE szoftverfejlesztő tanfolyamunk tematikájához kapcsolódik.

19:40-20:10 – Írjunk hatékony adatbázis-lekérdezéseket!
Az Oracle HR sémában, először tipikus, hétköznapi szavakkal megfogalmazunk néhány lekérdezést, majd SQL nyelven megvalósítjuk és elemezzük, hogy helyesek-e, hatékonyak-e, mit adnak vissza. Szükség esetén optimalizáljuk, testre szabjuk ezeket. Kategóriák: egyszerű, összetett, aggregáló, soktáblás, hierarchikus/rekurzív lekérdezések. Ha lehet, grafikusan is megjelenítjük a lekérdezések eredményeit Java swing felületen, beépített JTable és JTree komponensekkel, illetve JFreeChart grafikonnal is. A Java adatbázis-kezelő tanfolyamunk tematikájához kötődik a program.

20:20-20:50 – Kaczur Sándor: Gondolkodjunk logikusan!
Az előadás során áttekintjük az intelligencia, a kreatív problémamegoldó és logikus gondolkodás összefüggéseit és izgalmas feladatokból válogatva közösen megoldunk néhány fejtörő feladatot.

 

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

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
/

KSH táblázatból dolgozunk

KSH-logo

KSH-logoA Központi Statisztikai Hivatal honlapján elérhető STADAT táblákból könnyen kinyerhetjük a nekünk szükséges adatokat. A témastruktúrába sorolt online és XLS exportként is böngészhető táblázatokban megtalálhatjuk logikusan csoportosítva összesítve az adatokat régiónként (megyénként), évenként, százalékosan. Az XLS fájlformátum Java nyelven a JExcel API-val hatékonyan feldolgozható. Lássunk erre egy példát!

Feladat

A KSH 2.1.2.35. táblázatából gyűjtsük ki a 19 magyar megyére + Budapestre vonatkozóan a gazdaságilag aktívak létszámát és az első évet alapnak tekintve adjuk meg évenként a változást százalékosan!

Tervezés

A KSH témastruktúrában a táblázat elérési útja:

  • 2. Társadalom,
  • 2.1. Munkaerőpiac,
  • 2.1.2. A munkaerőpiac alakulása Magyarországon (1998–2018) -> Területi adatok,
  • 2.1.2.35. A 15–64 éves népesség gazdasági aktivitása megyénként és régiónként (1998–2018)

Online böngészhető táblázat:
https://www.ksh.hu/docs/hun/xstadat/xstadat_hosszu/mpal2_01_02_35.html.

Letölthető táblázat (XLS formátumban): https://www.ksh.hu/docs/hun/xstadat/xstadat_hosszu/xls/h2_1_2_35.xls.

A táblázat A oszlopában szerepelnek a régiók, megyék, időszakok (vegyesen, szövegként) és a D oszlopában a gazdaságilag aktívak (ezer fő, valós számként). A fejlécet nem szabad feldolgozni. 1998-tól 2018-ig 546 sorból áll az adatsor. A csoportosítás 26 régiót és megyét tartalmaz, amiből a 6 régiót (például: Közép-Dunántúl) ki kell hagyni.

A megyékre vonatkozóan 440 sort kell feldolgozni. Ebből az első sor a megye (vagy Budapest) neve, a többi (2019-ben 21 db) sorban találhatók az adatok (időszak). Olyan algoritmusban érdemes gondolkodni, ami a jövőben is működik. Ha csoportváltást alkalmazunk, akkor nem számít, hogy megyénként minden évben egy sornyival több adat lesz majd. A KSH táblázatok szerkezete nagyon ritkán változik, így bátran írható rájuk testre szabott forráskód (ezeket nem kell évente frissíteni).

Az évenkénti változást százalékosan nem tartalmazza a táblázat, ezt nekünk kell kiszámítani. A valós számok formázását érdemes egységesíteni, például a gazdaságilag aktívak létszámát 3 tizedesre, a változást 2 tizedesre kerekítve.

A belső adatábrázolást érdemes átgondolni. Hasznos, ha az időszakhoz tartozó három összetartozó adatot egyetlen Data POJO-ba fogjuk össze ( String period, double active és double change). Ezeket generikus listába szervezve ( ArrayList<Data> list) könnyen hozzájuk rendelhető a megye ( String county) és ezek együtt alkotják a Region POJO-t. A Region és Data kapcsolati fokszáma: 1:N. 2019-ben N=21 .

Részlet a megoldásból

A JExcel API használatához a Java projekthez hozzá kell adni a jxl.jar fájlt. A XLS fájl olvasható közvetlenül a webről is, de egyszerűbb helyi fájlrendszerbe mentett változatból dolgozni ( ./files/h2_1_2_35.xls). A megyék nevében található ékezetes karakterek miatt ügyelni kell a megfelelő karakterkódolásra ( Cp1252). A munkafüzet azonosítását követően hivatkozni kell a feldolgozandó munkalapra ( 2.1.2.35.). Az adatfeldolgozás során kihagyott régiókat (kivételeket) érdemes listába gyűjteni ( skipRegionList). A csoportváltást a két egymásba ágyazott ciklus valósítja meg. Ügyelni kell az adatok formátumának ellenőrzésére.

Eredmények

Például Somogy megyére az alábbi adatokat kapjuk eredményként (XLS formátumban, Excel-be betöltve, tipikus háttérszín kiemeléssel: szélsőértékek a C oszlopban, negatív értékek a D oszlopban):

KSH-result

További programozható feladatok

A bejegyzéshez tartozó teljes forráskódot ILIAS e-learning tananyagban tesszük elérhetővé tanfolyamaink résztvevői számára.

A feladat a Java SE szoftverfejlesztő tanfolyam tematikájához kötődik (ha az XLS fájlt a helyi fájlrendszerből érjük el), és a Java EE szoftverfejlesztő tanfolyam tematikájához kapcsolódik (ha az XLS fájl tartalmát közvetlenül a webről olvassuk).

Interjú Takács Rolanddal

Takács Roland

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 SQL fejlesztő Madridban.

Takács Roland

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 25-én.

K. S.: Hogyan kerestél és találtál munkát a diploma után?

T. R.: Bevallom, az államvizsga előtt volt bennem egy kis aggódás, hogy vajon mennyi időbe fog telni elhelyezkednem. Két héttel a vizsga előtt beregisztráltam a profession.hu oldalra, ahonnan több hívást is kaptam. Az államvizsga után már csak az utolsó kör interjú volt hátra az akkori menedzseremmel, és szerencsére a következő hónap elején már kezdhettem is a Cognizantnál, ahol PL SQL fejlesztőként dolgoztam. Hangulat és munkatársak szempontjából ez volt az eddigi legjobb munkahelyem, jó érzés volt munkába menni reggelente. Szerencsére jelenlegi munkahelyem is hasonló.

K. S.: A jelenlegi a negyedik munkahelyed. Miért és hogyan váltottál?

T. R.: A Cognizantot, ahol 3 évig dolgoztam, legfőképpen a további tanulási lehetőség hiánya miatt hagytam ott, illetve ki akartam próbálni más szakterületet is, amihez az automatizált tesztelői pozíció jónak ígérkezett. Így kerültem a Blackbelthez, ami egy rohamosan bővülő, nagyszerű magyar cég, tele nagyon jó szakemberekkel. Itt rájöttem, hogy a jövőben nem szeretnék teszteléssel foglalkozni, viszont rengeteget tanultam általánosságban, illetve megismerkedtem a Pythonnal. 2017 nyarán eljött a pillanat, amikor nem csak munkahelyet, hanem országot is váltottam. Máltára, egy fiatalos, napsütötte szigetre költöztem, ahol ismét visszatértem az adatbázis-fejlesztéshez. Bő egy évvel később úgy éreztem, elég volt ennyi idő mind az akkori munkahelyemen, mind Máltán, és úgy döntöttem, hogy az egyik legjobb és kedvenc országomba, Spanyolországba költözök. Szerencsére sikerült találnom egy jó PL SQL fejlesztői állást, egy nagyon jó csapatban. Szeretem a munkámat és a csapatot is, örömmel jövök be reggelente, és nincs gyomorgörcsöm vasárnap esténként.

K. S.: Mi motivált abban, hogy külföldön élj és dolgozz?

T. R.: Engem teljes mértékben a kalandvágy és a kihívás motivált. Egyrészt mindig is szerettem utazni, felfedezni a világot, másrészt pedig szerettem volna magam kipróbálni, megmérettetni külföldön is.

K. S.: Miben más egy multikulturális környezet? A nyelvtudáson kívül milyen soft skillek segítenek abban, hogy jól érezd magad és meg tudj felelni az elvárásoknak?

T. R.: Én személy szerint nagyon szeretek multikulturális környezetben élni és dolgozni. Szeretem a kihívást, hogy idegen nyelven kell mindent megérteni és megoldani.

„Mindenképpen a nyelvtudás a legfontosabb soft skill, néhány esetben azonban fontos mérlegelni tudni egy adott munkatárs kulturális hátterét is.”

Gondolok itt arra, hogy például egy indiai sokszor akkor is igent mond, mikor tudja, hogy nem, vagy például egy máltai akkor se beszél mindig angolul, ha ott állok mellette és az én kérdésemet vitatják meg. Ezeken felül kell tudni kerekedni, persze ez csak úgy működik, ha az elfogadás és megértés kétirányú.

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

T. R.: Mindkét pozíciómban a Scrum szabályai szerint dolgoztam, dolgozom. Ezt azért szeretem, mert megvan a két hetes sprintre a tervezett munka, és nem kell „rohanni” a munka után, hanem tudok haladni a sprint board alapján.

Tesztelőként webfejlesztéssel kapcsolatos sztorikat teszteltem, az aktuális fejlesztéseket manuálisan, a korábbiakat automatizáltan. A Product Owner nagyon részletes specifikációkat írt, ami alapján könnyedén le tudtam tesztelni az adott funkciót. Napjaim legjobb része az volt, mikor az automatizált teszteket írtam.

„Sok esetben segítettem a fejlesztők munkáját, ami mindkét félnek hasznos volt.”

Jelenlegi pozíciómban PL SQL fejlesztőként dolgozom, azonban sok minden mással is foglalkozom, például VB, shell, Power BI, valamint úgy néz ki, a jövőben Node.js is. Mielőtt elkezdek egy sztorin dolgozni, többnyire tisztázom a követelményeket a Product Ownerrel, majd indulhat a munka, aminek végén próbálok működő kódot átadni a tesztelőnek. A senior fejlesztő kollégával rengeteg dolgot megváltoztattunk tavaly szeptember óta, mára eljutottunk egy egész korrekt szakmai munkafolyamathoz. Míg tavaly szeptemberben például simán felülírtunk manuálisan egy teljes SQL package-et Production-ben, addig ma már nem is emlékszem, hogy mikor nyitottam meg utoljára ott kódot.

„Különösen büszke vagyok rá, hogy a Source Control és a Continuous Integration bevezetése teljesen az én nevemhez fűződik, Git és Jenkins formájában.”

Többek között sok adatbázis tábla struktúráját és particionálási stratégiáját is megváltoztattuk, a performanciát is jelentősen javítottuk. Szakmai szempontból itt tanultam és tanulok a legtöbbet, továbbá szintén nagyon fontos, hogy a legtöbb esetben „szabad kezet kapunk”.

Takács Roland

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

T. R.: Az adatbázis-fejlesztéshez az Oracle SQL Developer-t használjuk, ami aránylag népszerűnek számít tapasztalatom szerint. Ahogy már említettem, a Source Control és a Continuous Integration a Git és Jenkins segítségével valósul meg. Szerintem az előbbiek a legfontosabbak, de használjuk még többek között a FileZilla-t (FTP kliens), Putty-t (SSH kliens), Beyond Compare-t (szövegösszehasonlító szoftver), valamint az Excelt makrók írására. A Notepad++ általam nagyon kedvelt szintén, egyszerű és nagyszerű.

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?

T. R.: A két legfontosabb a Jira es Confluence. A Jira tökéletesen megfelel egy Scrum sprint menedzseléséhez, a Confluence pedig egy sokat használt platform dokumentációk, illetve specifikációk tárolására. Egy munkahelyemen használtuk az IBM által fejlesztett RTC és RQM alkalmazásokat. Az RQM a tesztelés dokumentálására szolgál, míg az RTC webes felülete a Jira-t helyettesítette, Eclipse plugin formájában pedig a Source Control-t biztosította.

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?

T. R.: Ez nehéz kérdés, talán 20 egységet mondanék. Az informatika olyan, mint az Univerzum: hatalmas és folyamatosan tágul. Lehet, hogy amit ma a pályafutásom végének gondolok, az 20-30 év múlva már elavult technológia lesz.

Első mérföldkőnek mindenképpen az első munkahelyet gondolom, ott beleszoktam a céges környezetbe, megtanultam a vállalati kultúrát és jellemző folyamatait. Második mérföldkő számomra Málta volt, az első külföldi munkahely. Harmadik pedig a jelenlegi, madridi állásom, mivel itt tanultam szakmailag a legtöbbet.

K. S.: Hogyan tovább, mivel fogsz foglalkozni 5-10 év múlva? Tervezed, hogy hazaköltözöl Magyarországra?

T. R.: Ez nagyon jó kérdés, és pont a napokban, hetekben gondolkoztam ezen, ugyanis szeretnék valami újat tanulni. Naprakésznek kell lenni a piacon. Jelenlegi terveim szerint szeretnék elmélyülni a BI (üzleti intelligencia) adattárházak világában. Úgy érzem ebben van potenciál, elvégre nem lehetek 40 évig „sima” PL SQL fejlesztő.

„Ma azt mondanám, hogy 5-10 év múlva a BI területén fogok dolgozni, de eddigi életem annyira kiszámíthatatlan volt, hogy nem mernék rá fogadni.”

A hazaköltözés ugyan 2 éve még határozott tervem volt, ma már szinte kizártnak tartom. Egyrészt egy külföldi lány személyében talált rám a szerelem, másrészt pedig már nem tudnám megszokni az otthoni mentalitást. Mindemellett imádom a hazámat, és Budapest egy nagyszerű város.

K. S.: Tapasztalataid alapján milyen markáns különbségeket tudnál megfogalmazni informatikusokkal szemben megfogalmazott elvárásokkal kapcsolatosan itthon és külföldön?

T. R.: Szerintem ez nagyban függ az adott ország munkaerő-piacától. Például Máltán aránylag könnyű elhelyezkedni, sok cég nyit ott irodát, sok a munkalehetőség, illetve az angol nyelv hivatalos státusza révén nem követelnek meg egy második idegen nyelvet. Ehhez képest Spanyolországban nehezebb a helyzet, spanyol nyelvtudás nélkül nem olyan könnyű. Én az angolt használom a munkám során, de például a HR-en már spanyolul kell beszélni, és a céges e-mailek is spanyolul jönnek. Azt sem feledhetjük, hogy a spanyol munkaerőpiac néhány nehéz éven volt túl, jelenleg szerencsére egyre javul a helyzet. Összességében úgy gondolom, hogy az informatikában, az angolt beszélve majdnem minden európai országban el lehet helyezkedni, de sok esetben – érthető módon –, jobbnak kell lenni a helyi jelölteknél.

K. S.: Ismertek Spanyolországban a bootcamp jellegű képzések? Ha igen, milyen szakterületeken belül?

T. R.: Bevallom ebben nem vagyok jártas, de gyorsan utánakerestem, és úgy tűnik van sok az informatika területén. Tudomásom szerint egyébként Spanyolországban elég jó az oktatás, sokan jönnek ide tanulni.

Takács Roland

K. S.: Tanulmányaid alatt részt vettél Erasmus intenzív programon. Mit jelentett ez számodra?

T. R.: Mindenekelőtt egy hatalmas élmény volt, életem addigi legnagyobbja. Megtisztelőnek éreztem, hogy megkaptam ezt a lehetőséget, amely egy nagy kihívás is volt. Fontos tapasztalatszerzés volt, hogy egy teljesen külföldi környezetben, idegen nyelven tartsunk csapatban egy szakmai előadást. Nem utolsó sorban pedig rengeteg embert megismertünk, és azonnal beleszerettem Finnországba.

K. S.: Véleményed szerint a Big Data mennyire van hatással az életünkre jelenleg? Mi várható ezen a szakterületen 5-10 éven belül?

T. R.: Elképesztően nagy hatása van, szerintem sokszor nem is gondolunk bele. Csak egy példa, hogy többek között a Google vagy Facebook hirdetések, a különféle reklámok, ezek mind-mind azokon az adatokon alapulnak, amiket hatalmas mennyiségben gyűjtenek rólunk, potenciális fogyasztókról. Az egy másik beszélgetés témája lenne, hogy ez az adatgyűjtés mennyire a beleegyezésünkkel, tudomásunkkal történik. Jelenlegi pozíciómban egy piackutató cégnek dolgozok, hatalmas adatmennyiséget dolgozunk fel, riportokat készítünk különböző ügyfeleknek, akik nagyon sok pénzt hajlandóak fizetni ezért. Nyilván ezen információk birtokában jobban meg tudják célozni a potenciális fogyasztókat, illetve nagyobb hatásfokkal tudnak értékesíteni, ha tudják, hogy kinek mit akarnak eladni. Természetesen számos más területen is nagyon fontos szerepet játszik a Big Data, de talán a hétköznapi emberek számára az utóbb említett a legfontosabb, legkézenfekvőbb.

K. S.: Megfelelőnek tartod a Java adatbázis-kezelő tanfolyamunk részletes tematikáját?

T. R.: Nehéz fogást találni a tematikán, úgy látom, hogy mindenre kiterjedő és részletes a képzés. Biztos vagyok benne, hogy bárki, aki elvégzi, egy alapos, átfogó képpel fog rendelkezni és könnyedén tovább tudja magát képezni. Nagyon szimpatikus a képzés gyakorlatorientáltsága. Tudom, hogy a képzés nem az általános adatbázis-kezelésre összpontosít, inkább a Java implementáció a lényeg, azonban tapasztalataim szerint nagyon fontos a cégeknél a performancia. Esetleg ha marad egy kis idő, érdemes megemlíteni a performancia fontosságát az adatbázis-kezelésben, ugyanis céges környezetben nem néhány ezer, hanem akár több milliárd rekorddal rendelkező táblákról is beszélhetünk. A képzés jellegét tekintve szerintem elég megemlíteni és néhány példát mutatni (például indexek használata, particionálás fogalma). Nem sok ahhoz fogható öröm van, mikor például egy fél órás lekérdezés végrehajtási idejéből két perc lesz.

K. S.: Milyen hozzáállást érzékelsz az adatok felhőben való tárolásához kötődően? Mennyire tudatosak ebben az emberek? Mennyire bíznak meg ebben a cégek? Megfogalmazható valamilyen trend?

T. R.: Tapasztalataim szerint az emberek jelentős része tárol valamilyen adatot a felhőben, például én is. Nagyon kényelmes, hogy a világ bármely pontján – ahol van internet –, hozzáférhetünk a kívánt adatokhoz. Személy szerint be kell valljam, hogy a fényképeimet viszont nem tárolom felhőben, sok ismerősömmel ellentétben. A cégek körében nem tudok hivatalos trendet, azonban beszédes lehet, hogy az eddigi négy munkahelyem közül egyik sem a felhőben tárolta az adatokat. Leszámítva természetesen a szabadság-nyilvántartó táblázatot és ehhez hasonló dokumentumokat, esetleg néhány specifikációt. Véleményem szerint a cégek nagy része még vonakodik ettől, talán nem bíznak meg eléggé a felhők által nyújtott védelemben, biztonságban. Azonban a LinkedIn-t görgetve egyre sűrűbben látom olyan cégek hirdetéseit, akik pontosan arra orientálódnak, hogy cégeknek nyújtanak felhő szolgáltatásokat. Szerintem elkerülhetetlen, hogy a jövőben nagymértékben változni fog a cégek hozzáállása a felhőhöz, eljön majd a pillanat, amikor már „fizikailag” nem tudnak, vagy inkább nem lesz értelme megbirkózni a hatalmas adatmennyiséggel.

K. S.: Egyszer nagyon elámultam, amikor zongorázni láttalak. Ugye nem hagytad abba?

T. R.: Ó igen, emlékszem. Akkoriban volt otthon egy szintetizátorom, amin tudtam gyakorolni. Sajnos már jó néhány éve, hogy nem tudok gyakorolni, viszont sokat repülök mostanában, és sok reptéren van publikus zongora. Minden alkalommal megállok és eljátszom a szokásos dalomat. Terveim között szerepel viszont, hogy a közeljövőben elkezdek rendes zongora órákat venni, egy nagy álmom, hogy egyszer megtanuljak jól játszani.

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

T. R.: Van egy oldal, amely GIF-ekkel mutatja be a fejlesztők, informatikusok életét. Nagyon találónak tartom az összeset, talán ez a kedvencem, mindig jót nevetek rajta: https://dzone.com/articles/reality-developers-life-gifs. Kedvenc idézetet nehezen tudnék megnevezni, de a „Megpróbálta-e már újraindítani a számítógépet?” mindenképpen nagyon elől van.


Blog bejegyzéseink IT karrier témakörben

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
/

Céline Dion – Courage World Tour

Céline Dion Courage World Tour

Céline Dion Courage World TourA Céline Dion – Courage World Tour esettanulmányunkban a turné első részének koncerthelyszíneit jelenítjük meg Google Charts segítségével. Ebben a blog bejegyzésben a tervezés, megvalósítás lépéseit tekintjük át és megmutatjuk az eredményeket. A Java és JavaScript forráskódokat most nem részletezzük.

Háromféle grafikont használunk

  • idővonal (Timeline) időpontok és helyszínek Gantt diagram-szerűen,
  • térkép (Geo Chart) városok megjelölésével és időpontok jelmagyarázatban,
  • tematikus térkép az USA államaival (szintén Geo Chart), az állam területén adott koncertek száma alapján és db jelmagyarázatban.

A tervezés és megvalósítás lépései

  1. Adatokat kell szerezni egy weboldal (https://www.celinedion.com/in-concert) feldolgozásával ( saveHTML()). Ehhez a művelet a GET. Figyelni kell a megfelelő User-Agent paraméterezésére és a karakterkódolásra ( ISO-8859-1). A kapott bemeneti folyam feldolgozását pufferelt módon érdemes elvégezni. Célszerű az adatforgalom minimalizásása érdekében a weboldal tartalmát helyi fájlba menteni ( tour.html). Ügyelni kell a kötelező és az ajánlott kivételkezelésre.
  2. Értelmezni kell a tour.html fájlt. A HTML tartalom végén JSON formátumban beágyazva elérhetők a koncert turné állomásainak adatai: nekünk kell a város ( city), helyszín ( venue), dátum/idő ( startDate). Érdemes külön fájlba menteni a tour.html-ből a JSON tartalmat ( tour.json), mert abból egyszerűen betölthető ( saveJSON()).
  3. Tanulmányozni kell a Google Charts diagramok közül azt a kettőt, amiket testre kell szabni: Timeline és Geo Chart. Tudni kell: mi a diagramot tartalmazó weboldal állandónak tekinthető eleje és vége (ezeket hasznos külön interfészben konstansként tárolni: HTMLFileContent), valamint mi az adatoktól függő része (közepe). Ismerni kell a szükséges metaadatok és adatok formátumát. Érdemes átnézni a különböző testre szabási és formázási lehetőségeket a fenti diagramtípusoknál (esetleg a többi típusból is meríthetünk ötleteket).
  4. A koncert turné állomásainak összetartozó 3 adatát le kell képezni POJO-vá ( Event). Ezt érdemes privát változókkal ( city, venue, startDate) és factory metódussal megvalósítani. Célszerű, ha az adatok visszakérésére alkalmas getter metódusok is készülnek ( getTimelineChartDataTableRow(), getGeoChartDataTableRow()), amelyek kiszolgálják a megfelelő diagramtípus igényeit.
  5. A tour.json fájl feldolgozásával (parszolásával) Event típusú generikus listába vagy JSON tömbbe könnyen leképezhetők az adatok.
  6. Hasznos egy vezérlőosztály létrehozása, amely a 3 diagramtípust előállító (HTML fájlt generáló) metódust ( createTimelineChart(), createGeoChartCity(), createGeoChartCountry()) valamint a belépési pontot ( main()) tartalmazza.
  7. Generálható az idővonalat tartalmazó timelineChart.html fájl a createTimelineChart()metódussal. Ehhez 5 oszlop megadása szükséges (ebben a sorrendben): label, city, tooltip, start, end. Az első 3 adat string, az utolsó 2 adat date típusú. Egy példa Event: ['2019.09.18.', 'Québec, QC', 'Videotron Centre', new Date(2019, 09, 18, 19, 0, 0), new Date(2019, 09, 18, 21, 0, 0)].
  8. Regisztrálni kell egy Google Cloud Platform felhasználói fiókot és tanulmányozni kell a geokódolás folyamatát és lehetőségeit, hiszen a városok nevéből (formátum pl.: 'Minneapolis, MN') szükség lesz azok térképi koordinátáira. Aktiválni kell a szolgáltatás használatához szükséges mapsApiKey-t.
  9. Generálható a városokat tartalmazó geoChartCity.html fájl a createGeoChartCity() metódussal. Ehhez 3 oszlop megadása szükséges (ebben a sorrendben): city, dateCity, no . Egy példa Event: ['Minneapolis, MN', '2019.11.01. Minneapolis, MN', 1].
  10. Generálható a régiókat/államokat tartalmazó geoChartCountry.html fájl a createGeoChartCountry() metódussal. Ez egy tematikus térkép: a különböző színek jelölik az egy régió/állam városaiban tartott koncertek számát. Ehhez az adatok megfelelő rendezését követően végrehajtott csoportváltás algoritmus szükséges. 2 oszlop megadása szükséges: country, concertNo. Egy példa adatsor: ['US-TX', 3].

Az eredmények

TimelineChart grafikon:

GeoChartCity grafikon:

GeoChartCountry grafikon:

Érdemes megismerni további – térképekhez kapcsolódó – grafikontípusokat is: Geomap, Intensity Map.

A bejegyzéshez tartozó teljes forráskódot ILIAS e-learning tananyagban tesszük elérhetővé tanfolyamaink résztvevői számára.

A példák a Java SE szoftverfejlesztő tanfolyam 37-44. óra: Fájlkezelés és a Java EE szoftverfejlesztő tanfolyam 1-4. óra: Elosztott alkalmazások, webszolgáltatások és 13-16. óra: JSON feldolgozás alkalmaihoz kötődnek.