it-swarm-eu.dev

Je 4-5 let „krizí středního věku“ pro programovací kariéru?

Už více než 4 roky programuji C # profesionálně. Za poslední 4 roky jsem pracoval pro několik malých a středních společností, od „webových/reklamních agentur“, malých softwarových obchodů pro konkrétní odvětví až po malé spuštění. Dělal jsem hlavně „obchodní aplikace“, které zahrnují použití programovacích jazyků na vysoké úrovni (shromážděné odpadky) a moje celková zkušenost byla, že všechny práce, které jsem udělal, mohly být profesionálnější. Mnoho věcí bylo provedeno nesprávně (ve spěchu), hlavně kvůli nákladovému faktoru, že lidé vždy chtěli něco „teď“ as nejmenším množstvím peněz, které je možné utratit. Pořád jsem přemýšlel, jestli bych mohl pracovat pro větší společnosti nebo pro společnost, která je pro programátory vhodnější, nebo někde, kde jsou peníze a čas na to, abych opravdu vybudoval něco dlouhodobějšího a udržovatelnějšího, možná jsem si během své kariéry užil víc. Nikdy jsem neměl „mentora“, který mě prováděl během mé čtyřleté kariéry. Jsem docela hodně blog/google/samostatně vyučovaný programátor jiný než můj bakalářský titul IT.

Pozoroval jsem také další problém, že většina takzvaných „vyšších“ programátorů v „mém pracovním prostředí“ ve skutečnosti není takovou dovedností pro seniory. Jsou „starší“ pouze proto, že byli dlouho programátorem, ale kód, který píšou, nebo rozhodnutí, která dělají, jsou naprosto nesmysl! Nechtějí se učit, nechtějí být lepší, prostě chtějí dostat zaplaceno a dělat to, co řekli, aby udělali smysl, a většina z nás je taková. Možná proto jsou teď tam, kde jsou. Ale nechci se stát jako oni, chci být lepší. Dostal jsem se do mentálního stavu, že už nemám v úmyslu být programátorem pro svou budoucí kariéru. Začal jsem myslet, že tam jsou lepší věci, na kterých bych mohl pracovat. Čím více blogů jsem četl, tím více „osvědčených postupů“ jsem vyzkoušel, čím více cítím, že se vzdaluji od „mé reality“. Ale nejsem skvělý programátor, jinak si nemyslím, že jsem tam, kde jsem teď. Myslím, že 4-5 let je fáze, která může být o krok vpřed kariéru moudrou nebo o krok tam, kde jste.

Chtěl jsem jen slyšet, co říkají ostatní o tom, co jsem zmínil výše, a zda jste zažili podobnou situaci v minulé programovací kariéře a jak jste se s ní vypořádali. Dík.

330
Jeff

Otevřete velmi zajímavou otázku. Upřímně s vámi souhlasím. Podobné poznámky jsem udělal.

Už několik let profesionálně programuji a to, co jsem si všiml, je to, že množství dobrých programátorů, skvělých vývojářů, kteří mají rádi svou práci a dokáží to s kvalitou a vášní, je téměř nulové. Pravděpodobně jsem potkal jen jednoho člověka, který mě mohl něco naučit. Většinu toho, co vím, jsem se naučil sám, četl jsem knihy a fóra, ptal jsem se na fórech a googlingem pro myšlenky odhalení.

Po chvíli to moc nelituji.

Možnosti učení se v pracovním prostředí mohou být často omezené. Nezačínáte. Ty je nedokončíš. Nenavrhujete, nezlepšujete se, nemítíte, nemyslíte na architekturu, jen kódujete a hackujete věci dohromady. Takto funguje většina obchodů. Nejen, že se nic nedozvíte, je více pravděpodobné, že se naučíte většinou špatné věci, jak NEVYTVÁŘAT software. Neustále jsem kolem sebe viděl děsivé věci, všechny ty anti-vzory, o kterých jste slyšeli. A co je horší, jsem nucen je udělat sám.

Nevím, jak se to stalo, ale podařilo se mi nějak vybudovat vstupní bariéru. Zůstávám otevřený, poslouchám a pokud vidím nějaký potenciál pro sebezdokonalování, zkoumám a možná přijmu nějakou techniku ​​nebo nápad. Žádná BS však nikdy nemůže projít. Dlouhodobě pracuji na špatně provozovaných projektech, ale žádnou z těchto technik jsem nepřijal pro sebe.

Brzy jsem pochopil, že pokud si přejete spokojenost s programováním, zapomeňte na práci a máte svůj vlastní osobní projekt. Je to místo, kde můžete použít veškerou svou lásku, vášeň a znalosti k tomu, abyste dělali věci správně s vysokou úrovní kvality. Dozvíte se spoustu věcí, nesčetné množství věcí, kterým byste nikdy nebyli vystaveni a nebyli proti nim napadeni při hackování nudných zaměstnanců společnosti. Pracuji jen za výplatu a spokojenost s vlastními osobními projekty.

Jedna věc, kterou opravdu nerozumím, je, jak je dnes tato situace možná. Vývoj softwaru hodně dozrál. Má dobré a špatné zkušenosti. Mnoho úspěšných projektů a spousta neúspěšných projektů. Existují zkušenosti s dlouhodobými projekty a pochopení toho, jaké dlouhodobé účinky jedna nebo druhá organizace přinese projektu. K dispozici je řada studií a jsou psány dobré knihy. „Pragmatický programátor“, „Kód dokončen“, „Mýtický člověk-měsíc“, „Návrh každodenních věcí“ a další. Proč je nikdo jiný než my, programátoři, nikdy nečte? Jak je možné, že ani po 20 letech práce v IT většina vývojářů a manažerů nikdy nenašla čas na přečtení jedné nebo druhé knihy metodik. Jsou psány pro ty, kteří tento lék nejvíce potřebují, ale jen těžko je čtou.

Pokud jde o kariérní perspektivy. Také jsem si obecně všiml na trhu práce pro zaměstnance, je to, že zaměstnavatelé tam stále více ztrácí zájem o kvalitní práci (představte si, že ji měli jednou) stále více nakupují nejlevnější dostupné řemeslo. Je pro vás těžké prodat své znalosti, zkušenosti a porozumění vesmíru komukoli. Není to žádáno. Požaduje se, aby vaše projekty byly zničeny juniory, kteří nemají žádné zkušenosti a touhu dělat profesionální práci. Levní lidé jsou zvyklí a zneužíváni a poté vyhazováni, aby začalo další kolo. Projekty jsou také zadávány externě do místa s nízkými mzdami, kde je provádějí lidé, kteří se očividně začínají učit programování právě s vaším projektem. To je jedna věc, kterou opravdu nerozumím.

Stále více a více bavím myšlenku, že v budoucnu upustím od práce v programování. Velmi rád bych pracoval ve svém vlastním start-upu s vlastním projektem. Pokud tomu tak není, uvažuji o vyzkoušení na volné noze nebo pravděpodobně o změně charakteru placeného zaměstnání. Koneckonců, během pracovní doby se nic nedozvím a vůbec nedostanu žádnou spokojenost. Dokážu dělat cokoli 9-5 a vždy mít spokojenost se svými osobními projekty. Hodně se učím od online komunit. Dostávám zde pozornost, podporu pro mé nápady a příležitostně i uznání, které jsem nikdy nemohl dostat se svou prací a svými kolegy z práce. Uvidím, kde budu v budoucnu.

195
user8685

Byl tam příspěvek Jeffa Atwooda o Coding Horror , který řekl, že to má být zábava. A část popisu práce, že jste vývojář softwaru, se těší vaší práci. Jinak se pro vás stane opravdu nudnou a těžkopádnou profesí.

Skutečnost, že neustále hledáte způsoby, jak zlepšit svou práci a neustále se informujete o nových věcech a osvědčených postupech, ukazuje, že se vám práce líbí v přírodě. Takže mou radou pro vás bude začít hledat nové zaměstnání.

Nemyslím si však, že práce pro velkou společnost nutně zlepší pracovní podmínky. Myslím, že nejlepším prostředím pro vývojáře softwaru jsou malé a střední společnosti, kde se lidem líbí, co dělají. Nejlepší věc, kterou byste měli udělat, by bylo vyhledat a odhlásit všechny společnosti, než se rozhodnete. Zkuste a ujistěte se, že nová společnost stojí za to.

70
Nikos Steiakakis

První věc: velké varování: pokud jste se vyvíjeli 10 let (jako já), není nic jiného, ​​co byste mohli udělat lépe než vývoj. Takže pokud chcete udělat něco jiného, ​​něco nového, udělejte to rychle, jinak to může být příliš pozdě a nebudete dělat nic jiného.

Jen proto, abych se podělil o svůj vlastní názor: Jsem osoba řízená vlastním člověkem, sama učená. Naučil jsem se sám čistě C, C #, vývoj Amiga C, Windows, COM, Delphi, PHP, Cinema4D a nyní Blender a Python. Téměř vždy jsem pracoval sám . Zde je největší problém, se kterým jsem se dosud setkal: malé společnosti se snaží přežít a vy jste jeden z těch, kdo ho udržují naživu: je to velmi stresující, ale také prospěšné: pracujete více, učíte se rychleji a spousta věcí rychle vyrábíte produkty rychleji (událost, i když často nemůžete dělat svou práci správně). Každopádně: příliš mnoho stresu. Naopak velké společnosti vždy přežijí, ale problém je o lidech: příliš mnoho lidí. Je to džungle, ale mnohem horší: nic není jasné: pokud lidé, se kterými pracujete, mají pocit, že jste lepší než oni, zkusí to nejlepší ne aby vám pomohli jít nahoru, ale pouze vás zastřelit protože se bojí o vlastní kariéru. Je to způsob, jakým to funguje ve Francii (nevím pro jiné země).

Zkrátka: zkuste najít společnost střední velikosti, kde máte pocit, že je to vaše vaše místo . Nezáleží na tom, jak dlouho jste programovali, bez ohledu na to, jak dlouho jste pracovali, den, kdy nastoupíte do svého auta, abyste odešli do práce, a myslíte si, že „Jsem rád, že mohu jít do své práce“ bude den, kdy jste našli své místo .

Není to otázka 4-5 let nebo tak.

Pozn .: Existuje obrovský rozdíl mezi „Jsem rád, že chodím do práce“ a „Jsem rád, že chodím do práce, protože to udělám a že“ a/nebo „Jsem rád, že můžu jít do své práce. práce, protože se toho a to naučím “. Pokud si myslíte, že "protože to udělám a že" to znamená "to a to" skončí jednoho dne a možná nebudete šťastní. Toto je moje 12letá zkušenost s programováním. A já jsem senior, jsem dobře placený, ale uvědomuji si, že 20-25 let. lidé myslí rychleji než já. Prostě nemají moji zkušenost, takže jsem jen připustil, že jim mohu pomoci dělat věci, dělají to rychleji, ale pomáhám jim, aby je správně vytvořili (což je téměř nikdy případ, když se začnete vyvíjet).

Omlouváme se za moji angličtinu, která není dokonalá, neváhejte opravit můj příspěvek, aby byl správný v angličtině.

50
Olivier Pons

Byl jsem vývojářem softwaru dvacet jedna let - mimo jiné to znamená, že jsem dělal dost dlouho na to, abych vypil! ;-) Ale vážně si ale neumím představit nic jiného, ​​ani radostně jako programování. Jsem zřejmě jeden z těch vzácných ptáků, kteří opravdu láska tuto práci.

Nedávno jsem obnovoval svůj životopis a všiml jsem si, že jsem měl v posledních dvou desetiletích mnoho, mnoho pracovních míst - většinou smlouvy. Při pohledu na tento dlouhý seznam jsem si však uvědomil, že práce, které jsem nejvíc miloval (a které jsem zůstal nejdéle), byly v softwarových firmách, tj. Společnostech, jejichž obchodní model zahrnoval prodej softwaru zákazníkům. Následující teorie pravděpodobně nejsou univerzálně aplikovatelné, ale jdou daleko k vysvětlení mé zkušenosti.

Jak to vidím, rozdíl mezi softwarovým obchodem a vaším typickým IT obchodem je překvapivě zřejmý. Je to jen otázka toho, čemu rozumějí lidé v horním vedení. Pokud společnost získá většinu svých příjmů ze softwaru, pak nejvyšší mosaz skutečně software prohloubí a jak se vytvoří. Pokud ale příjmy pocházejí z prodeje widgetů, obvykle nemají nejmenší potuchy, co je potřeba k tomu, aby jejich infrastruktura IT fungovala, natož procesy, které stojí za vývojem softwaru. Horší je, že i když delegují úkol na zaměstnance IT, snaží se zmapovat procesy IT na to, co vědí, a výsledky se obvykle pohybují od zklamání až po katastrofální.

Jedním z důvodů je to, že existuje celá řada talentů, od pouze kompetentních až po softwarový virtuos. To je naprosto v rozporu s mentalitou „ořezávačů cookie“, univerzální mentality, která funguje tak dobře pro nekvalifikované a částečně kvalifikované pozice. Očekávání, že každý vývojář může být nahrazen jiným, který má podobnou „dovednostní sadu“, se nám může zdát směšné, ale často se zdá být zcela rozumné pro strukturu řízení, která je zaměřena na prvotní čísla. Pokud se vám to zdá neuvěřitelné, podívejte se, kolik obchodů se stále snaží, aby model Waterfall fungoval.

Ve svém týmu nemusíte nutně potřebovat všechny virtuosy, ale potřebujete alespoň jednoho nebo dva. Součástí jejich role musí být také instruktáž juniorských lidí, aby se do role mohli vyvinout (nebo se to vymyje - stane se). V opačném případě bude převládat špatný až průměrný juniorský kód, s jeho doprovodným vynecháváním a nadýmáním. Jakmile se rakovina dostane, kód se rychle stane neudržitelným, produktivita v týmu prudce poklesne a lidé začnou vyhořet.

Tím se vytvoří obrat, až nakonec někdo řekne: „Už nemůžeme tuto věc dál udržovat! Pojďme ji zlikvidovat a začít znovu!“ Investice do původní kódové základny jde z okna a proces začíná znovu. „Ale tentokrát to bude jiné,“ slibujete. A na chvíli to je. Pak někdo najme vaši rockovou hvězdu a zůstanete s nepřímými juniorskými lidmi, kteří znovu shazují váš nový lesklý kodebase.

Pěna. Rant. Litovat.

Ale já odbočím ... Takže, abych odpověděl na vaši původní otázku: Ne, půl desetiletí není prostředkem softwarové kariéry. Možná je to spíš věk rozumu - místo ve vaší kariéře, kde z očí vypadávají šupiny a začnete vidět, o co jde. Realizace přicházejí v jiném pořadí pro každého a že barvy závěrů, které můžete vyvodit podél cesty. Ale zůstaň tam - pokud vyjdeš z druhé strany zdravě, budeš mít mnohem zdravější perspektivu a nakonec zjistíš, že tento bláznivý obchod, ve kterém jsme odměňováni, než kdykoli předtím.

36
Eric Lloyd

Myslím, že potřebujete dalších pět let zkušeností. Pak budete moci přijmout kompromisy a rádi opravit, co můžete.

Alespoň to byla moje zkušenost. Asi za 5 let (o době, kdy je potřeba stát se odborníkem) si myslím, že to vlastně „mám“. Uvědomil jsem si, že můj kód byl kecy. Uvědomil jsem si, že moje lesklé hacky, které fungovaly na aplikacích, byly právě to, hacke. Pochopil jsem, že vytvářím sub-par kód, jen abych svým šéfům udělal radost a udržel výplatu.

Zároveň jsem si uvědomil, že touhy šéfů se nezmění. Vždycky to chtěli včera, aniž by utráceli peníze za dobré nástroje. Nikdy se nestarali o to, kdybych použil konkrétní návrhový vzor. Nikdy by nebyli v úctě, protože jsem zvětšil udržovatelnost díky uvážlivému uplatňování zásady jednotné odpovědnosti.

Také jsem si uvědomil, že budu bojovat proti mému mladšímu já ztělesněnému nezkušenými programátory. Programátor, který program hacknul, aby fungoval rychle. Mladý programátor, který odolával všem hloupým věcem, které mi trvalo roky, než jsem to pochopil. Mladý programátor, který si myslí, že má 5 tříd, je matoucí než mít jednu obrovskou třídu, která to všechno zvládne.

Ale teď, když jsem ve svém desetiletém bodě, jsem zjistil, že tyto frustrace jsou stejně jako frustrace, které jsem zažil v mých prvních pěti letech. Je to frustrace spojená s učením se nové dovednosti. Tentokrát jsou však dovednosti mezilidské. Dovednosti získávají neprogramátory, aby porozuměli omezením cesty kovbojem. A tyto dovednosti jsou možná důležitější ve velkém schématu věcí než kodérské dovednosti, které jsem získal během prvních pěti let.

Co je však na této práci opravdu úžasné, je to, že mohu pokračovat a ve skutečnosti musím pokračovat v rozvoji pomocí technických dovedností a zároveň pracovat s vedením.

Takže vám říkám, abyste na to zůstali! Vzhledem k tomu, že jste se s touto technologií cítili dobře, můžete začít pracovat na svých schopnostech zabývajících se svižnými věcmi zvanými lidé.

32
ElGringoGrande

Zjistil jsem, že existují dvě tajemství relativního štěstí:

  • nesnažte se mít vše, co chcete, ale snažte se o to, co chcete

  • život je těžký - nezáleží na tom, jak těžce můžete zasáhnout (dobře jste, osobně a profesionálně); bude to vždycky tvrději zasáhnout. záleží na tom, kolik vás může zasáhnout a stále se můžete pohybovat.

Koneckonců je to všechno procházka v parku a jsou zde důležitější věci než kousky a bajty, postupy a věci. Užijte si všechny zážitky tak, jak jsou, a bojujte, jak jen můžete.

29
AZ01

Možná se podívejme na vášnivý programátor od Chada Fowlera ... cituji z webové stránky:

Pozoruhodné kariéry ve většině případů nepřicházejí náhodou. Vyžadují myšlení, úmysl, akci a ochotu změnit kurz, když jste udělali chyby. Většina z nás klopýtá a nechala naši kariéru, aby nás tam, kam mohou. Je čas převzít kontrolu.

22
Adam

IMO nespokojenost, kterou zjevně pociťujete, není krize, ale spíše znamení, že jste dosáhli určité úrovně. Překonali jste slot „Jsem jen programátor“. Nyní máte dost porozumění, abyste viděli nedostatky současného stavu věcí a jak je lze napravit.

Dalším krokem je najít souvislost mezi tím, co považujete za potenciální zlepšení, a tím, co by společnost, pro kterou pracujete, viděla jako taková. Pak musíte přesvědčit svého šéfa, že to je cesta.

Nestačí rozumět věcem a vědět, jak dělat věci. Také byste měli být schopni přesvědčit lidi, že víte, co děláte. A pokud to zní jako prodej, je to proto, že je. Ale to je naprosto nezbytné, aby se stal "skvělým". Nepracujete s počítači, pracujete pro lidi as lidmi, musíte být schopni prodat své nápady.

Některé společnosti by samozřejmě byly příliš konzervativní, než aby přijaly vaše nápady, a váš šéf je může odmítnout kvůli barvě kravaty, kterou máte na sobě. Jen mějte na paměti, že prodej nápadů není snazší než nápady generovat a neúspěšný prodej nemusí být nutně výsledkem postranních motivů vašeho šéfa, může to být z vaší strany špatná prezentace.

19
mfeingold

Úplně souhlasím s Nikosem. Myslím, že to, co možná potřebujete, je najít společnost, která se zaměřuje na technologie a produkty. Existují společnosti, kde vývojáři softwaru považují vývoj za svou práci, a nikdy o těchto věcech neuvažují ve svém vlastním čase. Pracovní prostředí je obvykle mnohem více zaměřeno na manažery, kteří provádějí práci na stole, než na vývojáře, kteří vykonávají práci na mysli. Průměrný standard vývojářů je obecně nízký (i když občas dostanete jeden „guru“). Mají tendenci omezovat rohy (nebo dokonce vyhýbat se) věcem, jako je kontrola verzí, testování, zpracování atd. Společnost obvykle dodává software, který tuto práci vykonává, ale je často ošklivá a buggy a nikdo se zvlášť neobtěžuje.

Na druhé straně existují společnosti, kde vývojáři prostě dělají to, co by jinak stejně dělali doma; večer chodí domů a pracují na svých vlastních projektech pro domácí rozvoj a ve svém volném čase se učí nové jazyky/technologie. Pracovní prostředí je obvykle docela zaměřeno na vývojáře, s dobrými monitory, dobrými nástroji, dobrou atmosférou napomáhající myšlení. Vývojáři mají často vysoký standard a ocitnete se každý den od svých kolegů. Obecně berou věci jako kontrola verzí, testování a zpracování vážně. Společnost obvykle dodává slušný kvalitní software, protože jej vývojáři berou osobně, pokud existují chyby nebo nedokonalosti.

Nemyslím si, že nalezení větší společnosti nutně zlepší záležitosti; ve skutečnosti jsou v mnoha případech větší společnosti horší a problémy jsou jen hlubší zakořeněné a institucionálnější.

Očividně trochu polarizuji věci .... ale pokud jste softwarový inženýr v srdci (a ne jen ve vašem životopisu), pak musíte zkusit najít jeden z posledních typů společností. Přemýšlejte o několika dobrých otázkách na pohovor, které můžete položit jim, abyste zjistili, zda je společnost takovým místem.

18
NeilDurant

Něco, co jsem našel, mnoho programátorů nechápe, je, že ne všechna rozhodnutí jsou technická. Smutné, jak to je, dělat něco „správného“ není vždy možnost. To vede mnoho vývojářů k tomu, aby si mysleli, že jejich šéfové jsou hloupí, nebo činí špatná rozhodnutí ... a ano, často tomu tak skutečně je, ale stejně často je skutečností, že společnost může být bez podnikání nebo ztratit práci zcela, pokud programátorům umožnili stanovit plán a učinit všechna technická rozhodnutí.

Je smutné, že někdy je naším úkolem pracovat v rámci politických nebo finančních omezení této práce a dělat to, co je v našich silách.

Jedna věc, kterou se naučíte ze zkušenosti, je být konzervativní. Nejnovější techniky nemusí být prokázány a možná na ně nebudete mít silné pochopení, i když jsou. Manažerům se nelíbí trávit čas tím, že vás nechají přizpůsobit se nové technologii jen proto, že se chcete naučit něco nového.

Programátoři zapomínají, že mnoho společností není softwarových společností. Jsou to <vložte obchodní odvětví zde> společnosti, které také vyrábějí software. Vaším úkolem jako programátora je usnadnit kritické procesy mise, nikoli psát dokonalý software. Někdy se zjistí, že se jedná o totéž, ale ve skutečnosti je to docela vzácné.

14
Erik Funkenbusch

Dokážu mluvit, pokud jde o napsaný kód, může být lepší, ale musí existovat řádek, ve kterém může být příliš mnoho perfekcionistů, jako by něco fungovalo 99,99999% času, není to pro většinu lidí tak blízko 100% ? Součástí mých občasných negativních myšlenkových vzorců je perfekcionismus a intenzivní sebekritika a úsudek, takže se s tím mohu příliš ztotožnit.

4-5 let je dost času, IMO, abychom zjistili několik věcí:

  • Co chcete - Jaké praktiky ve vaší současné pozici máte rádi?
  • Co funguje pro vás - To se mírně liší v tom, co to nemusí být vždy to, co chcete.
  • Jaké jsou vaše dealery - Mohli byste jít pracovat pro společnost, která by vám nedovolila mít IDE? Extrémní příklad, ale doufám, že to poněkud ilustruje tento bod.

Existují i ​​další otázky jako „ Plán k lepšímu programátorovi ,“ a „ Jak se stát„ rychlejším “programátorem ,“ které mohou mít pro vás návrhy, pokud chcete zlepšit své dovednosti.

Zažil jsem také to, kde je seniorský titul udělen někomu pouze za to, že přežil na poli tak dlouho, než aby dosáhl úrovně dovedností. Můžete to buď přijmout jako součást toho, jak svět funguje, nebo se můžete pokusit najít místa, která běží jinak. Kolik skutečně existuje, nevím, ale mohu říci, že někdy můžete najít dobré místo, pokud jde o to, jak rádi pracujete a co společnost a spolupracovníci používají k dokončení práce.

" Sources of Insight " je jeden z mých oblíbených blogů a rád ho čtu téměř pořád. Materiál je poněkud těžký, pokud jde o to, co je napsáno, ale má spoustu intelektuálních prvků, ale existují nugety, které si člověk může vzít a vylepšit svůj život, nebo alespoň to byla moje zkušenost.

Vzpomínám si ve škole, když jsem byl dítě, že po čtyřech až pěti letech došlo často k přechodům, jako když jsem byl v první škole, kde jsem byl 8 let (Juniorská mateřská škola do 6. ročníku), pak to byly 2 roky (7. a 8. ročník) , 4 roky (Střední škola ve věku 9–13 let, kde v mém případě bylo 11/12 v jednom roce) a 4 roky (bakalářský titul na vysoké škole).

Dokážu přijmout myšlenku krize přicházející v různých životních bodech, např. dokončení univerzity může způsobit, že člověk přemýšlí, kdo jsou, nebo po chvilce práce přemýšlel, jestli to všechno stojí za to.

Některá místa se mohou jevit jako úžasná místa pro práci a jiná mohou vést k vyhoření, protože to zde byla několikrát otázka: „ Co způsobuje vyhoření vývojáře ,“ a „ příběhy vyhoření vývojáře) , "zatímco jiné otázky jsou převrácené," Jaká je vaše motivace , "a" Programování (de) motivace a další plány ... "

Kvůli pozadí ve své odpovědi zde vyvíjím webové stránky/aplikace již téměř 12 let, když jsem v únoru 1998 získal své první univerzitní zaměstnání a až na 8měsíční sucho, kde jsem nepracoval to dělají pořád v několika různých prostředích: Pár dot-coms, poskytovatel aplikačních služeb a nyní v týmu pro vývoj webových stránek oddělení informačních systémů v místní technologické společnosti. Uvědomuji si, že je to dlouhá odpověď, ale myslím, že na položené otázky nemám krátké odpovědi.

10
JB King

Podle mého názoru nejde o krizi středního věku - řekl bych, že líbánky skončily.

10
bernhardrusch

Podobné věci jsem našel v mých 10 letech programování a domnívám se, že se jedná o spíše běžné události. Ve světě podnikání (na rozdíl od akademické obce) peníze (nebo nedostatek peněz) a čas řídí rozvrh, funkce a kvalitu programování. Často tyto zdroje chybí na to, aby dělaly věci úplně správně. Toto je hlavní motivátor pro nalezení nejúčinnějších metod řešení problémů. Tato situace mě také vedla k tomu, abych měl na paměti, že moje programování by mělo řešit pouze problém po ruce (s určitým množstvím budoucího zvážení) namísto budování něčeho, co obsahuje mnohem více funkcí, než je požadováno. Podle mého názoru je to zásadní poučení.

Vaše komentáře k „senior programátorům“ jsou, bohužel, podle mých zkušeností také běžné. Myslím, že důvod je dvojí - za prvé, mnoho zkušených programátorů je líných, používá pouze nástroje a metody, které použili ve své kariéře. Technologie se však stále pohybuje vpřed, a to vede tyto zkušené programátory k tomu, že se stanou „dinosaury“. Za druhé, po chvíli programování se může stát snadnou kořistí v trošce rozruchu („můj talent mě dostal tak daleko, takže musím být docela dobrý programátor“). Snažím se bojovat proti oběma těmto problémům tím, že se neustále pokouším učit se nové metody nebo technologie k řešení mých problémů. Někdy je to v rozporu se stavem lekce „stavět jen to, co je vyžadováno“, ale cílem je usilovat o zdravou rovnováhu mezi nimi.

Navrhoval bych využít zkušenosti, které máte, jako motivátora k neustálému zlepšování sebe sama. Programovací průmysl jsem opustil asi po 5 letech, protože jsem ztratil vášeň pro inženýrský kód. Ale nemohl jsem se zbavit svědění, abych vytvořil programy, a vrátil jsem se do průmyslu o několik měsíců později. Dozvěděl jsem se, že se musíš angažovat tím, že děláš, co se ti líbí - pokud chceš projektový management, najdi pozici, která ti umožní řídit projekty. Pokud chcete kódovat celý den, najděte místo, kde to budete dělat. Nalezení práce, která vás napadne a splní vaše touhy, je úžasnou a nezbytnou součástí šťastné existence - přeji vám mnoho štěstí při hledání.

9
user37772

Měl jsem stejné otázky a možná jsem se podíval na stejné věci, které máte (skvělé startupy, inspirativní rady, motivovaní lidé vytvářející úžasné věci, procesy, algoritmy, které dělají vaši hlavu srdcem), jen abych nenašel nic z mých spolupracovníků, současných nebo bývalých , ani u lidí, které vím, kdo jsou v podnikání. Takže tato hádanka sladění tohoto hlubokého zájmu s placeným zaměstnáním znamenala spoustu špatně spaných nocí a hledání projektu tak geniálního, že by se mohlo brát na stranu a přesto se rozrostlo do své vlastní věci dostatečně rychle, aby poskytlo cestu ven. Stejně jako mnoho lidí, i já mám rodinu na podporu a já osobně si myslím, že energie, kterou potřebuje k vybudování něčeho na startu zaměřeného na brazilský trh, není dostatečně utrácena, pokud to není úplně IT-ish a nudné. A vážně? Dělám IT-ish a nudné věci po celý den.

Odpověď mi tedy zachovala vůli učit se a zlepšovat se na jednom místě a pracovat na jiném. Vzal jsem si processing.org a stále se snažím kreslit, psát a vařit více. Bylo to pro mě skvělé, abych byl upřímný: někdy jste tak dohnáni tím, že spojujete lidi, které obdivujete, a že jste byli přijati do Pantheonu velkých úspěchů, že ignorujete seriózní fakta o tom, kdo jste a co vás cítí, že život stojí za to živobytí. A zatímco práce je něco, co zabere značný kus vašeho dne, okamžik, kdy si přestanete dělat starosti s tím, co to všechno znamená a kam jdete, je okamžikem, kdy si uvědomíte, že se k němu nemusíte dostat. Pokračujte v kódování, pokud to máte rádi, pište software doma, přispívejte k projektům, které vás zajímají. Tento typ uspokojení téměř nikdy nepochází z výplaty pro většinu lidí, a možná je to také pro vás.

7
dodecaphonic

Jako programátor budete vždy muset vyvážit vaši touhu po dokonalosti a touhu svého zaměstnavatele po pracovním produktu. U některých společností budou tyto dvě touhy blíže k sobě, u většiny společností budou tyto dvě touhy daleko od sebe.

Mým nejlepším návrhem, jak se vypořádat s odlivem svého denního zaměstnání, je zahájit osobní projekt na straně, kde není stanoven žádný termín, kde můžete pracovat v oblastech, které obvykle nepracujete, v těch, kde provedete všechny rozhodnutí. Nejpřínosnější kód, který jsem napsal, byl při práci jako vývojář Wii, mohu navrhnout, abyste napsali hru. Budete mít možnost dotknout se všech různých aspektů programování, 3D, sítí, AI atd. ... a protože už pracujete s. Net, navrhl bych popadnout XNA nebo Jednota

Pokud Senior Programátoři toho moc nevědí, máte pravděpodobně pravdu. Většina vyšších programátorů ve větších firmách byla povýšena v době, kdy toho hodně věděli nebo když dokázali tuto práci dokončit. Nyní, když jsou starší, mají různé povinnosti, hlavně jako vedoucí. Očekává se, že jejich kódovací schopnosti trochu sklouznou. Některé jsou lepší než jiné a některé se pravděpodobně dostaly do povýšení kvůli tomu, koho znají, ale většina vyšších programátorů, se kterými jsem v minulosti pracoval, měla solidní (i když někdy zastaralou) sadu dovedností.

Chcete-li to zabalit, udělejte osobní projekt, který ulehčí každodenní nudě a vezme si to na své seniory snadno, prostě udělejte tu nejlepší práci, kterou můžete v přiděleném čase a budete v pořádku.

7
jessecurry

Ahoj kámo, bylo to opravdu dobré číst tvou otázku. Jsem rád, že jste to napsali. Víš co, neuvědomuješ si, jaké chápání máš právě teď. Věci, které jste napsali, mě nutí pochopit, jaké zkušenosti jste měli, a věřte mi, že tato zkušenost je něco, co ne všichni programátoři mohou mít ve svém životě. Jste osoba řízená vlastním sebevzděláváním. Právě teď jste ve velmi vyspělém stavu, po čtyřech letech práce pro malé společnosti. Kdybyste byli ve velkých společnostech, neměli byste nic považovat za zážitek. Nyní už chápete, jak toto odvětví funguje, jak se věci dělají a jak by se měly dělat. Jakou úroveň mají tito takzvaní „senioři“. Mám pro vás návrh, pokud jste tak dobrý samoučící se a cvičili jste se samoučením déle než 4 roky, proč nezkusíte na volné noze jako kariéru. Věř mi, že budeš pracovat pro sebe a budeš si užívat mnohem víc.

Jako poslední poznámku nelitujte, co jste udělali za poslední 4 roky. Je to skvělý zážitek a jen málokdo to má ve svém životě :)

7
Ravinder Singh

Rozdíl mezi staršími a juniorskými programátory, když mluvíme o lidech se zkušenostmi vůbec, je obecně jen placený. Organizace si cení toho, aby změnili název, a je často různorodá. Často je určována tím, co požadujete, když vás najmou.

Pokud je to nějaká útěcha, mám 10letou krizi v polovině programovacího života, i když jsem začal programovat na Apple] [+, takže by to mohl být 24letý bod; Nevím, jen si přeji, aby lidé neočekávali kouzlo od programátorů.

7
dlamblin

Zjistil jsem, že červenou nití, kterou jsem viděl v mé kariéře, bylo, že když se cítím, že mě chytí v situaci, kdy nemám kontrolu nad svým prostředím, když se začnu cítit znuděně. Dělám to, co vám říkají všichni ostatní. Je důležité mít oblast, která je vlastní (IMHO), abyste měli úplnou odpovědnost - možná to také chybí ve vaší práci?

V takovém případě byste měli mluvit se svým nadřízeným, možná existuje nějaké řešení ve vaší současné práci? Žádat o větší odpovědnost je vždy dobrý krok.

7
AndersK

Podle mých zkušeností je prvních několik týdnů (maximálně měsíců) rozhodujících pro celkovou kvalitu projektu. Pokud náhodou začnete pracovat na místě, kde již jiní programátoři vytvořili nepořádek (špatné kódovací standardy, žádná kontrola verzí atd.), Je pro manažera velmi obtížné a většinou pro nového kolegy většinou nemožné provést jakákoli vylepšení. Pozdější termíny a problémy budou způsobovat ošklivost téměř u každého projektu, ale pokud je základ dobře proveden, bude škoda omezená a zvládnutelná.

Z tohoto důvodu, pokud se ocitnete v situaci, kdy musíte pracovat se špatnými vrstevníky na špatném projektu, zkuste se přiřadit k novému projektu (pokud je to ve vaší společnosti možné) nebo si najít nové zaměstnání. Nečekejte příliš dlouho, protože špatné návyky jsou nakažlivé.

7
user281377

Měli byste se naučit další doménu (matematiku, umělou inteligenci, těžbu dat, BI, integraci atd.). Poté, co zvládnete tuto novou doménu, je pravděpodobné, že máte nové nápady, které reagují na skutečné obchodní potřeby.

V této fázi, pokud jste skvělý programátor, stačí provést spuštění. Je to riskantní, ale mnohem zábavnější.

Naučte se různé dovednosti a kompetence, nejen v programování, pak je zkombinujte a vytvořte novou věc, kterou si nikdo neuvědomil. To je snadné, už máte nejlepší kladivo, jaké kdy bylo: Programování.

6
Nicolas Dorier

Moje osobní zkušenost je stejná, jakou zmiňujete. Většinou všechny projekty, na kterých jsem v poslední době pracoval, jsou vytvořeny ve spěchu a všechny by mohly být lepší. Jsem vývojářem programu zhruba 7 let a jsem ve stejné středně velké společnosti. Vedení nemá potuchy a běží všechny projekty jako „neprojekty“. V chaosu je velmi málo řádů.

Nejvíc se obávám, že spadnu do jámy, o které mluvíte, a začnu dělat "mizerné" programování a hloupé rozhodnutí, jen abych se v mé kariéře posunul kupředu. Doufám, že tam bude někdo, kdo mě udeří do hlavy, pokud se to stane.

6
Arto Uusikangas

Myslím, že je čas být Sr, vývojář pro vás, jsem nový na tomto trhu a učím se a zlepšuji se, ale zaměstnavatelé nehledají lidi, hledají monstra jako Jr. vývojáře s 6 + letou zkušeností a je to opravdu frustrující.

6
Tarik

Dobrá otázka Jeffrey. Baví vás programování? Jste nadšeni, děláte to ve svém volném čase? Nebo jste jen nemocní kvůli některým hrozným programovacím úlohám, které jste měli.

Pokud máte pocit, že programování není pro vás, existuje mnoho dalších oborů, které byste mohli odbočit a udělat v této fázi své kariéry - řízení projektů, prodej, předprodej, analytik. Tyto příležitosti by neexistovaly, když jste byli junior/grad, takže byste nemuseli začít přemýšlet nad rámec řezacího kódu. Možná se můžete obrátit na svého zaměstnavatele, aby vás sponzoroval pro certifikační zkoušky, nebo pokud chcete prozkoumat novou technologii (Azure/Silverlight/WPF?)

Na druhou stranu, pokud máte pocit, že se vaše pracoviště podobá skutečnému Dilbertovi komiksu, možná je jen čas jít dál. Pokud jste pracovali ve velké společnosti, co třeba pohovory s několika startupy nebo naopak. Nemusíte nikomu říkat, že se ucházíte o práci, ai když dostanete nabídku, jste ve skvělé vyjednávací pozici, protože již mají práci, můžete jednoduše rozhodnout, zda je nabídka lepší než vaše současná situace, a pokud ne, tak se jen dívejte. Větší společnosti vám často mohou nabídnout lepší příležitosti k profesnímu rozvoji a školení, zatímco u malé společnosti získáte více nehmotných aktiv, jako je odpovědnost za úspěch společnosti, flexibilní pracovní doba, akciové opce a seniority/respekt později, pokud/kdy společnost zasáhne to velké.

6
user204592

Jestli je to nějaká útěcha, cítil jsem se stejným způsobem o seniorech na svém pracovišti. Minulý týden jsem podal zprávu založenou na důkazech a tento týden jsem měl hodinové setkání s personálem, abych oficiálně podal stížnost na manažery (s ohledem na to, že jsem junior). Bylo to buď pěstovat nějaké koule, nebo být nešťastný v mé práci. Nejedná se o škodlivé stížnosti, ale o konstruktivní stížnosti. Je tu rozdíl a určitě to může mít obrovský dopad na vaše štěstí v práci.

UPRAVIT

Řekl bych také, že se „nevzdávej“, protože máš problém s lidmi. Zdá se, že zde mnoho lidí jen říká: „ukončete svou práci“, pravdou je, že vy můžete změnit místo na pracovišti. Zní to mrzutě, to vím, ale myslím, že by se vám podařilo změnit a získat větší respekt, pokud jste proaktivní, aby se věci změnily. Nebojte se vzít svého šéfa stranou a podat stížnost. Mám, a už to udělal velký rozdíl. Přijímáme nové technologie, měníme pracovní postupy a formálně přistupujeme k úkolům, a to díky tomu, co jsem řekl (a jsem juniorský vývojář)

6
Kezzer

Wow! Líbí se mi, jak cenná je tato konverzace. Jsem webový vývojář se zkušenostmi 5,5 a více let a miluji ho. Nemohu hlasovat, ale cituji slova AZ. Souhlasím s tím!

Zjistil jsem, že existují dvě tajemství relativního štěstí: - nesnažte se mít vše, co chcete, ale snažte se, aby všechno, co máte - život je těžký - nezáleží na tom, jak těžce můžete zasáhnout (dobře jste, osobně a profesionálně); bude to vždycky tvrději zasáhnout. záleží na tom, kolik vás může zasáhnout a stále se můžete pohybovat.

Kniha, kterou bych doporučil, je: http://www.Amazon.com/Software-Measurement-Estimation-Quantitive-Engineering/dp/0471676225

5
lordspace

Moje dva body:

Zasáhl jsem dolu po pouhé 2 roky v průmyslu. Překonal jsem to tím, že jsem se zlepšil a učil se.

Většinou to přijde, protože děláte to samé znovu a znovu. A pokud děláte to samé znovu a znovu ... no ... děláte to špatně.

Vždy se zlepšujte. Vždy se učit. A sakra, pokud vám vaše současná společnost nedává tu atmosféru, jděte najít tu, která bude. Udělal jsem a poslední 2 roky byly nejlepší dobu mého života (v mé práci jsem pravděpodobně také asi stokrát lepší než před dvěma lety)

5
mendicant

Existuje mnoho programátorů, ale jen malá část z nich jsou softwaroví inženýři kvality. Předpokládám, že to platí v každé profesi.

5
David R Tribble

Vítejte ve skutečném světě ... bohužel, to, co popisujete, se děje ve většině profesí s lidmi, kteří prostě nejsou dostatečně nadšení, co dělají. Existuje pouze jedna možnost (to je, pokud máte rádi svou práci): musíte najít lepší obchod, pro který budete pracovat, i když to v současné době není snadné ....

5
Luis Abreu

Pozoroval jsem také další problém, že většina takzvaných „vyšších“ programátorů v „mém pracovním prostředí“ ve skutečnosti není takovou dovedností pro seniory. Jsou „starší“ pouze proto, že byli dlouho programátorem, ale kód, který píšou, nebo rozhodnutí, která dělají, jsou naprosto nesmysl! Nechtějí se učit, nechtějí být lepší, jen chtějí dostat zaplaceno

... následován ...

Dostal jsem se do mentálního stavu, že už nemám v úmyslu být programátorem pro svou budoucí kariéru. Začal jsem myslet, že tam jsou lepší věci, na kterých bych mohl pracovat.

Pak je čas začít hledat a jednat. Protože pokud zůstanete programátorem s tímto přístupem, skončíte stejně jako ti „starší“ lidé, které tak jasně opovrhujete. Operativní slovo je „uvězněno“: vyděláte dost peněz, abyste nemohli ospravedlnit přesun k něčemu jinému, a vaše dovednosti budou tak úzké, že se nemůžete pohybovat v rámci odvětví.

5
kdgregory

Možná byste chtěli jít na vysokou školu? To by mohlo otevřít příležitosti pro jinou, dlouhodoběji orientovanou práci.

3
Max Strini

Pracoval jsem pro 2 společnosti na 2 různých kontinentech s naprosto odlišnými mentalitami, ale co mají společného, ​​že se o programátory nestarají ... Programátor je obvykle spojen s dolní úrovní společností ... Obvykle jsou spojováni se začátečníky a mají nejmenší mzdy ... zatímco projektoví manažeři, architekti atd. ... obvykle berou více peněz a méně práce ...

Pracuji už téměř 4 roky a mám téměř stejný pocit jako vy ... Přepínání mezi projekty ... zkouším všechny možné programovací jazyky ... C, C #, php, ASP.NET, WinForm, C++, Python, VB.NET, VBA ... a mnohem více byly některé z jazyků, se kterými jsem pracoval ... Od chvíle, kdy vaši nadřízení zjistí, že to dokážete s jakýmkoli jazykem, který vám dají, označí vás jako "dobrý" zdroj a dá vám veškerou špinavou práci ...

Nemám ani mentora, který by mě vedl důkladnou kariérou ... a stejně jako mnozí, kteří zde psali ..., jsem spokojený, když dělám své osobní projekty ... ale bohužel obvykle dlouhé pracovní hodiny nebyly Nedovolím, abych udělal nějakou vážnou práci ...

Na závěr strávím několik měsíců ztracenou, dokud se nerozhodnu, že se většina vášnivých vývojářů vzdá a vezme jen nudný příspěvek architekta, aby získal více peněz

3
Zied

Nějak máme podobný pocit. Teď mě zajímá, jestli se to děje, protože máme oba pětileté zkušenosti nebo organizované vzestupy těch lidí, kteří čtou „Čistý kód“ (v Německu máme docela aktivní komunitu kolem iniciativy „Čistý kód Devloper“) ), „Pragmatický programátor“ a „Kód dokončen“, jako je ALT.NET atd. Všechny blogy jsou plné nápadů, jak dělat věci správně a čistě.

Takže si myslím, že pětiletá zkušenost je jen náhoda, zatímco hlavním důvodem je změna průmyslu - což je zcela nové: domy a mosty se stavějí od tisíce let, stroje jsou konstruovány pro mnoho zadní léta, vyšší lékařské věci trvají sto let, počítače asi 50 let a od 20 let kódujeme v jazyce 3. generace. Vidíte bod? Trvá čas, než se z něj stane vyzrálé odvětví, a myslím si, že toto odvětví dospívá do věku dospívání :-)

3
Marc Wittke

Tato otázka velmi dobře popisuje smutný stav našeho průmyslu: programování je úžasné, ale většina programovacích úloh saje.

3
Rockcoder

Změna vaší perspektivy je velmi důležitá

Myslím, že my programátoři si stěžujeme a pláčeme na spoustu věcí. Chceme, aby všechno bylo " perfektní" (= chceme, aby všechno bylo naší cestou). Byl jsem (stále se snaží změnit) hodně jako ty. Ale čtení " vášnivý programátor " Čad Fowlera pro mě všechno změnilo. Nyní považuji štěstí za programátora. Pracuji 52–55 hodin týdně (ano, je to pravda). Není to " perfektní". Ale snažím se dělat svou práci vášnivě. Pracuji pro outsourcingovou firmu v Indii a druh práce, kterou dostáváme, není zdaleka považován za náročný. Programátoři mají štěstí, že mají širokou škálu příležitostí k uspokojení svých tvůrčích potřeb. Můžeme pracovat na vlastních projektech. Můžeme pracovat na projektech s otevřeným zdrojovým kódem. O víkendech můžeme dělat volné noze. Myslím, že většina profesionálů v jiných oborech tento luxus nemá.

3
P.K

Myslím, že si můžete plést nespokojenost s „prací“ a nespokojenost s „prací“. Jak říkali ostatní, možná budete potřebovat změnu situace.

Vývoj zaměřený na produkt, spíše než projekty Line-of-Business (LOB), vám může poskytnout silnější vztah mezi vaším úsilím/touhou po kvalitě a výstupy. Když se snažíte udělat komerční produkt co nejlépe, můžete být velmi soustředěni a sladěni se snahou ostatních, zejména pokud je váš trh v oblasti tech/programátorů - možná se musíte například stát vývojářem softwarových nástrojů. ?

V každém případě bych vám určitě radil, abyste nehledali větší společnosti s více penězi - kam si myslíte, že se průměrní a podprůměrní vývojáři skrývají?

Dovolte mi, abych řekl manažerův pohled. Světová nabídka možností kódování výrazně překračuje dostupné hodiny talentů, které jsou k dispozici pro jejich řešení. Manažeři provozují firmy, aby dosáhli zisku, a proto se snaží využít dostupné hodiny talentu na co nejvíce možností kódování, takže je správné a správné, aby se věci prováděly ve spěchu a za levné, pokud důsledky nemají vliv na spodní řádek.

Podle mých zkušeností se nejlepší práce provádí, když se management nedívá, buď jako projekt skunkworks ve větší společnosti, nebo stále více dobrovolnými přispěvateli pracujícími na open source projektech.

Moje rada je obejmout disciplínu kontroly nákladů, hledat příležitosti pro skunkworks, najít open source projekt, který by se zapojil do vašeho volného času, a dostat se do řízení, protože pokud nemáte někoho s menší technickou kompetencí, bude se místo toho rozhodovat.

PS. Byl jsem vývojářem C/C++ 12 let a stále jsem kódoval režiséra Java).

2
Piers C

Přemýšlejte o tom jako o šanci, jak vás předvést za sebe. Navrhuji, abyste se ujali iniciativy ke zlepšení vaší atmosféry. Naučíte se toho hodně na cestě, bez ohledu na to, zda byste selhali nebo uspěli.

Je mnohem snazší si stěžovat (já vím, že se lidem tato slova taky nelíbí, než já) než udělat pozitivní změnu. Chcete-li změnit, měli byste být schopni ovlivňovat ostatní; měli byste být schopni komunikovat; měli byste být schopni vytvořit společný základ; měli byste být vytrvalí a trpěliví; měli byste být schopni naslouchat a motivovat ostatní vizí. Jedná se o dovednost, která nikdy nevyšla z dat a která zlepší váš celý život.

2
Bin Chen

Pokud jste dobří v tom, co děláte, většina lidí, se kterými se v podnikovém životě setkáte, bude mít více co ztratit, než získat. Vrcholový management by získal z vašich schopností a musíte se ujistit, že máte jejich podporu.

Najděte si svého vlastního mentora. Pokud máte rádi tuto hru, je vaší odpovědností najít někoho, kdo vám pomůže růst.

2
wentbackward

Existuje rozdíl mezi desetiletou zkušeností a desetiletou zkušeností.

2
PurplePilot

Chvíli jsem se cítil stejně. Jsem ve velkém, obchodním IT obchodě a vidím totéž; senioři jsou většinou stagnující a odolní změnám a tento odpor je natolik zakořeněný, že se ani nemůžeme zbavit zjednodušení uživatelských rozhraní pro náš software, namísto toho skončí klonování originálu téměř přesně.

Nepomůže to, že původní software je většinou hrozný; návrhy jsou příliš složité, velmi neefektivní a stejně náchylné k chybám ... vedení nás však nutí učinit mnoho stejných architektonických rozhodnutí.

Takže pracuji na přechodu na nezávislý ...

2
Rakesh Malik

Zajímavý příspěvek. Jsem v polovině svého čtvrtého roku profesionálně dělám .net vývoj. Jsem opravdu nespokojen se svou současnou prací (dívám se, ale prozatím na ní nebylo co říct).

  1. Měl jsem učitele, který kdysi absurdně zmizel z cesty, aby vše zdokumentoval. Nemyslím kód, myslím "všechno". A řekl, že to pravděpodobně ještě nebude stačit. No, existuje rozdíl mezi věděním a porozuměním věci a já jsem to pochopil a má pravdu. Nikdy není dost. Nedokážu dokumentovat, ale navzdory nedávné konverzaci ztratím. Dokumentuji, řeknu mi, že jsem něco nepochopil. To vše jsem se na sebe dlouho a tvrdě podíval a myslím, že některé z mých vlastních vad rozhodně fungují. Komunikace je však obousměrná ulice a já nejsem vždy ten, kdo do prdele. Je to ještě horší, když navrhuji věci nebo řeším problémy, ty se v té době odfouknou a potom přijdou později. Nedávno jsem seděl ohromeně v kanceláři viceprezidenta, když se on a můj šéf zeptali, proč jsem neudělal něco na konkrétní stránce v naší naposledy vydané aplikaci. A přesto jsem se během vývoje zeptal na to, co dělám, a byl sestřelen. Věci, jako je tento, se dějí až příliš často pro můj vkus.

  2. Učení/udržování vašich schopností/atd. Je někdy diskutováno, ale neděláme to. Máme příležitosti to dělat v práci a stále to neděláme. Velké zklamání. Neočekávám, že pokaždé, když se objeví, skočíme na nejnovější a nejnovější technologie/nástroje. Ale např. měli bychom dělat vývoj .net 3.5. Neexistuje žádný argument pro neprovedení vývoje 3.5. Ale stále vyvíjíme 2.0. Je to hloupé. Většinou je dobré, že můj šéf nedůvěřuje novým věcem, ale je to hloupé. Nedávno jsem se mu pokusil vysvětlit LINQ (když se hádal o přechod na 3.5) a jeho odpověď byla „zní to jako ta věc v anglickém jazyce“. Uvědomuji si, že součástí problému bylo to, že jsem dělal špatnou práci vysvětlující LINQ. Ale vracet se k obousměrné komunikační komunikaci, to byl někdo na druhém konci, který nechtěl poslouchat. Neočekávám, že mě společnost učí, že je to nejvyšší priorita. Ale moje skupina (jen 3 vývojáři) by mohla udělat více pro podporu učení.

  3. Postavení mé skupiny ve společnosti se za poslední rok a půl mírně zlepšilo. Stále však máme nějaké problémy. Za to je z velké části zodpovědný náš viceprezident. Je to frustrující, ale mohl bych s tím žít, pokud by některé další aspekty práce plnily více.

  4. Ironspeed Designer - Bože, nenávidím tě. A věc je, že chápu, proč může být generátor kódu užitečný. Chtěl jsem generátory kódu pro určité úkoly občas v mém životě. Zdá se však, že se stáváme skupinou řízenou Ironspeedem. To se mi nelíbí, protože to vážně naruší mou schopnost růst v práci.

  5. Zajímám se o vývoj softwaru a programování, i když v obou mám nedostatek. Nepracuji s lidmi, kteří se starají o vývoj softwaru/programování. Žádné recenze kódu. Často nemůžu pomoci s testováním věcí (a pak nemůžu přimět uživatele, aby testovali, i když se věci tam v posledním roce zlepšily ... a pak mě křičí, když se chyba uvolní v produkci po vydání. I "Jsem jeden muž. Mohu jen udělat tolik).".

Snažím se tedy učit samostatně (raději bych se u někoho, kdo má zájem vidět mě učit), učil lépe. Procházím fázemi, ve kterých rád pracuji mimo práci, a fázemi, kde to nedokážu vydržet. Nedávno jsme skončili s obzvláště hektickým projektem, který mě přivedl k výrazným přesčasům, a tak jsem asi 6 týdnů neučinil žádné skutečné učení z práce. Ale já vklouznu zpět do toho a znovu si přečtu Skeetovu C # v hloubce a udělám si další hraní s MVC. . .

V posledním roce a půl jsem bojoval s mnoha pochybnostmi (sebevědomí nikdy nebylo jednou z mých silných stránek). Neřekl bych tomu krizi. Voják jsem na, protože jsem dělat rád dělám. Dokonce i práce v mizerné práci.

2
peacedog

Zde je kniha:

  • Učňovské vzory: návod pro začínajícího softwarového řemeslníka/Davida H. Hoovera, O'Reilly, 2010

Pokud plánujete kariéru v Agile Software Development, pak tato kniha obsahuje dobré rady. Předmluva je Ward Cunningham. Viz také web autora . 125 stránek.

2
rleir

Pokud nenajdete práci, kterou byste již chtěli dělat se svými znalostmi programování, bude práce na plný úvazek na související, ale nezajímavé části programování, otupit váš zájem o to, co jste chtěli začít.

Nebo někdo, kdo má divoký zájem o samonaváděcí robotiku pomocí moderních algoritmů plánování cesty, které pracují na vývoji webových aplikací na plný úvazek, pravděpodobně nebude chtít počítač doma vidět. Stejná osoba, která se plouvá do kariéry, kterou skutečně chtěla a nezastavila se na půl cesty, často rád pracuje více než 40 hodin týdně, jde domů domů a ráno se probudí.

Teoreticky alespoň.

2
Dean J

Mám je opakovaně. Co se stane, je to, že obecně ztrácím zájem o svou práci a snažím se naučit nové dovednosti. Poté se snažím tyto dovednosti začlenit do své práce, ale zřídka mám šanci. Důvodem je mikro-management a neustále se měnící firemní politika.

Nejhorší je, že jsem víceméně uvízl u svého současného zaměstnavatele, pokud se nepřestěhuji do jiné části země.

Jediný „senior“ vývojář s námi ve skutečnosti není vývojář, alespoň v mých očích, je opravdu produktivní, ale nikdy jsem ho neviděl psát žádný kód. A pokud vím, neměl mnohem delší pracovní zkušenosti než my ostatní.

Opravdu bych chtěl udělat něco jiného, ​​jako postavit loď nebo tak něco. Cítím však, že jsem po 8 letech opravdu překonal obrat zpět.

Ale kdybych měl šanci, udělal bych něco jiného, ​​ale nějak se cítím, že se vrátím, protože to je to, kým jsem. Znám kód.

2
Peter Lindqvist

Navrhuji, abyste vzhledem k příležitosti samozřejmě udělali na čas něco jiného. Jako IT poradenství, skladování dat, prodej nebo dokonce podpora.

Buď znovu objevíte svou vášeň pro programování a budete tak rádi, že se k tomu vrátíte (což se mi stalo), nebo budete se svou novou prací spokojeni a budete se věnovat jiné kariéře, na kterou jste předtím nemysleli.

Pokud se vrátíte k programování, mohlo by to také otevřít možnost pracovat na různých projektech v jiných průmyslových odvětvích využívajících jiné technologie než dříve, což může být také dobrá věc.

1

Mnoho lidí v podstatě řeklo něco naučit a já s tím souhlasím. Zejména navrhuji najít doménu, o kterou máte zvláštní zájem, a získat s ní dobré. Vím příliš mnoho webových designérů, kteří „opravdu chtěli být 3d umělci, ale nikdy nepřišli na to, jak to udělat“. Nejlepší způsob, jak si najmout zajímavé projekty nebo technologie, je mít zkušenosti s jinými zajímavými projekty nebo technologiemi. Nevyplněné, ale nenáročné pracoviště můžete využít k vaší výhodě, což vám poskytne prostor pro duševní dýchání, abyste se ujali nových konceptů.

Obecně platí, že nejlepší rada, kterou jsem v těchto situacích slyšel, není myslet pozitivně, ale myslet konstruktivně. Kde jsem ve své kariéře? Kde chci být? Jaké kroky musím podniknout, abych se odtud dostal?

Dokonce i praktický, holistický pohled na aktivity vaší společnosti může být osvěžující - jaké realistické alternativy byste implementovali do pracovního postupu tak, jak je? Existují nějaké malé komponenty, které lze zavést bez přílišného narušení? Předložení písemného návrhu nového modelu spolu s pracovním zákonem pro jeho část ukazuje vizi i technickou způsobilost. Rozdíl mezi dobrým programátorem a dobrým programátorem je v rozsahu řešení, která jsou potřebná k řemeslu.

(Také 4-a-bitové roky 9-5 také představují 10 000 hodin vložených do pole. Není to zvlášť relevantní, ale myslel jsem, že to bylo úhledné měřítko o tom vědět!)

1

Projekt je věc. Opravdu. Provozuji svou vlastní malou společnost a střední a velké týmy. Jedinou největší věcí, kterou vidím, je to, že každý je motivován, když projekt Dig. Nebudete pracovat levněji, pokud je projekt opravdu cool? Nebudete pracovat déle, když jste úplně v tom, co děláte, a účtovat, aby se všichni ostatní cítili stejným způsobem?

Děláme to, co si ceníme nejlépe. Jak tedy můžete vložit hodnotu zpět do své kariéry, když pracujete pro někoho, kdo platí vaše účty? Prostřednictvím inovací. Inovujte a sdílejte to s ostatními. To ji udržuje svěží.

1
Spanky

Představte si, že vaše zkušenost byla kratší než 4 roky, buďte ženou, buďte hezky, buďte úplně zamilovaní své práce jako vývojář a nikdo vás nebere vážně. Ačkoli pokud jste jednou a druhýkrát věděli, že muži, kteří vás obklopují, musíte předstírat, že jste hloupá dívka. Ano, někdy je to opravdu frustrující, ale myslím si, že v živém životě je to, jak moc milujete to, co děláte, a určitě jediný způsob, jak se opravdu učit, je naším vlastním úsilím.

1
ae2

Z mých zkušeností také v některých velkých společnostech je situace stejná. Na čem záleží, jsou hodnoty a politiky organizace a mnohem menší její velikost.

Pokuste se najít podoblast softwarového inženýrství, o které se více zajímáte, a zeptejte se, jaké společnosti mají pracovní místa v oboru a jaká je tam práce.

Senioři jsou obvykle lidé, kteří tam byli buď dlouhou dobu, nebo mají klíčové pozice (např. Vedoucí týmu, architekti, ...), avšak dlouhodobý pobyt v jedné společnosti má tendenci mít negativní ovlivňují, protože si zvyknete na situaci a jejich technologie, které používají, a méně se snažíte věci měnit a vyzkoušet nové přístupy. - Čerstvé mysli jsou velmi důležité, interní zkušenost je důležitá pro to, abychom věděli, jak v této společnosti dělat věci, společnosti by měly mít kombinaci obou.

Také se pokuste dostat své pracovní místo a poslat vás na co nejvíce externích kurzů, o kterých si myslíte, že zlepší vaše technické znalosti a pracovní metody.

1
Danny Varod

Realita je taková, že délka zkušeností ve skutečnosti nepředstavuje žádnou záruku, pokud jde o kompetence. Dobrým modelem toho, co se stane, je Dreyfusův model získávání dovedností , který ačkoli byl původně popularizován v ošetřovatelství, měl trochu oživení v softwarovém inženýrství - zde je příklad aplikovaný na Rubyho (osobně jsem o mapování trochu pochybný, ale stále zajímavé čtení).

Je smutné, že většina lidí se nikdy nepotáhne ve fázi „pokročilých začátečníků“ ve svých dovednostech (všimněte si, že model by měl být aplikován na dovednost, nikoli na osobu jako celek) - budete se zlepšovat nejen praktikováním sebezdokonalování, ale výběrem správný druh učení, které vás přivede do další fáze. To je důvod, proč někteří lidé mohou dělat spoustu kurzů, složit zkoušky a přesto být nesmyslní.

Zní to, jako byste dosáhli určité fáze ve vašem rozvoji dovedností (kompetentní nebo zdatní), a tak se dokážete lépe odlišit od ostatních. Obecně se jedná o to, že se stane plně odborníkem na jakoukoli netriviální dovednost, která trvá 10 let - ale většina lidí to nikdy neudělá.

1
FinnNk

Pár ramblingů od někoho, kdo by přemýšlel, jestli po 40 a více letech hackerství možná bude v pořádku nová kariéra ... :-)

Ne. Miluji tyto věci. Od děrných karet a papírové pásky, přes mainframy CDC, PDP- *, 4004, Alpha, Nova, Eclipse, Eagle (hardware, který přišel dlouho před softwarem), Mac Minis a všechno mezi tím. A existuje několik z nás, kteří jsou stále zvědaví na nové technologie i po mnoha, mnozí přišli a odešli. Moje první přiznání je, jak jsem se jako dítě v odvětví mini-počítačů podíval na staré mlhy doby Cobol/Mainframe a myslel jsem si, že jsou datovány a shromažďovány s vědomím, že jsme tu my mladí snipperi, kteří zachránili technologický den a dostali hotovo, nemluvě o tom, aby miliony.

Po celou tu dobu jsem nikdy vážně nepřemýšlel o tom, že bych programování skutečně opustil, protože tam zůstalo příliš mnoho zpět. Většina z toho byla práce vytvořená bezradným vedením ve spěchu, aby porodila 5měsíční dítě, čas od času. A to je ta práce, která je převážnou částí nezajímavé práce prováděné 9–5 lidmi nebo mimo pobřeží.

Zajímavé věci dělají startupy, malé společnosti a společnosti jako Apple a Google, kteří z různých důvodů vytvořili pracovní prostředí, která podporují kreativní programování. A ve velkých společnostech s nefunkčním pracovním prostředím mavericks kteří jsou ochotni strčit si krky a nechat si občas sklouznout hlavy. Byli tam, udělali to a udělají to ještě jednou, jen proto, že na konci dne není nic jako vidět tu aplikaci , systém nebo knihovna, které skutečně fungují a jsou používány, a co je nejdůležitější, protože vědí, že konečný produkt by však byl pro vaše úsilí ještě horší.

Neboj se. Pokud máte rádi tyto věci, budete to dělat 30 let od této chvíle. Pokud ne, s trochou štěstí najdete, co máte rádi, a povede to k vnitřní spokojenosti a snad mnohem více. V každém případě vynikající otázka, i když jen pro příležitost vyjádřit nějakou hluboce pociťovanou vášeň.

1
pajato0

Posledních 4-5 let jsem pracoval pro velké (podnikové) softwarové společnosti a jak je popsáno v otázce, viděl jsem, jak byla řada řešení vyhozena dohromady bez skutečného myšlení nebo designu. Měl jsem to štěstí, že jsem pracoval s některými skvělými lidmi, ale je trochu depresivní, když vidím stejné chyby, které se čas od času dělají. Častěji než ne, problémy nejsou technické, ale jsou důsledkem špatného řízení.

1
MagicAndi

vypadá to, že je čas začít obchodovat s drogami.

1
gweg

Mluvím pro sebe, je tu cyklus. Když jsem se začal profesionálně rozvíjet, byl jsem nadšený, dychtivý a měl jsem skvělý čas na zpracování každého nového problému. Po několika letech jsem skončil na cestě za společností na několik měsíců. Nebyl jsem opravdu připraven na tolik cesty, kolik jsem potřeboval, a zastavil jsem se. Další společnost, pro kterou jsem pracoval, měla problém s tím, že je příliš velká a nemá jasné zaměření. Nikdy jsem neměl jasný záměr ani obchodní důvod pro kódování, které jsem dělal. V důsledku toho to byla většinou doba plnění.

Poté jsem se stal konzultantem a zjistil, že se věci opravdu příliš neliší od práce na plný úvazek. Obvykle jsem chodil na víceleté úkoly, kde se nakonec stala jen prací. Jak již uvedli ostatní, skončíte tím, že děláte spoustu zlých věcí, abyste svou práci udělali a nechali se zabavit v technologii, kterou používáte, na rozdíl od nových a zajímavých věcí. Strávil jsem několik let, kdy jsem se o tuto technologii opravdu nezajímal. Viděl jsem už dost času, když vím, že pokud ignorujete jedno nebo dvě kola, nebudete opravdu Doom sami ... ale vyžaduje to trochu úsilí, abychom se dostali zpět na rozjetý vůz a dohonili důležité změny. Naposledy jsem měl rozhovor, Unit Testing a MVC ve skutečnosti neexistovaly v .NET prostoru a vzory byly sotva mluvené v .NET komunitě.

Zjistil jsem, že nejlepším určujícím faktorem pro to, zda „dělám to správně“, je to, že kóduji sám o víkendech a večerech. Pokud ano, pak jsem nadšený technologií, zaujetím a učením. Pokud ne, má práce mě asi příliš na cestách nebo nutí dělat to samé znovu a znovu a ztratil jsem zájem ... v tom případě je pravděpodobně čas jít dál.

Pamatujte: Váš šéf má na starosti vaši práci, máte na starosti svou kariéru. (Okázale ukraden z velkého projevu Briana Princeho o tom, že je lepší vývojář)

1
Ben Von Handorf

:-) Ujišťuji vás, že zákon o kódování trhu jde takto:

Větší společnost, která má na trhu co nejméně času, časové harmonogramy projektu se zmenšují a konkurence, aby váš produkt byl rychlejší, umožňuje téměř nulovou dobu napsat „dokonalé“ řešení, pokud vůbec něco takového existuje.

Podle mé osobní zkušenosti, asi 8+ let vývoje ve velkých korporacích, menších podnicích a pak středně velkých podnicích - projekty, které jsem byl schopen soustředit nejvíce času a leštění byl SMME (malí kluci) - Jistě náklady přijde do hry, ale ani se neprodávejte!

Jako vývojář se postavte realistickým časovým rámcům, vytvořte si herní plán, který poskytne dostatek času na nějaký lesk, díky kterému se budete cítit lépe o tom, co jste dodali. Neplánování je jako plánování selhání, což je termín vytvořený mnoha dodnes.

Hodně štěstí s vašimi budoucími plány/kariérou.

1
Microdot

Moje odpověď zní ne. Nyní jsem softwarovým vývojářem 7 let a moje zábava je stále lepší. (Momentálně dělám aplikace pro počítače v jazyce C #)

Pro část, že se necítíte senior, doporučuji dvě věci:

  • Jděte do velké společnosti se zkušenými lidmi
  • Získejte dobré vzdělání. Nevím, co to znamená, kde žijete, ale u mě mají skvělý postgraduální kurz, který je 2,5 roku na částečný úvazek. To mi otevřelo oči pro dobrý software a vývoj obecně.
1
Marcel

Legrační, právě jsem se s tím setkal .... Měl jsem dost programování a plánu odejít, ale zdá se, že jsem měl kariéru, po které toužíte. Možná nejlépe sledovat toto vlákno a doufejme, že odpovědi nám pomohou: https://stackoverflow.com/questions/2055669/how-to-find-part-time-development-it-work = Rozumím vaší frustraci

1
Jonathan

Navrhoval bych, že pokud si opravdu užijete programování, udělejte si čas na práci na vlastních projektech, které vás zajímají, mimo práci. I když vám byla vyslána práce snů, každodenní realita práce na profesionálním softwaru vám z ní často může přinést legraci, stejně jako cokoli jiného v životě.

Existuje dobrý důvod, proč jsou programátoři dobře placeni (je neuvěřitelně obtížné vytvářet a udržovat softwarové systémy, je plné kompromisů a často pracujete pod časovým omezením vysokého tlaku).

Moje rada je tvrdě pracovat během práce, učit se, co můžete od lidí kolem vás, kteří vědí více nebo mají více zkušeností (i když si myslíte, že dokážete dělat lépe než oni), a nadále si užívat věci, které vás dostaly do této nepořádky. Zaprvé: vášeň pro programování.

1
dvanaria

Jsem ve stejné situaci jako čtyřletý Java programátor ve společnosti velký). Mohu potvrdit, že i já čelím problémům, které jste zmínil.

Mým řešením je vydělat si PhD v oblasti informatiky a najít nové výzvy.

1
Manuel Selva

Momentálně pracuji na svém třetím zaměstnání. Ve svém prvním zaměstnání jsem pracoval 4 roky a poté v druhém zaměstnání 4 roky.

Myslím, že je to kombinace chtění dělat něco a kariérních příležitostí a pracovních nabídek.

Myslím tím: když pracujete v práci asi rok a tak vás kontaktují headhunters, jste jako: "ne promiň, jsem šťastný ze své současné práce". Ale pak, stejně jako po několika letech, byste mohli být v pokušení hledat lepší příležitosti, dokud nedosáhnete tohoto bodu zlomu a opravdu se nestaráte o něco jiného.

1
Gerrie Schenck

Právě jsem začal pracovat asi před 2 měsíci v malé společnosti. Programování není nudné, pokud ho opravdu milujete. A také se spoléhám na internet, abych hledal odpovědi na své vlastní otázky, ale je tu i náš manažer (který je zároveň vývojářem/programátorem), od kterého se mohu zeptat. No, nejde jen o výdělek obrovského příjmu, ale o vaši vášeň k tomu, aby se věci staly. Zkuste přidat nějaké dovednosti. Nejsem jen programování, ale také psaní. Také se zabývám návrhem databáze. Až budu mít volný čas, začnu dělat svůj osobní projekt. Nyní si užívám toho, co dělám, a budu si ho užívat i po 5 letech.

0
jean27

co děláte, když vám „osobní projekty“ již neposkytují dostatečné vzdělání nebo motivaci?

0
Jonathan

Jedinou největší strategií, kterou jsem našel pro zlepšení kódu, jsou recenze kódu. Dokonce i méně nadřízený dev může příležitostně najít a navrhnout zlepšení. Nejtěžší část je opuštění mého ega z procesu.

0
SnoopDougieDoug