Honnan tudhatom, hogy elég jó vagyok-e a kódoláshoz, és életem hátralévő részében fejlesztő munkát végezhetek?


Válasz 1:

Eleinte a kérdést irrelevánsnak és értelmetlennek tartottam, amíg rájöttem, hogy érvényes és egyenletes

elég fontos

egy.

Mindig lesz valaki lényegesen jobb, mint te. A főiskolai végzettek és a belépő szintű emberek kevésbé lesznek tapasztaltak (bár néha már meglehetősen tájékozottak és képzettek is).

A szoftverfejlesztéssel kapcsolatos viták a Quora-ról gyakran körül forognak:

  • Az interjú folyamatának hibái.
  • Különböző mutatók és KPI-k jelöltek keresése közben.
  • Interjúkészítők által igényelt mellék- és háziállat-projektek.
  • Kód áttekintés.
  • A termelékenység és a hatékonyság értékelése a munkahelyen.
  • Kód hossza, a naponta végrehajtott kötelezettségek száma, a funkciók végrehajtásához szükséges órák száma.
  • Becslések, regressziók, hibakeresés, méretezhetőség, üzleti követelmények.

Azt kellene lennie

kissé egyértelmű

, nem igaz?

Valójában ez tényleg bonyolult.

  • A különféle vállalatok különféle profilokat keresnek, miközben programozókat foglalkoztatnak.
  • Az értékelési kritériumok változnak - a táblára készített interjúktól a próbaprojekteken át a portfólió értékeléséig.
  • A termelékenységet ritkán mérik megfelelően - ritkábban jelentik be előre (munka megkezdése előtt).
  • A piac ingadozik - ami azt jelenti, hogy az üzleti elvárások egyaránt függnek a munkaterheléstől (verseny és ügyfélkör), valamint az alkalmazottak átlagos munkaminőségétől (amelyet gyakran módosítanak).

Kevesebb, mint egy évtizede vagyunk, és valószínűleg mi is

legalább 20 alkalommal felülvizsgálta a szoftvermérnökökre vonatkozó kritériumainkat

.

Még a szezonalitástól is függ - óvatosnak kell lennie a lassú hónapokban (nyáron vagy karácsonykor), és gyorsan fel kell vennie a munkát, amikor túlterheltünk. Ez tükrözi az elvárásainkat és a fizetéstartományt is.

A hatékonyság, a know-how és a tapasztalat mérése üzleti döntés. Nincs olyan kormányrendelet vagy multinacionális szervezet, amely meghatározza a szoftverfejlesztés követelményeit (és a területen belüli különféle szerepeket).

A versenyképes programozás az egyik lehetőség az előre meghatározott kritériumok alapján történő eredmények mérésére. A HackerRank, az informatikai egyetemi olimpia és ezek megpróbálnak bizonyos szabványokat megszabni.

A probléma az, hogy ezek az esetek ritkán befolyásolják az ott működő vállalatok 99% -át (üzleti ügyek megoldása - és nem rejtvények).

Ennek egyik módja a megközelítés

a kedvtelésből tartott állatokkal kapcsolatos projektek építésének vetülete

. Objektív módszer a különböző problémák megközelítéséhez és a megfelelő megoldások felépítéséhez.

A szoftverfejlesztés a lehető legtöbb probléma megoldásáról szól - a számítástechnika alapjainak (operációs rendszerek, hardver, hálózatok, adatszerkezetek, algoritmusok) megértése. Ezen tudás nagy része méretezhető és alkalmazható, amikor a legtöbb problémára megoldást talál.

Bizonyos üzleti esetek megoldása után várhatóan a szoftvermérnökök szívesen támaszkodnának tapasztalataikra és hátterükre, levonják a megoldásokat a meglévő feladatok és a CS ismereteinek kombinálásán keresztül.

Dolgozik

komplex, nagyszabású projektek

is nagyszerű módja a készségek fejlesztésének. Az egyenlet új paradigmákkal egészül ki - ez további jártasságot eredményez egy jártas szoftvermérnök számára.

A nyílt forráskódú közösséghez való csatlakozás szintén segíthet. A világszerte mérnökök ezreivel való közreműködés hozzájárul egy széles körben népszerű platformhoz vagy egy szoftvermegoldáshoz. A rajtudományt széles körben alkalmazzák.

A több millió webhelyen használt webes alkalmazásoknak kompatibiliseknek kell lenniük a különféle tárhelyszolgáltatókkal, hozzáférhetőek a fogyatékossággal élők számára, gyorsan (és biztonságosan) vállalkozási vagy kormányzati projektek számára - a lista tovább folytatódik.

De ez időigényes - és

a tanulási görbe meredek

. Az idő elosztása akkor érdemes, ha teljesen tudatában van annak, hogy a szoftverfejlesztés a fő hangsúly a következő vagy több évtizedben.

Nehéz bízni a napi munkában. Törekedhet a tökéletességre és a szervezet 10% -a közé tartozik. De más cégek többet várnak el - és ha nem jelentkeznek munkahelyre, akkor valószínűleg nem felel meg a szabványoknak.

Azt tanácsolnám, hogy erőteljesen nyomja meg és mindig keressen különféle lehetőségeket a készségei fejlesztésére. Képes lesz idővel bonyolultabb problémákat megoldani - és újabb, izgalmas kihívásokat találhat az út mentén.


Válasz 2:

Te nem. Ebben a pillanatban nem vagy elég jó. Ezt megélésért csinálom, és nem vagyok elég jó.

Tudni fogja, hogy elég jó vagy, amikor felbukkan dolgozni és valami újat megtanul. Tudod, hogy elég jó vagy, amikor

végül

találja meg a választ erre a nehéz problémára - még akkor is, ha egy munkatárs már január módon megoldotta ezt.

Tudni fogja, hogy elég jó vagy, amikor a vezető fejlesztő azt mondja, hogy jó munkát végzett - ez csak egy bejelentkezéshez szükséges, majd visszakapcsolhatja a fejét.

Ha elég jó programozó, napi gyakorlat. Ha nem gyakran ír be kódot és az osztályon kívül, akkor nem vagy elég jó. A hűvös dolog: elmehetsz írni kódot ma este, és elkezded elég jó lenni.

Minden sikeres kódoló minden nap próbál „elég jó” lenni.


Válasz 3:

Hogy őszinte legyek, nem tudnád, amíg meg nem próbálja.

Mint valaki itt mondta, a kódolás készség, és anélkül, hogy megtanulnánk és napi szinten bevezetnénk a tudásba, nagyon nehéz tudni, hogy jól tudsz-e.

Példaként adhatom neked a saját tapasztalataimat. 14 éves voltam, amikor először megtanultam kódolni (BASIC-el kezdtem) az iskolán kívüli tanfolyamon. Nyilvánvalónak tűnt, hogy jól jöttem vele, mert mindig minden gyakorlatra feljöttem, és a kurzus végén tökéletes pontszámot kaptam.

De a legfontosabb dolog ebben az „eseményben” nem a jelölés volt (bár ez megelégedést nyújtott nekem), inkább az, hogy rájöttem, hogy „nagyon szeretem” a programozást. Szerettem őket úgy, hogy „ellenőrizhessem” a számítógépet egy kicsit kódok írásával. Élveztem, hogy megpróbáltam megoldani a problémákat ezzel a kódoló eszközzel.

Olyan kinyilatkoztatás volt számomra, hogy azóta döntöttem úgy, hogy oktatási és szakmai célomként a programozást fogom folytatni.

Az egyetemen tanultam szoftverfejlesztést, és a diploma megszerzése óta a vonatkozó területen dolgoztam.

Jól tudok kódolni? Az általam elvégzett munkák eredményeiről és mások visszajelzéseire támaszkodva azt hiszem, „elég jó vagyok”! Noha sok kollégát és programozótársat ismerek, akik ragyogóbbak, mint én. Ez egyébként ugyanaz a helyzet, mint bármely más szakterület.

DE, a fontos dolog az, hogy élvezem a kódolást! Még akkor is imádom, ha napokig vagy hetekig ragadok egy kérdés megoldásában, még mindig szeretem. És azt hiszem, ez a kulcs.

Sok szerencsét választott.


Válasz 4:

El tudja indítani és befejezni egy projektet? Ez izgat téged? Élvezi az összes vele járó kihívást? Mennyire stabil a kódod? Elveszti az alvását olyan dolgok miatt, amelyeket nem tud kitalálni?

Ha tud válaszolni erre, és bízik benne a válaszában, akkor esélye van, hogy készen állsz. Megállapítja, hogy senki sem tud mindent, mindannyian folyamatosan tanulunk és új készségeket fogadunk el. Ha élvezi az állandó tanulást, akkor ezt karriernek tekintheti.

Remélem ez segít.


Válasz 5:

1999 óta dolgozom fejlesztéssel, és fogalmam sincs.

Mindig egy fiatalabb dev készít fel, hogy elmondjon nekem néhány új dolgot, amiről nem tudok semmit. Kinda arra készteti, hogy néha magam kérdezzem,

miért nem tudom?

De aztán azt gondolom: „Hé, várj egy percet, megvan ez a munkám, beleértve a kitöltött alkalmazásokat, elégedett ügyfeleket / könyveket és a témával kapcsolatos könyveket”, és úgy tűnik, hogy elég gyorsan döntenek arról, mikor érdemes valamit kihagyni (1. szög, változatlan.js), vs ígéretes (wasm, Vue) vs biztonságos a méretarányos gyártáshoz (2-es szög vagy React / Redux / R-Router), és általában azelőtt, hogy a web azt mondja. Nem vagyok tökéletes; van néhány dolog, amit gondoltam, hogy érdemes kihagyni, de jóak / valóban jók voltak (mesekönyv).

Igen, nem is fogod tudni magadban (mert mindig becsapódó szindróma lesz; soha nem tűnik el), de be tudod bizonyítani másoknak

egy olyan munkafolyamat és képesség, hogy gyorsan kiválassza és futtassa azt, ami fontos, és tudja, mikor van valami tervezési életének ideje.


Válasz 6:

Egyetértek Péterrel. A munkám során valaki idézéséhez „a programozás az az érzés, hogy állandóan váltakozom a„ átkozott zseni vagyok ”és az„ a legbutabb ember vagyok az univerzumban ”között.

Soha nem érzed magad elég jól.

Tehát, ha a kérdésére válaszolni szeretne, akkor tedd meg. Keressen mentorokat. Tegyen fel sok kérdést. Olvassa el a dokumentációt. Addig kísérletezz. Mester egy koncepció, majd elsajátítani egy másik. Soha ne hagyd abba a tanulást.


Válasz 7:

Ez az első fejlesztési munkád? Ha igen, akkor ne aggódjon ezen karrier részletei miatt. A fiatalokat felveszik arra, hogy kiképzzenek és tanuljanak a társasággal abban a reményben, hogy felmászhatnak a vállalati létrán. Rengeteg tapasztalattal rendelkezem a fiatalok irányításában. Dolgozzon, és ne gondoljon ezekre a könnyű gondolatokra. De keményen dolgozzon. Mindig észrevesz egy juniorot, aki kutatást tett és erőfeszítéseket tett egy probléma megoldására, ahelyett, hogy vakhoz fordulna. Adj neki egy évet, és szerezzen annyi tapasztalatot, amennyit csak tudsz, így egy éven belül dönthet arról, hogy a programozás valami olyan, amit napi 8 órát akarsz tenni, életed hátralévő részében.

Ha Ön nem ifjúsági mérnök, azt javaslom, hogy értékelje jelenlegi értékét a munkáltató számára, és nézd meg, kielégítő-e a teljesítményed. Kihagyják a programozási projektekkel? Munkaterhe könnyebben érzi magát, mint mások? Az ilyen problémás helyzetek megnehezíthetik a gyenge teljesítményt. Más szinten, nehéznek tartja a munkát? Tetszik problémák megoldása? Ez az, amit készen állsz arra, hogy sok időt szenteljen, mivel nehezebbé válik a munkaterhelése, miközben oldalán növekszik a vállalatában.

Sok szerencsét