Pam na fydd uwchraddio'ch codio yn eich gwneud chi'n ddatblygwr gwell

Pam na fydd uwchraddio'ch codio yn eich gwneud chi'n ddatblygwr gwell

Techlead Skyeng Kirill Rogovoy (fflachhhh) yn rhoi cyflwyniad mewn cynadleddau lle mae'n sôn am y sgiliau y dylai pob datblygwr da eu datblygu er mwyn dod y gorau. Gofynnais iddo rannu'r stori hon gyda darllenwyr Habra, rwy'n rhoi'r llawr i Kirill.

Y myth am ddatblygwr da yw ei fod yn:

  1. Yn ysgrifennu cod glân
  2. Yn gwybod llawer o dechnolegau
  3. Tasgau codio yn gyflymach
  4. Yn gwybod criw o algorithmau a phatrymau dylunio
  5. Yn gallu ailffactorio unrhyw god gan ddefnyddio Clean Code
  6. Nid yw'n gwastraffu amser ar dasgau nad ydynt yn ymwneud â rhaglennu
  7. Meistr 100% ar eich hoff dechnoleg

Dyma sut mae AD yn gweld ymgeiswyr delfrydol, a swyddi gwag, yn unol â hynny, yn edrych fel hyn hefyd.

Ond dywed fy mhrofiad i nad yw hyn yn wir iawn.

Yn gyntaf, dau ymwadiad pwysig:
1) fy mhrofiad yw timau cynnyrch, h.y. cwmnïau sydd â'u cynnyrch eu hunain, nid ar gontract allanol; wrth roi gwaith ar gontract allanol gall popeth fod yn wahanol iawn;
2) os ydych yn iau, yna ni fydd pob cyngor yn berthnasol, a phe bawn i'n chi, byddwn yn canolbwyntio ar raglennu am y tro.

Datblygwr da: realiti

1: Cod gwell na'r cyfartaledd

Mae datblygwr da yn gwybod sut i greu pensaernïaeth oer, ysgrifennu cod oer, a pheidio â gwneud gormod o fygiau; Yn gyffredinol, mae'n gwneud yn well na'r cyfartaledd, ond nid yw yn yr 1% uchaf o arbenigwyr. Nid yw'r rhan fwyaf o'r datblygwyr cŵl yr wyf yn eu hadnabod yn godwyr gwych: maen nhw'n wych am yr hyn maen nhw'n ei wneud, ond ni allant wneud unrhyw beth hynod anghyffredin.

2: Datrys problemau yn hytrach na'u creu

Gadewch i ni ddychmygu bod angen i ni integreiddio gwasanaeth allanol i'r prosiect. Rydyn ni'n derbyn y manylebau technegol, edrychwch ar y ddogfennaeth, gweld bod rhywbeth wedi dyddio yno, deall bod angen i ni basio paramedrau ychwanegol, gwneud rhai addasiadau, ceisio gweithredu'r cyfan rywsut a gwneud i ryw ddull cam weithio'n gywir, yn olaf, ar ôl cwpl. o ddyddiau rydym yn deall na allwn barhau fel hyn. Ymddygiad safonol datblygwr yn y sefyllfa hon yw dychwelyd i fusnes a dweud: “Fe wnes i hyn a'r llall, nid yw'r un hwn yn gweithio felly, ac nid yw'r un hwnnw'n gweithio o gwbl, felly ewch ati i ddarganfod y peth eich hun. ” Mae gan fusnes broblem: mae angen i chi ymchwilio i'r hyn a ddigwyddodd, cyfathrebu â rhywun, a cheisio ei datrys rywsut. Mae’r ffôn sydd wedi torri yn dechrau: “rydych chi’n dweud wrtho, fe wna i anfon neges destun ati, edrych beth wnaethon nhw ei ateb.”

Bydd datblygwr da, sy'n wynebu sefyllfa o'r fath, yn dod o hyd i gysylltiadau ei hun, yn cysylltu ag ef ar y ffôn, yn trafod y broblem, ac os nad oes unrhyw beth yn gweithio allan, bydd yn casglu'r bobl iawn, yn esbonio popeth ac yn cynnig dewisiadau eraill (yn fwyaf tebygol, mae yna un arall). gwasanaeth allanol gyda gwell cefnogaeth). Mae datblygwr o'r fath yn gweld problem fusnes ac yn ei datrys. Mae ei dasg ar gau pan fydd yn datrys problem fusnes, ac nid pan fydd yn rhedeg i mewn i rywbeth.

3: Yn ceisio gwario ychydig iawn o ymdrech i gael y canlyniadau mwyaf posibl, hyd yn oed os yw'n golygu ysgrifennu baglau

Datblygu meddalwedd mewn cwmnïau cynnyrch bron bob amser yw'r eitem gost fwyaf: mae datblygwyr yn ddrud. Ac mae datblygwr da yn deall bod busnes eisiau cael yr uchafswm o arian trwy wario'r lleiafswm. Er mwyn ei helpu, mae datblygwr da eisiau treulio'r lleiafswm o'i amser drud i gael yr elw mwyaf posibl i'r cyflogwr.

Mae dau begwn yma. Un yw y gallwch chi yn gyffredinol ddatrys pob problem gyda bagl, heb drafferthu â phensaernïaeth, heb ail-ffactorio, ac ati. Rydyn ni i gyd yn gwybod sut mae hyn fel arfer yn dod i ben: does dim byd yn gweithio, rydyn ni'n ailysgrifennu'r prosiect o'r dechrau. Un arall yw pan fydd person yn ceisio dod o hyd i bensaernïaeth ddelfrydol ar gyfer pob botwm, gan dreulio awr ar y dasg a phedwar ar ailffactorio. Mae canlyniad gwaith o'r fath yn edrych yn wych, ond y broblem yw ei bod yn cymryd deg awr ar yr ochr fusnes i gwblhau botwm, yn yr achos cyntaf a'r ail achos, yn syml am wahanol resymau.

Mae datblygwr da yn gwybod sut i gydbwyso rhwng yr eithafion hyn. Mae'n deall y cyd-destun ac yn gwneud y penderfyniad gorau posibl: yn y broblem hon byddaf yn torri baglau, oherwydd mae hwn yn god sy'n cael ei gyffwrdd unwaith bob chwe mis. Ond yn yr un hon, byddaf yn trafferthu ac yn gwneud popeth mor gywir â phosibl, oherwydd bydd cant o nodweddion newydd sydd eto i'w datblygu yn dibynnu ar yr hyn y byddaf yn llwyddo.

4. Yn meddu ar ei system rheoli busnes ei hun ac yn gallu gweithio ar brosiectau o unrhyw gymhlethdod ynddi.

Gweithio ar egwyddorion Cael Gwneud Pethau – pan fyddwch chi'n ysgrifennu'ch holl dasgau mewn rhyw fath o system destun, peidiwch ag anghofio unrhyw gytundebau, gwthio pawb, ymddangos ym mhobman ar amser, gwybod beth sy'n bwysig a beth sydd ddim yn bwysig ar hyn o bryd, ni fyddwch byth yn colli tasgau. Nodwedd gyffredinol pobl o'r fath yw pan fyddwch chi'n cytuno ar rywbeth â nhw, na fyddwch byth yn poeni y byddant yn anghofio; a gwyddoch hefyd eu bod yn ysgrifennu popeth i lawr ac na fyddant wedyn yn gofyn mil o gwestiynau, y mae'r atebion iddynt eisoes wedi'u trafod.

5. Yn cwestiynu ac yn egluro unrhyw amodau a chyflwyniadau

Yma hefyd mae dau begwn. Ar y naill law, gallwch fod yn amheus am yr holl wybodaeth ragarweiniol. Pobl o'ch blaen chi wedi meddwl am rai atebion, ond rydych chi'n meddwl y gallwch chi wneud yn well a dechrau ail-drafod popeth a ddaeth o'ch blaen: dylunio, datrysiadau busnes, pensaernïaeth, ac ati. Mae hyn yn gwastraffu llawer o amser i'r datblygwr a'r rhai o'i gwmpas, ac mae'n cael effaith negyddol ar ymddiriedaeth o fewn y cwmni: nid yw pobl eraill eisiau gwneud penderfyniadau oherwydd eu bod yn gwybod y bydd y dyn hwnnw'n dod yn ôl ac yn torri popeth. Yr eithaf arall yw pan fydd datblygwr yn gweld unrhyw fanylebau rhagarweiniol, technegol a dymuniadau busnes fel rhywbeth wedi'i gerfio mewn carreg, a dim ond wrth wynebu problem na ellir ei datrys y mae'n dechrau meddwl a yw'n gwneud yr hyn y mae'n ei wneud o gwbl. Mae datblygwr da hefyd yn dod o hyd i dir canol yma: mae'n ceisio deall y penderfyniadau a wneir o'i flaen neu hebddo, cyn i'r dasg ddechrau datblygu. Beth mae busnes ei eisiau? Ydyn ni'n datrys ei broblemau? Lluniodd y dylunydd cynnyrch ateb, ond ydw i'n deall pam y bydd yr ateb yn gweithio? Pam fod arweinydd y tîm wedi meddwl am y bensaernïaeth arbennig hon? Os nad yw rhywbeth yn glir, yna mae angen ichi fynd i ofyn. Yn y broses o egluro hyn, efallai y bydd datblygwr da yn gweld ateb arall nad oedd wedi digwydd i unrhyw un o'r blaen.

6. Gwella prosesau a phobl o'ch cwmpas

Mae yna lawer o brosesau yn digwydd o'n cwmpas - cyfarfodydd dyddiol, cyfarfodydd, sgrymiau, adolygiadau technoleg, adolygiadau cod, ac ati. Bydd datblygwr da yn sefyll i fyny ac yn dweud: edrychwch, rydyn ni'n dod at ein gilydd ac yn trafod yr un peth bob wythnos, nid wyf yn deall pam, efallai y byddwn hefyd yn treulio'r awr hon ar Contra. Neu: ar gyfer y drydedd dasg yn olynol ni allaf fynd i mewn i'r cod, nid oes dim yn glir, mae'r bensaernïaeth yn llawn tyllau; Efallai bod ein cod adolygu yn gloff a bod angen i ni ailffactorio, gadewch i ni ail-ffactorio'r cyfarfod bob pythefnos. Neu yn ystod adolygiad cod, mae person yn gweld nad yw un o'i gydweithwyr yn defnyddio offeryn penodol yn ddigon effeithiol, sy'n golygu bod angen iddo ddod i fyny yn ddiweddarach a rhoi rhywfaint o gyngor. Mae gan ddatblygwr da y reddf hon; mae'n gwneud pethau o'r fath yn awtomatig.

7. Ardderchog am reoli eraill, hyd yn oed os nad rheolwr

Mae’r sgil hwn yn cyd-fynd yn dda â’r thema “datrys yn hytrach na chreu problemau.” Yn aml, yn nhestun y swydd wag yr ydym yn gwneud cais amdani, nid oes dim wedi’i ysgrifennu am reoli, ond wedyn, wrth wynebu problem y tu hwnt i’ch rheolaeth, mae’n rhaid ichi reoli eraill mewn rhyw ffordd neu’i gilydd o hyd, cyflawni rhywbeth oddi wrthynt, os ydych anghofio - gwthiwch, gwnewch yn siŵr eu bod yn deall popeth. Mae datblygwr da yn gwybod pwy sydd â diddordeb mewn beth, yn gallu galw cyfarfod gyda'r bobl hyn, ysgrifennu cytundebau, eu hanfon i slac, eu hatgoffa ar y diwrnod cywir, gwnewch yn siŵr bod popeth yn barod, hyd yn oed os nad yw'n bersonol gyfrifol yn uniongyrchol amdano. y dasg hon, ond mae ei ganlyniad yn dibynnu ar ei weithrediad.

8. Nid yw'n gweld ei wybodaeth fel dogma, yn gyson agored i feirniadaeth

Gall pawb gofio cydweithiwr o swydd flaenorol nad yw'n gallu cyfaddawdu ar ei dechnoleg ac yn sgrechian y bydd pawb yn llosgi yn uffern am rai treigladau anghywir. Mae datblygwr da, os yw'n gweithio am 5, 10, 20 mlynedd yn y diwydiant, yn deall bod hanner ei wybodaeth wedi pydru, ac yn yr hanner sy'n weddill nid yw'n gwybod ddeg gwaith yn fwy nag y mae'n ei wybod. A phob tro mae rhywun yn anghytuno ag ef ac yn cynnig dewis arall, nid ymosodiad ar ei ego ydyw, ond cyfle i ddysgu rhywbeth. Mae hyn yn caniatáu iddo dyfu'n llawer cyflymach na'r rhai o'i gwmpas.

Gadewch i ni gymharu fy syniad o ddatblygwr delfrydol â'r un a dderbynnir yn gyffredinol:

Pam na fydd uwchraddio'ch codio yn eich gwneud chi'n ddatblygwr gwell

Mae'r llun hwn yn dangos faint o'r pwyntiau a ddisgrifir uchod sy'n gysylltiedig â'r cod, a sawl un nad ydynt. Dim ond traean o raglennu yw datblygiad mewn cwmni cynnyrch, nid oes gan y 2/3 sy'n weddill fawr ddim i'w wneud â chod. Ac er ein bod yn ysgrifennu llawer o god, mae ein heffeithiolrwydd yn dibynnu'n fawr ar y ddwy ran o dair “amherthnasol” hyn.

Arbenigedd, cyffredinolrwydd a'r rheol 80-20

Pan fydd person yn dysgu datrys rhai problemau cul, yn astudio'n hir ac yn galed, ond yna'n eu datrys yn hawdd ac yn syml, ond nid oes ganddo arbenigedd mewn meysydd cysylltiedig, mae hyn yn arbenigedd. Cyffredinoliaeth yw pan fuddsoddir hanner yr amser hyfforddi ym maes eich cymhwysedd eich hun, a hanner arall mewn meysydd cysylltiedig. Yn unol â hynny, yn yr achos cyntaf, rwy'n gwneud un peth yn berffaith a'r gweddill yn wael, ac yn yr ail, rwy'n gwneud popeth fwy neu lai yn dda.

Mae'r rheol 80-20 yn dweud wrthym fod 80% o'r canlyniad yn dod o 20% o'r ymdrech. Daw 80% o refeniw o 20% o gwsmeriaid, daw 80% o elw o 20% o weithwyr, ac ati. Wrth addysgu, mae hyn yn golygu bod 80% o'r wybodaeth a gawn yn yr 20% cyntaf o amser a dreulir.

Mae yna syniad: dylai codwyr godio yn unig, dylai dylunwyr ddylunio yn unig, dylai dadansoddwyr ddadansoddi, a dim ond rheolwyr ddylai reoli. Yn fy marn i, mae'r syniad hwn yn wenwynig ac nid yw'n gweithio'n dda iawn. Nid yw hyn yn ymwneud â bod yn rhaid i bawb fod yn filwr cyffredinol, mae hyn yn ymwneud ag arbed adnoddau. Os yw datblygwr yn deall o leiaf ychydig am reoli, dylunio a dadansoddeg, bydd yn gallu datrys llawer o broblemau heb gynnwys pobl eraill. Os oes angen i chi wneud rhyw fath o nodwedd ac yna gwirio sut mae defnyddwyr yn gweithio gydag ef mewn cyd-destun penodol, a fydd yn gofyn am ddau ymholiad SQL, yna mae'n wych gallu peidio â thynnu sylw'r dadansoddwr gyda hyn. Os oes angen i chi fewnosod botwm trwy gyfatebiaeth â'r rhai presennol, a'ch bod chi'n deall yr egwyddorion cyffredinol, gallwch chi ei wneud heb gynnwys dylunydd, a bydd y cwmni'n diolch i chi amdano.

Cyfanswm: gallwch dreulio 100% o'ch amser yn astudio sgil i'r eithaf, neu gallwch dreulio'r un amser ar bum maes, gan lefelu hyd at 80% ym mhob un. Yn dilyn y mathemateg naïf hwn, gallwn ennill pedair gwaith cymaint o sgiliau yn yr un faint o amser. Mae hyn yn or-ddweud, ond mae'n darlunio'r syniad.

Gellir hyfforddi sgiliau cysylltiedig nid gan 80%, ond gan 30-50%. Ar ôl treulio 10-20 awr, byddwch yn amlwg yn gwella mewn meysydd cysylltiedig, yn ennill llawer o ddealltwriaeth o'r prosesau sy'n digwydd ynddynt ac yn dod yn llawer mwy ymreolaethol.

Yn ecosystem TG heddiw, mae'n well cael cymaint o sgiliau â phosibl a pheidio â bod yn arbenigwr yn unrhyw un ohonynt. Oherwydd, yn gyntaf, mae'r holl sgiliau hyn yn pylu'n gyflym, yn enwedig o ran rhaglennu, ac yn ail, oherwydd 99% o'r amser rydym yn defnyddio nid yn unig sgiliau sylfaenol, ond yn sicr nid y sgiliau mwyaf soffistigedig, ac mae hyn yn ddigon hyd yn oed mewn codio, hyd yn oed mewn cwmnïau cŵl.

Ac yn olaf, mae hyfforddiant yn fuddsoddiad, ac mae arallgyfeirio yn bwysig mewn buddsoddiadau.

Beth i'w ddysgu

Felly beth i'w ddysgu a sut? Mae datblygwr nodweddiadol mewn cwmni cryf yn defnyddio'r canlynol yn rheolaidd:

  • cyfathrebu
  • hunan-drefniadaeth
  • cynllunio
  • dyluniad (cod fel arfer)
  • ac weithiau sgiliau rheoli, arweinyddiaeth, dadansoddi data, ysgrifennu, recriwtio, mentora a llawer o sgiliau eraill

Ac yn ymarferol nid oes yr un o'r sgiliau hyn yn croestorri â'r cod ei hun. Mae angen eu haddysgu a’u huwchraddio ar wahân, ac os na wneir hyn, byddant yn parhau i fod ar lefel isel iawn, nad yw’n caniatáu iddynt gael eu defnyddio’n effeithiol.

Pa feysydd sy'n werth eu datblygu?

  1. Sgiliau meddal yw popeth nad yw'n ymwneud â gwasgu botymau yn y golygydd. Dyma sut rydyn ni'n ysgrifennu negeseuon, sut rydyn ni'n ymddwyn mewn cyfarfodydd, sut rydyn ni'n cyfathrebu â chydweithwyr. Mae'r rhain i gyd yn ymddangos yn bethau amlwg, ond yn aml iawn maent yn cael eu tanamcangyfrif.

  2. System hunan-sefydliad. I mi yn bersonol, mae hwn wedi dod yn bwnc hynod bwysig dros y flwyddyn ddiwethaf. Ymhlith yr holl weithwyr TG cŵl rwy’n eu hadnabod, dyma un o’r sgiliau mwyaf datblygedig: maent yn hynod drefnus, maent bob amser yn gwneud yr hyn a ddywedant, maent yn gwybod yn union beth y byddant yn ei wneud yfory, mewn wythnos, mewn mis. Mae angen adeiladu system o'ch cwmpas eich hun lle mae pob mater a phob cwestiwn yn cael eu cofnodi; mae hyn yn hwyluso'r gwaith ei hun yn fawr ac yn helpu'n fawr i ryngweithio â phobl eraill. Rwy’n teimlo bod datblygiad i’r cyfeiriad hwn dros y flwyddyn ddiwethaf wedi fy ngwella llawer mwy na gwella fy sgiliau technegol; dechreuais wneud llawer mwy o waith fesul uned o amser.

  3. Rhagweithiol, meddwl agored a chynllunio. Mae'r pynciau'n gyffredinol ac yn hanfodol iawn, heb fod yn unigryw i TG, a dylai pawb eu datblygu. Mae rhagweithioldeb yn golygu peidio ag aros am signal i weithredu. Chi yw ffynhonnell digwyddiadau, nid ymatebion iddynt. Meddwl agored yw’r gallu i drin unrhyw wybodaeth newydd yn wrthrychol, i werthuso’r sefyllfa ar wahân i olwg y byd a’ch hen arferion eich hun. Mae cynllunio yn weledigaeth glir o sut mae tasg heddiw yn datrys y broblem ar gyfer yr wythnos, mis, blwyddyn. Os gwelwch y dyfodol y tu hwnt i dasg benodol, mae'n llawer haws gwneud yr hyn sydd ei angen arnoch, a pheidio â bod ofn ar ôl amser sylweddoli ei fod wedi'i wastraffu. Mae'r sgil hon yn arbennig o bwysig ar gyfer gyrfa: gallwch chi gyflawni canlyniadau yn llwyddiannus am flynyddoedd, ond yn y lle anghywir, ac yn y pen draw yn colli'r holl fagiau cronedig pan ddaw'n amlwg eich bod yn symud i'r cyfeiriad anghywir.

  4. Pob maes cysylltiedig â'r lefel sylfaenol. Mae gan bawb eu meysydd penodol eu hunain, ond mae'n bwysig deall, trwy dreulio 10-20 awr o amser ar lefelu rhywfaint o sgil “tramor”, y gallwch chi ddarganfod llawer o gyfleoedd a phwyntiau cyswllt newydd yn eich gwaith bob dydd, a gall yr oriau hyn. fod yn ddigon hyd ddiwedd gyrfa.

Beth i'w ddarllen

Mae yna lawer iawn o lyfrau am hunan-drefnu; mae'n ddiwydiant cyfan lle mae rhai dynion rhyfedd yn ysgrifennu casgliadau o gyngor ac yn casglu hyfforddiant. Ar yr un pryd, nid yw'n glir beth maen nhw eu hunain wedi'i gyflawni mewn bywyd. Felly, mae'n bwysig rhoi hidlwyr ar yr awduron, edrych ar bwy ydyn nhw a beth sydd ganddyn nhw y tu ôl iddyn nhw. Pedwar llyfr oedd yn dylanwadu fwyaf ar fy natblygiad a’m rhagolygon, pob un ohonynt mewn rhyw ffordd neu’i gilydd yn ymwneud â gwella’r sgiliau a ddisgrifiwyd uchod.

Pam na fydd uwchraddio'ch codio yn eich gwneud chi'n ddatblygwr gwell1. Dale Carnegie “Sut i Ennill Ffrindiau a Dylanwadu ar Bobl”. Llyfr cwlt am sgiliau meddal, os nad ydych chi'n gwybod ble i ddechrau, mae'n opsiwn lle mae pawb ar ei ennill. Mae wedi'i adeiladu ar enghreifftiau, mae'n hawdd ei ddarllen, nid oes angen llawer o ymdrech i ddeall yr hyn a ddarllenwch, a gellir cymhwyso'r sgiliau a enillwyd ar unwaith. Yn gyffredinol, mae'r llyfr yn ymdrin â'r pwnc o gyfathrebu â phobl.

Pam na fydd uwchraddio'ch codio yn eich gwneud chi'n ddatblygwr gwell2. Stephen R. Covey “7 Arferion Pobl Hynod Effeithiol”. Cymysgedd o wahanol sgiliau, o ragweithgarwch i sgiliau meddal, gyda phwyslais ar gyflawni synergedd pan fydd angen i chi droi tîm bach yn rym enfawr. Mae hefyd yn hawdd ei ddarllen.

Pam na fydd uwchraddio'ch codio yn eich gwneud chi'n ddatblygwr gwell3. Ray Dalio "Egwyddorion". Yn datgelu themâu meddwl agored a rhagweithioldeb, yn seiliedig ar hanes y cwmni a adeiladodd yr awdur, y bu'n ei reoli am 40 mlynedd. Mae llawer o enghreifftiau bywyd caled yn dangos pa mor ragfarnllyd a dibynnol y gall person fod, a sut i gael gwared arno.

Pam na fydd uwchraddio'ch codio yn eich gwneud chi'n ddatblygwr gwell4. David Allen, “Cyflawni Pethau”. Darllen gorfodol i ddysgu hunan-drefnu. Nid yw mor hawdd ei ddarllen, ond mae'n darparu set gynhwysfawr o offer ar gyfer trefnu bywyd a materion, yn archwilio pob agwedd yn fanwl, ac yn eich helpu i benderfynu beth yn union sydd ei angen arnoch. Gyda'i help, fe wnes i adeiladu fy system fy hun sy'n caniatáu i mi wneud y pethau pwysicaf bob amser heb anghofio am y gweddill.

Rhaid deall nad yw darllen yn unig yn ddigon. Gallwch chi lyncu o leiaf llyfr yr wythnos, ond bydd yr effaith yn para am sawl diwrnod, ac yna bydd popeth yn dychwelyd i'w le. Dylid defnyddio llyfrau fel ffynhonnell cyngor sy'n cael ei brofi'n ymarferol ar unwaith. Os na wnewch hyn, y cyfan y byddant yn ei roi yw ehangu eich gorwelion.

Ffynhonnell: hab.com

Ychwanegu sylw