Poukisa jis amelyore kodaj ou a pa pral fè ou yon pi bon devlopè

Poukisa jis amelyore kodaj ou a pa pral fè ou yon pi bon devlopè

Techlead Skyeng Kirill Rogovoy (flashhhh) bay yon prezantasyon nan konferans kote li pale sou konpetans yo ke tout bon devlopè ta dwe devlope yo nan lòd yo vin pi bon an. Mwen mande l pataje istwa sa a ak lektè Habra, mwen bay Kirill la pawòl.

Lejann sou yon bon pwomotè se ke li:

  1. Ekri kòd pwòp
  2. Konnen anpil teknoloji
  3. Kodaj travay pi vit
  4. Konnen yon pakèt algorithm ak modèl konsepsyon
  5. Ka refactor nenpòt kòd lè l sèvi avèk Clean Code
  6. Pa pèdi tan nan travay ki pa pwogramasyon
  7. 100% mèt teknoloji pi renmen ou

Men ki jan HR wè kandida ideyal, ak pòs vid yo, kòmsadwa, sanble sa a tou.

Men, eksperyans mwen di ke sa a se pa vre.

Premyèman, de eksplikasyon enpòtan:
1) eksperyans mwen se ekip pwodwi, i.e. konpayi yo ak pwòp pwodwi yo, pa externalisation; nan externalisation tout bagay ka trè diferan;
2) si ou se yon jinyò, Lè sa a, se pa tout konsèy yo pral aplikab, epi si mwen te ou, mwen ta konsantre sou pwogramasyon pou kounye a.

Bon pwomotè: reyalite

1: Pi bon pase kòd mwayèn

Yon bon devlopè konnen ki jan yo kreye achitekti fre, ekri kòd fre, epi li pa fè twòp pinèz; An jeneral, li fè pi bon pase mwayèn, men li pa nan tèt 1% nan espesyalis. Pifò nan pi koul devlopè mwen konnen yo pa sa ki gwo kodè: yo se gwo nan sa yo fè, men yo pa ka fè anyen super-ekstròdinè.

2: Rezoud pwoblèm olye ke kreye yo

Ann imajine ke nou bezwen entegre yon sèvis ekstèn nan pwojè a. Nou resevwa espesifikasyon teknik yo, gade nan dokiman an, wè ke yon bagay se demode la, konprann ke nou bezwen pase paramèt adisyonèl, fè kèk ajisteman, eseye aplike li tout yon jan kanmenm epi fè kèk metòd kwochi travay kòrèkteman, finalman, apre yon koup. nan jou nou konprann ke nou pa ka kontinye konsa. Konpòtman estanda yon devlopè nan sitiyasyon sa a se retounen nan biznis epi di: "Mwen te fè sa a ak sa a, yon sèl sa a pa travay nan fason sa a, epi li pa travay ditou, kidonk ale kalkile li tèt ou. ” Yon biznis gen yon pwoblèm: ou bezwen fouye nan sa ki te pase, kominike ak yon moun, epi eseye yon jan kanmenm rezoud li. Telefòn ki kase a kòmanse: "Ou di l ', mwen pral voye tèks li, gade sa yo reponn."

Yon bon devlopè, fè fas ak yon sitiyasyon konsa, pral jwenn kontak tèt li, kontakte l 'nan telefòn nan, diskite sou pwoblèm nan, epi si pa gen anyen ki mache soti, li pral rasanble moun yo dwa, eksplike tout bagay epi ofri altènativ (gen plis chans, gen yon lòt. sèvis ekstèn ak pi bon sipò). Yon pwomotè konsa wè yon pwoblèm biznis ak rezoud li. Travay li se fèmen lè li rezoud yon pwoblèm biznis, epi li pa lè li kouri nan yon bagay.

3: Eseye depanse efò minim pou jwenn rezilta maksimòm, menm si sa vle di ekri beki

Devlopman lojisyèl nan konpayi pwodwi se prèske toujou atik nan pi gwo depans: devlopè yo chè. Ak yon pwomotè bon konprann ke yon biznis vle jwenn kantite lajan maksimòm nan depanse minimòm nan. Pou ede l, yon pwomotè bon vle depanse kantite minimòm tan chè l 'yo jwenn pwofi a maksimòm pou patwon-an.

Genyen de ekstrèm isit la. Youn se ke ou ka jeneralman rezoud tout pwoblèm ak yon beki, san yo pa deranje ak achitekti, san yo pa refactoring, elatriye. Nou tout konnen ki jan sa a anjeneral fini: pa gen anyen ki travay, nou reekri pwojè a nan grafouyen. Yon lòt se lè yon moun ap eseye vini ak yon achitekti ideyal pou chak bouton, depanse yon èdtan sou travay la ak kat sou refactoring. Rezilta a nan travay sa yo sanble gwo, men pwoblèm nan se ke sou bò biznis li pran dis èdtan ranpli yon bouton, nan tou de premye ak dezyèm ka yo, tou senpleman pou rezon diferan.

Yon bon devlopè konnen ki jan balans ant ekstrèm sa yo. Li konprann kontèks la epi li pran desizyon an pi bon: nan pwoblèm sa a mwen pral koupe yon beki, paske sa a se kòd ki manyen yon fwa chak sis mwa. Men, nan yon sèl sa a, mwen pral deranje epi fè tout bagay kòm kòrèkteman ke posib, paske yon santèn karakteristik nouvo ki poko devlope pral depann de sa mwen reyisi.

4. Gen pwòp sistèm jesyon biznis li epi li kapab travay sou pwojè nenpòt ki konpleksite ladan l.

Travay sou prensip Lè w fè bagay sa yo – lè ou ekri tout travay ou yo nan kèk kalite sistèm tèks, pa bliye okenn akò, pouse tout moun, parèt tout kote alè, konnen sa ki enpòtan ak sa ki pa enpòtan nan moman sa a, ou pa janm pèdi travay. Karakteristik jeneral nan moun sa yo se ke lè ou dakò sou yon bagay ak yo, ou pa janm enkyete ke yo pral bliye; epi ou konnen tou ke yo ekri tout bagay epi yo pa pral Lè sa a, poze mil kesyon, repons yo te deja diskite.

5. Kesyone epi klarifye nenpòt kondisyon ak entwodiksyon

Isit la tou gen de ekstrèm. Sou yon bò, ou ka ensèten sou tout enfòmasyon entwodiksyon. Moun anvan ou te vini ak kèk solisyon, men ou panse ke ou ka fè pi byen epi kòmanse re-diskite sou tout sa ki te vini anvan ou: konsepsyon, solisyon biznis, achitekti, elatriye. Sa a gaspiye anpil tan pou tou de pwomotè a ak moun ki bò kote l ', epi li gen yon enpak negatif sou konfyans nan konpayi an: lòt moun pa vle pran desizyon paske yo konnen ke nèg sa a pral tounen ak kraze tout bagay. Lòt ekstrèm la se lè yon pwomotè pèsevwa nenpòt entwodiksyon, espesifikasyon teknik ak volonte biznis kòm yon bagay fè mete pòtre nan wòch, epi sèlman lè yo fè fas ak yon pwoblèm ki pa ka rezoud li kòmanse reflechi sou si li ap fè sa li ap fè nan tout. Yon bon devlopè tou jwenn yon mitan tè isit la: li eseye konprann desizyon yo pran anvan oswa san li, anvan travay la ale nan devlopman. Kisa biznis vle? Èske nou rezoud pwoblèm li yo? Designer pwodwi a te vini ak yon solisyon, men èske mwen konprann poukisa solisyon an ap travay? Poukisa dirijan ekip la te vini ak achitekti patikilye sa a? Si yon bagay pa klè, Lè sa a, ou bezwen ale mande. Nan pwosesis la nan klarifikasyon sa a, yon pwomotè bon ka wè yon solisyon altènatif ki tou senpleman pa te rive nenpòt moun anvan.

6. Amelyore pwosesis ak moun ki bò kote ou

Gen yon anpil nan pwosesis k ap pase bò kote nou - reyinyon chak jou, rankont, scrums, revize teknoloji, revize kòd, elatriye. Yon bon devlopè pral leve kanpe epi di: gade, nou reyini ansanm epi diskite sou menm bagay la chak semèn, mwen pa konprann poukisa, nou ta ka byen pase èdtan sa a sou Contra. Oswa: pou twazyèm travay nan yon ranje mwen pa ka antre nan kòd la, pa gen anyen ki klè, achitekti a plen twou; Petèt kòd revizyon nou an se bwete epi nou bezwen refactorize, se pou yo refactor rankont la chak de semèn. Oswa pandan yon revizyon kòd, yon moun wè ke youn nan kòlèg li yo pa sèvi ak yon zouti ase efektivman, ki vle di li bezwen vini pita epi bay kèk konsèy. Yon bon devlopè gen ensten sa a; li fè bagay sa yo otomatikman.

7. Ekselan nan jere lòt moun, menm si se pa yon manadjè

Konpetans sa a byen konekte ak tèm "rezoud olye ke kreye pwoblèm." Souvan, nan tèks la nan pòs vid la pou ke nou aplike, pa gen anyen ki ekri sou jesyon, men Lè sa a, lè yo fè fas ak yon pwoblèm ki depase kontwòl ou, ou toujou gen jere lòt moun nan yon fason oswa yon lòt, reyalize yon bagay nan men yo, si ou bliye - pouse, asire w ke yo te konprann tout bagay. Yon bon devlopè konnen ki moun ki enterese nan sa, ka rele yon reyinyon ak moun sa yo, ekri akò, voye yo nan slack, raple yo nan bon jou a, asire w ke tout bagay pare, menm si li pa pèsonèlman dirèkteman responsab pou travay sa a, men rezilta li depann de aplikasyon li.

8. pa wè konesans li kòm dogm, se toujou ap ouvè a kritik

Tout moun ka sonje yon kòlèg ki soti nan yon travay anvan ki pa kapab konpwomi sou teknoloji li yo ak rèl ke tout moun pral boule nan lanfè pou kèk mitasyon mal. Yon pwomotè bon, si li travay pou 5, 10, 20 ane nan endistri a, konprann ke mwatye nan konesans li se pouri, ak nan mwatye ki rete a li pa konnen dis fwa plis pase li konnen. Epi chak fwa yon moun pa dakò ak li epi li ofri yon altènatif, se pa yon atak sou ego li, men se yon opòtinite pou aprann yon bagay. Sa a pèmèt li grandi pi vit pase moun ki bò kote l '.

Ann konpare lide mwen an nan yon pwomotè ideyal ak youn nan jeneralman aksepte:

Poukisa jis amelyore kodaj ou a pa pral fè ou yon pi bon devlopè

Foto sa a montre konbyen nan pwen yo dekri pi wo a ki gen rapò ak kòd la, ak konbyen yo pa. Devlopman nan yon konpayi pwodwi se sèlman yon twazyèm pwogramasyon, 2/3 ki rete yo gen ti kras fè ak kòd. Ak byenke nou ekri yon anpil nan kòd, efikasite nou anpil depann sou sa yo de tyè "petilan".

Espesyalizasyon, jeneralis ak règ 80-20 la

Lè yon moun aprann rezoud kèk pwoblèm etwat, etidye long ak difisil, men Lè sa a, rezoud yo fasil epi tou senpleman, men li pa gen ekspètiz nan domèn ki gen rapò, sa a se espesyalizasyon. Jeneralis se lè mwatye nan tan fòmasyon an envesti nan domèn pwòp konpetans yon moun, ak yon lòt mwatye nan domèn ki gen rapò. An konsekans, nan premye ka a, mwen fè yon sèl bagay parfe ak rès la mal, ak nan dezyèm lan, mwen fè tout bagay plis oswa mwens byen.

Règ 80-20 la di nou ke 80% nan rezilta a soti nan 20% nan efò a. 80% nan revni soti nan 20% nan kliyan, 80% nan pwofi soti nan 20% nan anplwaye yo, ak sou sa. Nan ansèyman, sa vle di ke 80% konesans nou genyen nan premye 20% tan pase.

Gen yon lide: kodè yo ta dwe sèlman kòd, konsèpteur yo ta dwe sèlman konsepsyon, analis yo ta dwe analize, ak administratè yo ta dwe sèlman jere. Dapre mwen, lide sa a se toksik epi li pa travay trè byen. Sa a se pa sou tout moun ki dwe yon sòlda inivèsèl, sa a se sou ekonomize resous yo. Si yon pwomotè konprann omwen yon ti kras sou jesyon, konsepsyon ak analytics, li pral kapab rezoud anpil pwoblèm san yo pa enplike lòt moun. Si ou bezwen fè kèk kalite karakteristik ak Lè sa a, tcheke ki jan itilizatè yo travay ak li nan yon kontèks sèten, ki pral mande pou de demann SQL, Lè sa a, li nan gwo pou kapab pa distrè analis la ak sa a. Si ou bezwen entegre yon bouton pa analoji ak sa ki deja egziste, epi ou konprann prensip jeneral yo, ou ka fè li san yo pa enplike yon designer, ak konpayi an ap remèsye ou pou li.

Total: ou ka pase 100% nan tan ou etidye yon konpetans nan limit la, oswa ou ka pase menm tan an sou senk domèn, nivo jiska 80% nan chak. Apre matematik nayif sa a, nou ka jwenn kat fwa plis konpetans nan menm kantite tan an. Sa a se yon egzajerasyon, men li ilistre lide a.

Konpetans ki gen rapò ka fòme pa 80%, men pa 30-50%. Apre ou fin pase 10-20 èdtan, ou pral notables amelyore nan domèn ki gen rapò, jwenn anpil konpreyansyon sou pwosesis ki fèt nan yo epi vin pi otonòm.

Nan ekosistèm IT jodi a, li pi bon pou w gen plis konpetans ke posib epi ou pa dwe yon ekspè nan okenn nan yo. Paske, premyèman, tout ladrès sa yo byen vit fennen, espesyalman lè li rive pwogramasyon, ak dezyèmman, paske 99% nan tan an nou itilize pa sèlman debaz, men sètènman pa ladrès ki pi sofistike, ak sa a se ase menm nan kodaj, menm nan konpayi fre.

E finalman, fòmasyon se yon envestisman, ak divèsifikasyon enpòtan nan envestisman.

Kisa pou anseye

Se konsa, ki sa yo anseye ak ki jan? Yon pwomotè tipik nan yon konpayi fò regilyèman itilize:

  • kominikasyon
  • oganizasyon pwòp tèt ou
  • planifikasyon
  • konsepsyon (anjeneral kòd)
  • epi pafwa jesyon, lidèchip, analiz done, ekri, rekritman, mentoring ak anpil lòt ladrès

Ak pratikman okenn nan ladrès sa yo kwaze nan okenn fason ak kòd nan tèt li. Yo bezwen anseye ak amelyore separeman, epi si sa pa fèt, yo pral rete nan yon nivo trè ba, ki pa pèmèt yo dwe itilize efektivman.

Nan ki domèn yo merite devlope?

  1. Ladrès mou yo se tout bagay ki pa konsène peze bouton nan editè a. Men ki jan nou ekri mesaj, ki jan nou konpòte nou nan reyinyon yo, ki jan nou kominike ak kòlèg yo. Tout bagay sa yo sanble yo dwe bagay evidan, men trè souvan yo souzèstime.

  2. Oto-oganizasyon sistèm. Pou mwen pèsonèlman, sa a te vin tounen yon sijè super-enpòtan pandan ane ki sot pase a. Pami tout travayè IT fre mwen konnen yo, sa a se youn nan konpetans ki pi devlope: yo super òganize, yo toujou fè sa yo di, yo konnen egzakteman sa yo pral fè demen, nan yon semèn, nan yon mwa. Li nesesè pou konstwi yon sistèm ozalantou tèt ou kote tout zafè yo ak tout kesyon yo anrejistre; sa a anpil fasilite travay li menm ak anpil ede kominike avèk lòt moun. Mwen santi ke nan ane ki sot pase a, devlopman nan direksyon sa a te amelyore m 'pi plis pase amelyore konpetans teknik mwen; mwen te kòmanse fè siyifikativman plis travay pou chak inite tan.

  3. Pwoaktif, espri ouvè ak planifikasyon. Sijè yo trè jeneral ak vital, pa inik nan IT, epi tout moun ta dwe devlope yo. Pwoaktivite vle di pa tann yon siyal pou pran aksyon. Ou se sous evènman yo, pa reyaksyon yo. Ouvè-espri se kapasite nan trete nenpòt nouvo enfòmasyon objektivman, evalye sitiyasyon an nan izolasyon ak pwòp vi mond lan ak abitid ansyen yo. Planifikasyon se yon vizyon klè sou fason travay jodi a rezoud pwoblèm nan pou semèn, mwa, ane a. Si ou wè tan kap vini an pi lwen pase yon travay espesifik, li pi fasil fè sa ou bezwen, epi ou pa bezwen pè apre tan reyalize ke li te gaspiye. Konpetans sa a se espesyalman enpòtan pou yon karyè: ou ka reyisi reyalize rezilta pou ane, men nan move kote, epi evantyèlman pèdi tout bagaj yo akimile lè li vin klè ke ou te deplase nan move direksyon an.

  4. Tout domèn ki gen rapò ak nivo debaz la. Tout moun gen pwòp domèn espesifik yo, men li enpòtan pou w konprann ke lè w pase 10-20 èdtan nan nivo nivo kèk ladrès "etranje", ou ka dekouvri anpil nouvo opòtinite ak pwen kontak nan travay ou chak jou, epi èdtan sa yo ka dwe ase jouk nan fen karyè.

Kisa pou li

Gen yon gwo anpil liv sou oto-òganizasyon; se yon endistri antye kote kèk mesye dwòl ekri koleksyon konsèy ak kolekte fòmasyon. An menm tan, li pa klè sa yo menm yo te reyalize nan lavi. Se poutèt sa, li enpòtan yo mete filtè sou otè yo, gade ki moun yo ye ak sa yo genyen dèyè yo. Devlopman mwen ak pèspektiv mwen te pi enfliyanse pa kat liv, yo tout nan yon fason oswa yon lòt ki gen rapò ak amelyore konpetans yo dekri pi wo a.

Poukisa jis amelyore kodaj ou a pa pral fè ou yon pi bon devlopè1. Dale Carnegie "Kijan pou genyen zanmi ak enfliyanse moun". Yon liv kil sou konpetans mou, si ou pa konnen ki kote yo kòmanse, chwazi li se yon opsyon genyen-genyen. Li bati sou egzanp, li fasil pou li, li pa mande anpil efò pou w konprann sa w li, epi yo ka aplike ladrès yo akeri imedyatman. An jeneral, liv la kouvri sijè a nan kominike ak moun.

Poukisa jis amelyore kodaj ou a pa pral fè ou yon pi bon devlopè2. Stephen R. Covey "7 abitid moun ki trè efikas". Yon melanj de ladrès diferan, soti nan proaktivite nan ladrès mou, ak yon anfaz sou reyalize sinèrji lè ou bezwen vire yon ti ekip nan yon gwo fòs. Li fasil tou pou li.

Poukisa jis amelyore kodaj ou a pa pral fè ou yon pi bon devlopè3. Ray Dalio "Principes". Revele tèm ouvè-espri ak pwoaktivite, ki baze sou istwa a nan konpayi otè a bati, ki li jere pou 40 ane. Anpil egzanp nan lavi yo montre ki jan yon moun gen prejije ak depandan, e ki jan pou l debarase m de li.

Poukisa jis amelyore kodaj ou a pa pral fè ou yon pi bon devlopè4. David Allen, "Fè bagay yo fè". Lekti obligatwa pou aprann oganizasyon pwòp tèt ou. Li pa tèlman fasil pou li, men li bay yon seri zouti konplè pou òganize lavi ak zafè, egzamine tout aspè yo an detay, epi li ede ou deside kisa ou bezwen egzakteman. Avèk èd li, mwen bati pwòp sistèm mwen an ki pèmèt mwen toujou fè bagay ki pi enpòtan yo san bliye rès la.

Ou dwe konprann ke jis lekti pa ase. Ou ka vale omwen yon liv yon semèn, men efè a pral dire pou plizyè jou, ak Lè sa a, tout bagay ap retounen nan plas li. Liv yo ta dwe itilize kòm yon sous konsèy ki imedyatman teste nan pratik. Si ou pa fè sa, Lè sa a, tout sa yo pral bay se kèk elaji nan orizon ou yo.

Sous: www.habr.com

Add nouvo kòmantè