Szállítsuk a megfelelő szoftvert, gyakran, jó minőségben. Válassz kettőt hármat

A Pragmatikus Programozó

A Pragmatikus Programozó

Szofverfejlesztőtől a Szoftvermérnökig

2015. november 08. - GergelyOrosz

A programozók leggyakoribb hivatalos titulusa a szoftverfejlesztő vagy szoftvermérnök. De mi valójában a kettő között a különbség? Ian Brayshaw, brit szoftver architect szerint a kettőt nem lenne szabad szinoímaként használni:


A mérnökök átlátják az összképet. Felismerik, hogy mennyire értékes átlátni, hogy hogyan működik az üzleti folyamat, illetve tudni, hogy miért is építik az adott dolgot. Ragaszkodnak elsőnek a szoftvert megtervezéséhez, hogy biztosan tudják, mi lesz a folyamat várt végkimenetele.

Egy mérnök nem feltétlenül jobb kódoló egy fejlesztőnél. Ugyanakkor a mérnökök biztosítják, hogy részt vegyenek a folyamat minden lépésében - és minden dolgot megkérdőjeleznek, mielőtt végrehajtanák.

Egyet értek Iannel abban, hogy egy mérnök több felelősséget vállal, mint egy fejlesztő. Ugyanakkor ez szerintem sokkal inkább a nagyobb tapasztalatuk és egyfajta kíváncsiság ösztönük miatt van. Azok a kíváncsi emberek, akik szoftver fejlesztés közben folyamatosan felteszik - és megválaszolják - a "miért" kérdését, idővel óhatatlanul szoftvermérnökökké válnak.

Harley Brody, bostoni vezető fejlesztő hasonlóan gondolkodik erről. Szerinte a hacker, fejesztő és mérnök csak különböző kifejezések a szoftvert kódoló emberek szenioritására:

Egy hacker ugyan össze tud rakni megoldásokat, de gyakran visszatekintve nem tudják megmagyarázni, hogy hogyan is jutottak el oda. (...)

Egy pont után szintet lépsz és fejleszővé válsz, egy fejesztő pedig megérti a mintapéldákat (best pracice-eket). Már hallottak más fejlesztőktől olyanokat, hogy "a szkriptjeidet a weboldalak aljára tedd"... és használják ezeket a mintapéldákat megoldások építésére, de mlg nem feltétlen értik a mintapéldák mögött húzódó igazi okokat. (...)

Egy mérnök olyan ember, aki végigviszi a dolgokat és szép megoldásokat készít - nemcsak értik a mintapéldákat, de azt is tudják, pontosan miért is alkalmazzák az adott megoldást. Egy szinttel mélyebben az egész platformot átlátják és megértik.

Végigvinni dolgokat és szép megoldásokat alkalmazni két olyan dolog, amit mérnökök napi szinten gyakorolnak. Végy egy problémát, kódolj egy megoldást, értsd meg és tanulj belőle - majd ismételd meg egy következő, nehezebb feladattal.

Ha ezt a hozzáálást követed, sok-sok ismétlés után egyszer csak azt veszed észre, hogy magabiztosan tudsz sokféle, bonyolult problémát megoldani. Ha eljutottál ide, akkor gratulálok - a fejlesztőiről eljutottál a mérnöki szintre.

(A cikket a From Software Developer to Software Engineer bejegyzésemből fordítottam)

süti beállítások módosítása