Az 1993-ban alapított USA központú EPAM Systems, Inc. nemzetközi ügyfelei digitális transzformációját segítő, platformfejlesztéssel és tanácsadással foglalkozó cég. Több, mint 41 150 szoftvermérnökkel dolgozik a világ több, mint 35 országában. Magyarországon több mint 1700 főt alkalmaz Budapesten, Debrecenben és Szegeden működő irodáiban. A New York-i tőzsdén jegyzett EPAM számos elismeréssel rendelkező dinamikusan fejlődő cég, amelynek ügyfelei között több Fortune 500 vállalat is megtalálható. Az EPAM irodái jó hangulatú digitális laboratóriumok, ahol munkatársaink nemzetközi projekteken dolgoznak a legkorszerűbb technológiákat alkalmazva.
ITmap: Milyen tanulmányokat folytattál, és azok hogyan kapcsolódnak a frontend fejlesztő munkakörhöz?
Szatmári Zsófia: Nagyváradon születtem, az ottani középiskola matematika – informatika – angol szakára jártam, ahol megismerkedtem a programozás alapjaival. Végzősként egy gyakorlati projektfeladatot is kaptunk, és amikor éjszaka is azon kattogott az agyam, hogy hogyan lehetne legjobban megoldani az adott problémát, egyértelművé vált: a fejlesztés lesz az én utam! Így ezt követően a Szegedi Tudományegyetem programtervező informatikus alapszakát végeztem el, amit mesterképzéssel is kiegészítettem, mivel nagy volt bennem a tudásszomj. Az akkori képzési rendszerben a backend technológiák voltak középpontban, a frontend oldali programnyelvekről opcionális tantárgyak keretében tanulhattam volna, azonban ekkor még nem tudtam, hogy végül ez lesz az a terület, ami igazán közel áll majd a szívemhez. J Nagyon örülök viszont annak, hogy ma már ez az irányvonal erőteljesebben jelen van a felsőoktatásban: öcsém szintén az SZTE fenti szakára jár, és náluk a kötelező tantárgyak között már szerepel egy-két frontend technológia.ITmap: Milyen karrierutat jártál be addig, ameddig végül eljutottál ebbe a pozícióba?
Szatmári Zsófia: Az egyetem alapszakán kötelező volt szakmai gyakorlatot végeznünk, ennek keretében backend fejlesztőként dolgoztam. A mesterképzés alatt hasonló szerepkörben egy másik vállalatnál is tapasztalatot szereztem, ahol egyre gyakrabban kerültek elő frontend oldali feladatok is. Ezek nagyon megtetszettek, és egyre inkább világossá vált számomra, hogy ebbe az irányba szeretnék továbbmenni. 2016-ban immáron frontend fejlesztőként csatlakoztam az EPAM-hoz.ITmap: Miért a frontend irányt választottad, mi az, ami különösen megtetszett ezekben a feladatokban, illetve mit jelent egyáltalán, ha valaki frontend fejlesztőként dolgozik?
Szatmári Zsófia: A frontenden végzett munka véleményem szerint látványosabb, kézzelfoghatóbb, mint a backend fejlesztés, egyúttal rögtön visszacsatolást kapunk arról, hogy hogyan jelenik meg, amit fejlesztettünk. A frontend fejlesztő a backend fejlesztőktől kapott adatokat jeleníti meg olyan formában, ahogy azt előzőleg a designerek megtervezték. Hadd mondjak egy példát: vegyünk egy szállásfoglaló weboldalt, ahol a háttérben megvannak azok az információk, hogy milyen szállások érhetők el az oldalon, azonban ezeket a felhasználó nyilvánvalóan nem látja. A mi feladatunk az, hogy ezek az adatok a felhasználó számára megjelenjenek a képernyőn, ráadásul kényelmes, jól használható oldalt is kapjanak. Általánosabban megfogalmazva, frontend fejlesztőként az a célunk, hogy ne csak működjön egy adott weboldal, hanem jól is nézzen ki. Számomra nagyon élvezetes, amikor a színekkel játszunk, egy-egy árnyalat is nagyon sokat tud dobni vagy épp rontani az összképen, de ugyanilyen izgalmas az is, amikor a legjobb felbontást kell megtalálni egy adott felülethez. Eddig mindig olyan projekteken dolgoztam, amikor a UX designertől (ő az, ki a vizuális megjelenést megtervezi, ide tartozik például a képernyő felépítése, méretek, betűtípusok, helyközök, margók meghatározása) megkaptam a terveket, amelyeket meg kellett valósítanom, de kisebb projektek esetében azt is el tudom képzelni, hogy frontend fejlesztőként ilyen jellegű feladatokkal is foglalkozni kell. Fontos kiemelni, hogy a mobilappok fejlesztésével nem a frontend fejlesztők foglalkoznak, de, ha mobilon, kis képernyőn hatékonyan kell megjeleníteni valamit, az már a mi feladatunk.ITmap: Mik a frontend fejlesztés legfontosabb sajátosságai?
Szatmári Zsófia: A frontendre különösen jellemző, hogy gyorsan változnak a technológiák, folyamatosan jelennek meg az újdonságok, akár pár év alatt feledésbe merülhetnek programnyelvek, és újak törnek a felszínre. A frontend terület nem mindig volt ennyire középpontban, korábban a böngészők nagyon különbözőek voltak, nem volt megvalósítható a hasonló megjelenítés. Mára azonban egyre inkább kezdenek egységessé válni, ami számomra is egy plusz pont volt frontend fejlesztés mellett. Az, hogy minden platformon, minden böngészőben és méretben megfelelően jelenjen meg a tartalom, munkánk központi kérdése, bár itt is jelentős eltérések lehetnek az ügyfelek igényeinek megfelelően: előző projektemen, a már említett szállásfoglaló weboldallal kapcsolatosan külön követelmény volt, hogy Internet Explorer 6-tal is lehessen használni, ami egy 2001-ben piacra dobott böngésző. Nem kis kihívás volt egy régi technológiára épülő rendszerrel kompatibilissé tenni a mai megoldásokkal készített felületet. Ezzel szemben jelenlegi projektem különlegessége, hogy a banki szektor számára fejlesztett oldalt csak desktopra (asztali gépre) és csak Chrome böngészőre kell elkészítenünk. Ha több platformon kell futnia egy oldalnak, egyre inkább az az elterjedt, hogy mobiltelefonos böngészőre optimalizáljuk azt (mobile first elv), és aztán desktopon, nagyobb képernyőn további extrákkal bővítjük a megjelenést.ITmap: Hogyan telik egy tipikus munkanapod?
Szatmári Zsófia: Általában egy nagy csapatot képezünk a backend fejlesztőkkel, manuális tesztelőkkel, tesztautomatizálási mérnökökkel, üzleti elemzőkkel, akik mind az adott terméken dolgoznak – más-más szemszögből. A backend fejlesztőkkel a projektek elején általában egy ún. contractot (szerződést) kötünk arra vonatkozóan, hogy kitől milyen formában fognak érkezni az adatok, amelyekkel egyik, illetve másik fél dolgozik majd, ehhez a megállapodáshoz tartjuk magunkat az egyébként nagyon szoros együttműködést igénylő teljes folyamatban. Jelenlegi projektemen azonban például szeparáltabban működnek a backend és a frontend csapatok, ezekben az esetekben még fontosabb az együttműködési keretek egyértelmű lefektetése. Agilis módszertan szerint dolgozunk, a frontend fejlesztés egyértelműen csapatmunka, véleményem szerint három fő felett már kellenek olyan eszközök, megoldások amelyek segítik a team munkájának szervezését. Minden reggel az ún. daily stand-up-pal indul, amikor összegyűlik a csapat, megbeszéljük, ki mivel foglalkozott előző nap, egyeztetjük, hogy aznap mivel haladunk, illetve azt is megnézzük, hogy felmerült-e bármilyen, a munkát hátráltató tényező. Ezek a rövid státuszmegosztások egyébként nem csak informatikai szektorban lehetnek nagyon hasznosak. Mivel nemzetközi vállalat vagyunk, általában más országok kollégáival is együttműködünk, a mostani projektemnél például az ügyelünk amerikai, de fejlesztők, tesztelők Indiában is dolgoznak a feladatokon. Velük is napi, adott esetben heti gyakoriságú megbeszéléseket szervezünk, amelyek szintén egyfajta keretet adnak a munkavégzésnek. A Jira rendszert használjuk a feladatok követésére, ebben látjuk azt, hogy mely teendők elérhetőek, mi az, amit egy következő lépésben meg kell valósítani. Ezeket a tennivalókat magamhoz rendelem, és elkezdek velük foglalkozni, majd ugyanezen rendszerben jelzem a haladásomat is. A határidők természetesen a mi munkánkat is jelentősen befolyásolják, ha például egy ügyfelünk webshopjában hálaadás napi akció van, akkor értelemszerűen eddig az időpontig minden feladattal el kell készülnünk, és figyelembe kell vennünk más projektek tervezési szakaszában is. Általában kéthetes fejlesztési ciklusokban dolgozunk, minden időszak végén bemutatjuk az ügyfeleknek azt, hogy mivel haladtunk, ők véleményezik az elkészült funkciókat, a visszacsatolások alapján pedig tovább tudjuk folytatni a munkát, ha valamin javítani kell, akkor azon dolgozunk, egyébként pedig a meghatározott további lépéseket követjük.ITmap: Milyen szakmai ismeretekre van szükség ahhoz, hogy valaki sikeres lehessen frontend fejlesztőként, illetve milyen személyiségjegyekkel rendelkező szakember érzi jól magát a munkakörben?
Szatmári Zsófia: A munkakörben a biztos programozói alaptudás elengedhetetlen, ismerni kell a fejlesztési algoritmusokat, illetve természetesen valamelyik kapcsolódó programnyelvet is, az EPAM-nál frontend területen JavaScriptet használunk. A mostanában népszerű frontend fejlesztési keretrendszerek, a React és az Angular közül az egyik működésével mindenképpen tisztában kell lenni. HTML, illetve CSS ismeret nélkül szintén nem lehet boldogulni, ezek felelnek egy oldal felépítéséért, kinézetéért: JavaScript-tel a HTML-ben megírt építőkockákhoz rendelünk funkcionalitást, a CSS-sel pedig ezen építőkockák kinézetét befolyásoljuk. Fontos kiemelni, hogy lehet találkozni külön JavaScript fejlesztő munkakörrel is, ahol a színtiszta programozás kerül előtérbe, míg a frontend fejlesztő pozícióban a fejlesztési feladatok mellett a megjelenítés is hangsúlyos része a munkának, ehhez pedig bizonyos szépérzék is szükséges. Nemzetközi környezetben az angol nyelvtudás meghatározó, illetve a témát érintő online képzések, tananyagok is ezen a nyelven érhetőek el leginkább. A kommunikáció fontosságát vállalati környezetben mindenképpen hangsúlyoznám, hiszen nagyon sokat kell egyeztetni az ügyfelekkel, a backend fejlesztőkkel, a designerekkel. A projektek sikere szempontjából sarkalatos pont, hogy pontosan megértsük az igényeket, elképzeléseket, hiszen csak akkor távozik majd az ügyfél elégedetten, ha azt kapja, amit kért. A csapatmunkát már érintettük, és egy olyan aspektusra is felhívnám a figyelmet, hogy fejlesztőként el kell fogadnunk azt, ha valaki más ötlete közelebb visz a megoldáshoz, rugalmasan kell állnunk a változásokhoz. Ahogy az informatika minden területén, frontend fejlesztésben is elképzelhetetlen az élet folyamatos fejlődés, tanulás nélkül.ITmap: Milyen képzéseken lehet elsajátítani a munkakörhöz szükséges ismereteket?
Szatmári Zsófia: Kollégáim többsége, ha nem is fejezte be felsőfokú tanulmányait, de elkezdte őket, és valameddig eljutott bennük, így a klasszikus programozó alapszakok mindenképpen nagyon jó kiindulási alapot adnak a munkakörhöz. Ma már azonban akár rövidebb idő alatt is szert lehet tenni a szükséges tudásra, kiemelném az EPAM saját programozó képzését, amely során 4-5 hónap alatt megtanítjuk a szükséges ismerteket a résztvevőknek.ITmap: Milyen továbblépési lehetőségek vannak a munkakörből?
Szatmári Zsófia: Elérkeztem arra a szintre, amikor választás előtt állok: maradok a technikai irányvonalon, és még jobban mélyítem, illetve szélesítem szakmai ismereteimet, architektté válva (ő az, aki megtervezi, hogy egy projekten belül hogyan kapcsolódjanak a rendszerek, meghatározza a technikai irányvonalakat) vagy pedig menedzsment, vezetői útra lépve folytatom tovább. Jelenleg technikai vezetői feladatokat látok el, ahol még kevésbé jelenik meg a people management, az emberek vezetése. Ha az azonos szintre való váltást nézzük, többen választják a UX designer munkakört, illetve a másik irányból nézve, sokszor backend fejlesztőkből lesznek frontend fejlesztők (a másik irányú váltásra még nem láttam példát J).ITmap: Miért szeretsz frontend fejlesztőként dolgozni?
Szatmári Zsófia: Nagyon jó érzés, amikor barátokkal vagy családi körben vagyok, és mindenkinek meg tudom mutatni, hogy pontosan mi az, ami a kezem munkája. Ehhez mindössze annyi szükséges, hogy saját mobiljukon valamennyien előkeressék az adott weboldalt. Feladataimnak ez a látható eredménye büszkeséggel tölt el. Személyesen pedig nagyon szeretem az EPAM-os csapatot, fontos számomra, hogy kikkel dolgozom, itt pedig megtaláltam azt a közösséget, ahol nagyon jól érzem magam.Szívesen lennél Zsófi csapatának tagja?