Trust me, I am an engineer

A hatékony fejlesztő 7 szokása

2016. július 22. - Annamária Árvai

learningtoprogram.jpg

Jó kódot írni kevesebb időbe telik, mint gondolnád, most kiderül, hogyan csinálják a profik.
(Egy tipp: kezdetnek jó, ha lusta vagy.)

Larry Wall, a Perl programozási nyelv megalkotója egyszer azt mondta: "A jó programozónak három erénye van: lustaság, türelmetlenség és önhittség."

A lustaság, jól megírt és dokumentált programok írására, a türelmetlenség olyan programok megalkotására, melyek előre érzik a felhasználó igényeit, az önhittség pedig olyan kód létrehozására ösztönöz, melyet mások nem fognak kritizálni.

Ám nem a legjobb programozók a legproduktívabbak. Sokkal hatékonyabb az a fejlesztő, aki képes a mindennapi feladatokat jól megoldani, mint aki csupán időnként képes kiemelkedőt alkotni. A munkáltatóknak leginkább a görbe alatti terület számít és nem a legmagasabb pontja. Nem kell kiváló fejlesztőnek lenned ahhoz, hogy alkalmazzanak, effektívnek viszont mindenképp.
Az alábbi 7 szokással hatékonyabb fejlesztővé válhatsz.

1. Minden nap programozz legalább 4 órát

Ez a tipp nem tűnhet túl ambiciózusnak, hiszen a legtöbb programozó legalább 8 órát ül gép előtt, sokan pedig 10-nél is többet, de Peter Nixey, a Copyin nevű startup alapítója és vezérigazgatója szerint ebből kevés időt töltenek tényleges fejlesztéssel.

"Dolgoztam projekteken, ahol a fejlesztők idejük nagy részét meetingekre, pingpongozásra, ebédre vesztegették el, tehát 4 óra komoly munka - amit nem szakítunk meg teaszünetekkel -, már meglepően ritka egy zavaró tényezőkkel teli irodai környezetben."

Ehhez a 4 órához viszont el kell kerülnünk a megszakításokat. Ha már egyszer 'flow'-ban vagy, és az agyad változókkal játszik, akár egyetlen megszakítás után is egy órába telhet, amíg újra fel tudod venni a fonalat.

2. Illeszkedj be a csapatba

Ha hatékony fejlesztők akarunk lenni, fontos, hogy csapatjátékosok legyünk, és jól kijöjjünk munkatársainkkal. Damien Filiatrault, a Scalable Path fejlesztői hálózat vezérigazgatója szerint ez a kódolási képességeinknél vagy a többéves tapasztalatnál is fontosabb. Kellemetlen olyasvalakivel dolgozni, aki azt hiszi, hogy mindenkinél okosabb. Mindegy milyen tehetséges valaki, a fő kérdés, hogy jó-e vele dolgozni. Ha nem, akkor az az egész csapat morálját lehúzhatja.

Nem csak a nagyképű emberek személyisége okozhat problémákat. Gond lehet abból is, ha egy fejlesztő túl kedves, vagy valamiért kellemetlenül érzi magát a csapatban. Például zavaró az is, amikor a világ bizonyos területeiről származó emberek konfliktuskerülők, vagy nem hajlandóak beismerni, ha valamit nem tudnak megcsinálni.

3. Programozz a szabadidődben

Nehéz lehet új dolgokat megtanulni, új területeken tapasztalatot szerezni, ha csak a munkahelyeden foglalkozol fejlesztéssel. Dave Child, az Added Bytes webfejlesztő cég alapítója szerint fontos szórakozásból is programozni.

"A legjobb fejlesztők, akiket ismerek, mind dolgoznak valamiféle saját projekten, melyekhez egyikük sem használja a munkahelyen szükséges képességeit. Ehelyett ezen munkáikkal kibővítik ismereteiket, és lépést tartanak az új technológiákkal azokon a területeken, amelyek érdeklik őket.

4. Tanulj meg gyengébb kódot írni

Nagyon kevés projekthez kellenek briliáns fejlesztők átlagon felüli programok megalkotásához. Általában elég egy funkciókkal bővíthető általános platform. Nixey szerint ennek eléréséhez a legjobb módszer, ha gyorsan írunk valamit, ami működik, és abból dolgozunk tovább.

"Nem számít, ha csúnya a kód, repetitív, vagy rosszak az elnevezések. Ha a kód már megoldás a problémára, onnantól már refaktorálhatod, és javíthatod. Ha elsőre akarsz tökéleteset alkotni, lehet, végül nagyon keveset érsz el."

5. Ne dolgozz egy helyen túl sokáig

Child szerint a képességeid elvesztésének legbiztosabb módja, ha beleragadsz a rutinba. Ha elsajátítottad az elvárt munka minden csínját-bínját, olyan zsákutcába érsz, ahonnan már nem fejlesztheted tovább képességeidet.

"Mindig újabb kihívások elé kell állítanod magad. Ha már néhány évet dolgoztál egy helyen, valószínűleg megtanultál mindent, amit ott valaha fogsz, tehát ne maradj ott - menj tovább és keress egy új kihívást.”

6. Mindig tanulj valami újat

A szoftvertechnológiák állandóan és gyorsan változnak, tehát ami ma még szükséges, holnap már elavult lehet. Ha hosszútávú karriert tervezel a szoftverfejlesztés területén, fontos, hogy lépést tarts az új trendekkel és a nyelvekkel.

"Az az igazság, hogy nem dolgozhatsz a karriered végéig a jelenlegi tudásoddal. Késznek kell lenned a folyamatos tanulásra, mert amit ma tudsz, az nem lesz elég."-mondja Todd Anglin, a Progress Software fejlesztőcég vezető marketingese. Fontos, hogy arra koncentrálj ami érdekel, ne próbálj meg mindenben jónak lenni. "Kell hogy legyen benned szenvedély és vágy, hogy folytatni tudd - de keresd meg azt, amiben el akarsz elmerülni. Ne próbálj meg mindent megtanulni, mert az lehetetlen."

Filiatrault is egyetért: "Nagyjából az összes fejlesztői munkád felében fogsz olyan dolgokat csinálni, melyeket előtte még soha. Tehát a legfontosabb, hogy képes legyél tanulni és új információk után járni. Ha ez megvan, bármit meg tudsz tanulni, amire szükséged lehet."

7. Fejlessz olyat, ami érdekel

Gregor Riegler, a Be a Better Developer című blog szerzője szerint, fontos olyan projektekben részt vennünk, amelyek érdekelnek, így biztos mindent bele fogunk adni a munkába.

"Fontos, hogy érdekeljen, mit csinál a kód. Lehet, hogy egy appot fog működtetni, vagy egy gép fog úgy működni, ahogy te akarod. Ha örömet tudsz lelni a munkádban és minden tőled telhetőt megteszel, akkor igazán remek kódot fejleszthetsz."

(Forrás)

***
Ha Te is kreatív, kihívásokkal teli mérnök állást keresel minőségi munkáltatónál, jó helyen jársz, mert a Schönherz Bázis épp azért jött létre, hogy Neked segítsen.

Gyere, nézz szét aktuális állásaink között!

A bejegyzés trackback címe:

https://bazis.blog.hu/api/trackback/id/tr508906498

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

onlajnok · http://www.onlajnok.com 2016.07.22. 10:24:43

"Ehhez a 4 órához viszont el kell kerülnünk a megszakításokat. Ha már egyszer 'flow'-ban vagy, és az agyad változókkal játszik, akár egyetlen megszakítás után is egy órába telhet, amíg újra fel tudod venni a fonalat."

Ja csak egy-egy ilyen session után a szemed nem tudod kinyitni és ha még nem vagy szemüveges, így gyorsan garantáltan az leszel.

SaGa 2016.07.22. 10:41:28

" Ha a kód már megoldás a problémára, onnantól már refaktorálhatod, és javíthatod."
Ennek eredménye lesz egy áttekinthetetlen, javíthatatlan valami, amit a legtöbbször hatékonyab eldobni és írni helyette egy másikat, mint megtalálni benne, hogy a sokadik bővítés után miért omliok össze bizonyos feltételek bekövetkeztekor.

elemes 2016.07.22. 11:26:02

@SaGa:

Szerintem ez ugyanaz, mint az a szofferes mondás, hogy működő kódot optmalizálni mindig egyszerűbb, mint optimális kódot működővé varázsolni.

nem várt fordulat 2016.07.22. 13:57:18

@SaGa: szerintem itt nem egy egész appra kell gondolni, hanem kód részletekre, mondjuk egy metódusra, vagy függvényre.

AdamTheTux 2016.07.22. 15:12:26

@SaGa: Nyilván nem gányolásra gondolt a szerző, hanem arra, hogy ha valamit megoldhatsz egyszerűen, akkor csak azért ne kezdd el beleerőltetni a pattern-eket a kódba, hogy mindenáron megfelelj ennek vagy annak az elvnek - ráérsz akkor refaktorálni és implementálni a pattern-t, amikor tényleg szüskég van rá.

úgyiselfelejtem 2016.07.22. 18:14:56

@onlajnok: hát nem tudom, amíg fejlesztőként dolgoztam, sokszor volt többórás "flow"-ban még enni sem jutott eszembe, pedig jól táplált vagyok :). Szemüveg pedig 40 felett sem kell.

@SaGa: a (kis) feladat megoldásához legtöbbször nem kell tökéletes kód, inkább gyorsan legyen meg. Ha működik, és többször is kell használni, akkor lehet csiszolgatni. Mondjuk 1000 kép (egyszeri) átméretezésére, vízjelezésére felesleges gui-t írni, beállításokkal, userkezeléssel, update kezeléssel, designnal együtt.

úgyiselfelejtem 2016.07.22. 18:18:10

A volt főnököm rengetegszer kiszakított minket a ritmusból, apró-cseprő dolgokkal. Amikor meg lassan ment a munka, elmondtuk, hogy ezért. Erre ő: "Mondjatok nemet, meg fogom érteni."
Mi nemet mondtunk, de mivel ő (volt) a főnök, akkor is meg kellett csinálni. Jobban szerettem éjjel dolgozni, amíg lehetett...

onlajnok · http://www.onlajnok.com 2016.07.22. 18:23:55

@úgyiselfelejtem: mikor elkezdtem dolgozni, én is voltam így. Az is igaz, hogy már akkor is szemüveges voltam, most is hordok szemüveget lencsét, de már tudatosan figyelnem kell, hogy néha kimenjek kicsit pihenni, mert különben használhatatlanok a szemeim este, szúr, vörös. Romlani szerencsére nem romlik, de szerintem ez köszönhető a pihenésnek is. Én is szeretem, ha elkap a hév, mert akkor az azt is jelenti, hogy szeretem azt, amit éppen fejlesztek :D, de vannak határok.
süti beállítások módosítása