Aki jobhopper IT-n belül, annak nincsenek ilyen gondjai?
Ötödik éve vagyok egy cégnél programozóként. Nem projectcég vagyunk, egy nagy multinál dolgozom, ahol az egész cégnek 1-2 szoftverterméke van. Tehát hatalmas a kódbázis. Nagyjából tavaly sikerült eljutnom oda, hogy nagyobb (fél év kb 5-6 embernek) projectek tervezését, felügyelését és vezetését elvállalhassam. És ez így is kiemelkedő, hogy ennyire kevés tapasztalattal ilyen nagy felelősséget kaptam, mert annyira komplex a rendszerünk, hogy évek kellenek ahhoz, hogy nagyjából átlásd. Az emberek 90%-a úgy dolgozik itt, hogy a csapatban van egy guru, és az leosztja a kis feladatokat.
Számomra mindig is egyértelmű volt, hogy én egy ilyen "guru" szeretnék lenni, egy vezető, aki fontos szakmai döntéseket hoz.
És itt jön a képbe a gyakori munkahelyváltás. Gondolom nem mondok senkinek újat azzal, hogy aki évente vált munkahelyet, az már egészen kevés tapasztalattal kimagasló fizetést tud elérni. Viszont az ilyen emberek akkor lehúznak éveket úgy, hogy minden cégnél csak kezdők? Nem frusztráló ez?
Azért kérdezem, mert engem is csábít egy jobb ajánlat. Viszont így is nagyon jól élek, és engem az motivál, hogy nagy a felelősségem, munkát delegálhatok, mentorálhatok, adnak a szavamra, és sok területen megkerülhetetlen tudásom van már cégen belül. Ezeket nem akarom eldobni és újrakezdeni máshol. Aki gyakran vált az hogy van ezzel? Vagy soha nem tapasztal meg ilyen mértékű felelősséget, mindig csak a lepattanó feladatokat megcsinálgatja?
Én 2 projekten dolgozom az egyik egy framework a másik pedig egy erre épülő projekt. Kb 2 éve vagyok itt és simán átlátom a frameworkünk kódját ami kb 30 ezer sor kódból áll. A kód megismerése során nagyon sokat tanultam, illetve kb az 1. év után egy viszonylag nagy modult adtam hozzá a kódhoz ami megint csak nagyon jó volt tanulás szempontjából (és persze azóta is írok új részeket/refaktorálok).
Viszont ma már a tanulási mérték lassabb mivel kevesebb újdonságnak vagyok kitéve és valószínűleg ha váltanék akkor megint egy csomó új dologgal találkoznék ami növelné a tapasztalatomat. Szóval egy váltás akár most akár kb 1.5 év után már egyáltalán nem lett volna tapasztalat szempontjából hátrányos
A másik pedig hogy sok cégnél nincs ilyen konstans projekt mint ahhol jelenleg dolgozok és ha váltasz projektet az majdnem olyan mint egy munkahely váltás, szval az hogy váltasz konkrétan céget nem fog semmiben hátráltatni.
Azt gondolom hogy 1 év alatti váltásoknál lehet a tapasztalatfejlődés gond és a legtöbb esetben pénz és tapasztalat szempontjából a legjobb ha 2-3 évente vált helyet az ember.
Ha nem haragszol meg, cégnevet nem mondanék. Scrumban és kanban csapatok vannak nálunk. Nem tudom mit értesz hulladék dinoszaurusz cég alatt, de - csak hogy néhányat említsek - morgan stanley, lufthansa systems és hasonló cégek között megy a kollégák ide-oda járkálgatása. Szerintem a fizetés is versenyképes nálunk, mert 5 év tapasztalattal a nettó 1.1xx.000 + béren kívüli juttatások szerintem nem szar. Ez alapján valamennyire el lehet helyezni a céget a térképen.
"a cégnél nem ismert a microservice architektúra"
Ismert, viszont ez nem egy joker kártya. Bizonyos célszerverek vagy desktop/mobil alkalmazások esetén nem jobb választás.
Nem magamból indulok ki, hanem a cégből. Másból nyilván nem tudok. De te meg egy ideális világból indulsz ki, ahol egy principalnak az a feladata, hogy megírjon egy microservicet.
Kérdező! Ismét ... mi számít neked nagy dolognak egy projecten?
Tehát mi az amit nem lehet egy 6 hónapos idő után megcsinálni?
Nagy projecteken mindegy mennyi dologzol, soha sem fogod látni a teljes képet, attól még tudsz rendszer szintű refaktorokat csinálni.
"Nem magamból indulok ki, hanem a cégből. Másból nyilván nem tudok."
Akkor úgy tűnik ez a probléma, érdemes lehet komolyabb cégeknél is tapasztalatot szerezned, ahol jól működnek a fejlesztési folyamatok. Már eleve az gyanús volt, hogy nálatok egy vezető fejlesztőnek kód szinten kell ismernie több csapat munkáját, holott pont az az autonóm service-ek lényege (többek között), hogy adnak egy jól definiált API-t, az alatta lévő implementáció pedig a service-ért felelős csapat magánügye, mindenki másnak elég az API-t ismernie.
Most nem tudom eldönteni, hogy én élek ekkora buborékban, vagy ti/te. Valószínűleg mindketten.
Mi ez a microservice és api mantrázás? Láttatok már unreal enginehez hasonló szoftver kódját? Nem csak a webes világ létezik.
És igen, kva jól hangzik, hogy egy autonóm csapat vagyok, és leszarok minden mást, csak a valóság nem ilyen. Mert ha nem ismered a saját modulod tipikus felhasználását cégen belül, akkor felfoghatatlan károkat tudsz okozni.
Van egy pár millió soros kódbázisod, és egy olyan modult kell kidobni és a helyére egy másikat írni, ami a teljes kódbázisban bárhol fel lehet használva. A feladatod az, hogy úgy cseréld ki a modult, hogy megkapd az új modul előnyeit, miközben megőrzöd az interface-t annak ellenére, hogy a régi interfacen lévő fogalmak nem minden esetben megfeleltethetőek az új rendszerrel. Vegyél fel róla 1-2 nap alatt elvégezhető, önállóan értéket szállító, tesztelhető és működőképes feladatokat, és dolgozd ki annyira, hogy egy junior is meg tudja csinálni. Írd meg az összes ilyet, és tervezd meg a csapatod negyedéves munkáját tűpontosan. Ez a feladat. Komolyan azt mondod, hogy ezt megcsinálja valaki, aki 6 hónapja van ott?
Csak hogy tisztázzuk. Én nem azt vonom kétségbe, hogy valaki nem fejlődik, ha munkahelyet vált gyakran. Nyilván sokkal több mindent lát, ezért több mindenhez is fog érteni.
Azt vonom kétségbe, hogy ki tud-e alakulni gyakori munkahelyváltással egy vezetői/tech lead/architect készség? És megfelelő pályamodell-e, ha valaki vezetőként látja magát a jövőben?
15# Amúgy simán.
Nyílván egy nagy projecten nem azt szokták mondani, hogy "A dokumentáció a képzeletünkben létezik" és hogy "Nézd esetleg az adatbázist, hogy jobb képet kapj a projectről", meg a kedvencem, hogy "Nem tudjunk milyen input jön. Párszor hívd meg az apit (modulet vagy akármit) és nézd meg".
Azért itt leszokott dokumentálva lenni, hogy mi is az elvárás és eddigi működés.
Ezek alapján akár egy amszterdami bordélyház adminisztratív platformját és egy gyógyszergyár vezérlő szoftverét is magad elé veheted. Teljesen mindegy lesz. A kódot látod. Minden más csak körítés.
"Komolyan azt mondod, hogy ezt megcsinálja valaki, aki 6 hónapja van ott?"
Igen, ez a modularizáció lényege. Ha ez nem lehetséges nálatok, akkor az egyszerűen fundamentális architekturális problémákra utal.
Ezért mondom, hogy érdemes lehet komolyabb cégeknél tapasztalatot szerezned, sokan keresnek vezető fejlesztőt. Unreal Engine-t említetted, Epic Games-nél pl. most is van nyitott Principal Engineer pozíció, interjúzz egyet velük és a interjúztatóidtól megkérdezheted, hogy is működik ez náluk. De az is elég lehet, ha udvariasan ráírsz egy vezető fejlesztőjükre LinkedIn-en, elég jó fejek (legalábbis akikkel én beszéltem anno).
(a microservice/API helyett valóban használhattam volna absztraktabb kifejezéseket, úgy látom nagyon zavarnak, nyugodtan helyettesítheted őket számodra tetszőkkel, modul, komponens, interfész, contract stb.)
Ja, tényleg azt kifelejtettem én is, amikor én céget váltottam, mindig találkoztam új dolgokkal.
Hiába mennek ki/be az emberek. A cégek valahogy jól megőrizni és tartanak tudásokat. Hiszen ha jön egy új ember, akkor alkalmazkodik a légkörköz és nem feltétlenül újít.
Szóval azzal, hogy nem váltottál gyakra, lemaradhattál 1-2 dologról.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!