Maitiro ekugadzirira kubvunzurudzwa paGoogle uye nekukundikana. Kaviri

Maitiro ekugadzirira kubvunzurudzwa paGoogle uye nekukundikana. Kaviri

Musoro wechinyorwa unonzwika senge epic kukundikana, asi muchokwadi zvese hazvisi nyore. Uye kazhinji, nyaya iyi yakapera zvakanaka, kunyangwe isiri muGoogle. Asi iyi inyaya yechimwe chinyorwa. Muchinyorwa chimwechete ichi, ndichataura pamusoro pezvinhu zvitatu: nzira yangu yekugadzirira yakafamba sei, mabvunzurudzo paGoogle akaitwa sei, uye nei, mumaonero angu, zvinhu zvose hazvina kujeka sezvazvingaita.

Izvozvo zvakatanga sei

Mamwe manheru echando ekuCypriot echando, pfungwa yacho yakangoerekana yauya kwandiri kuti ruzivo rwangu rwekirasi yeComputer Science rwakanga rwuri kure neavhareji, uye chimwe chinhu chaifanira kuitwa nezvazvo. Kana, nenzira, mumwe munhu asati averenga kuti sei manheru ari Cypriot uye kutonhora, saka unogona kuziva nezvazvo. pano. Mushure meimwe pfungwa, zvakasarudzwa kutanga nekutora online kosi pane algorithms uye data zvimiro. Kubva kune mumwe wevandaimboshanda navo ndakanzwa nezve kosi yaRobert Sedgewick paCoursera. Kosi yacho ine zvikamu zviviri (chikamu 1 ΠΈ chikamu 2) Kana kamwe kamwe zvinongedzo zvichichinja, unogona kugara uchiGoogle zita remunyori. Chikamu chimwe nechimwe chinotora mavhiki matanhatu. Hurukuro dzinopihwa pakutanga kwevhiki, uye mukati mevhiki iwe uchiri kuda kuita maekisesaizi. Chikamu chekutanga chekosi chinovhara ekutanga data zvimiro, mhando dzemhando dzekuronga uye kuoma kwealgorithms. Chikamu chechipiri chatove nechemberi, kutanga nemagirafu uye kupera nezvinhu zvakadai se Linear Programming uye Intractability. Mushure mekufunga nezvese zviri pamusoro, ndakasvika pakugumisa kuti izvi ndizvo chaizvo zvandinoda. Nenzira, muverengi anobvunza angabvunza, Google inei nazvo? Uye zvechokwadi, kusvikira panguva ino akanga asina chokuita nazvo zvachose. Asi ndaida chinangwa, sezvo kudzidza kwevhiki 6 manheru pasina chinangwa kwakatiomera. Chii chingava chinangwa chokuwana zivo itsva? Zvechokwadi, kushandiswa kwavo mukuita. Muhupenyu hwezuva nezuva izvi zvinonetsa, asi panguva yekubvunzurudzwa nekambani huru zviri nyore. Google inokurumidza yakaratidza kuti Google (regererai tautology) ndeimwe yemakambani makuru muEurope (uye ini ndanga ndichitarisa zvakananga kuEurope) iyo inoitisa mabvunzurudzo akadaro. Kureva, hofisi yavo iri muZurich, Switzerland. Saka zvakasarudzwa - ngatidzidzei tiende kubvunzurudzo kuGoogle.

Kugadzirira nzira yekutanga

Vhiki gumi nembiri dzakapfuura nekukurumidza uye ndakapedza makosi ese ari maviri. Maonero angu emakosi anopfuura akanaka, uye ndinogona kuakurudzira kune chero munhu anofarira. Ndakafarira makosi nekuda kwezvikonzero zvinotevera:

  • Mudzidzisi anotaura Chirungu chakajeka
  • Nyaya yacho yakanyatsorongeka
  • Mharidzo dzakanaka dzinoratidza mukati meimwe algorithm
  • Kugona kusarudzwa kwezvinhu
  • Zviitwa zvinofadza
  • Maekisesaizi anoongororwa otomatiki pane saiti, mushure mezvo mushumo unogadzirwa

Basa rangu remakosi raiwanzoenda seizvi. Ndakateerera hurukuro mumazuva 1-2. Ipapo vakaedza nokukurumidza kuziva kwavo mashoko acho. Svondo rese ndakaita kurovedza muviri mukudzokorora kwakati. Mushure mekutanga ndakawana 30-70% yangu, iyo yakatevera yakaunza mhedzisiro ku97-100%. Chiitiko ichi chaiwanzobatanidza kuita imwe algorithm, semuenzaniso. Seam kuvezera kana bzip.

Mushure mekupedza zvidzidzo, ndakaona kuti ruzivo rwakawanda runouya nekusuwa kukuru. Kana ndisati ndangoziva kuti hapana chandaiziva, zvino ndakatanga kuona kuti ndini ndakanga ndisingazivi.

Sezvo waingova mwedzi waMay, uye ndakaronga bvunzurudzo nokuda kwematsutso, ndakasarudza kupfuuridzira dzidzo yangu. Mushure mekuongorora zvinodikanwa zvechinzvimbo, zvakasarudzwa kuti zviende nenzira mbiri dzakafanana: ramba uchidzidza maalgorithms uye kutora kosi yekutanga mukudzidza muchina. Nokuda kwechinangwa chekutanga, ndakasarudza kuchinja kubva kumakosi kuenda kubhuku uye ndakasarudza basa raSteven Skiena guru "Algorithms. Iyo Algorithm Design Manual. Kwete seyakakura seyaKnut, asi zvakadaro. Pachinangwa chechipiri, ndakadzokera kuCoursera ndikanyoresa kosi yaAndrew Ng. Machine Learning.

Imwe 3 months dzakapera ndikapedza course and book.

Ngatitange nebhuku. Kuverenga kwacho kwakazonakidza, kunyange kusiri nyore. Muchidimbu, ndinoda kukurudzira bhuku, asi kwete pakarepo. Pakazara, bhuku rinopa kutarisisa kwakadzama pane zvandakadzidza mukosi. Uyezve, ini ndakawana (kubva pachimiro chechimiro) zvinhu zvakaita seheuristics uye ine simba hurongwa. Sezvingatarisirwa, ndakanga ndambodzishandisa, asi ndakanga ndisingazivi kuti dzainzi chii. Iri bhuku zvakare rine akati wandei ngano kubva kuhupenyu hwemunyori (Hondo Nhau), izvo zvinoderedza chimiro chedzidzo chemharidzo. Sezvineiwo, chikamu chechipiri chebhuku chinogona kusiiwa; rine rondedzero yezvinetso zviripo uye nzira dzekuzvigadzirisa. Inobatsira kana ichigara ichishandiswa mukuita, kana zvisina kudaro ichakanganwa pakarepo.

Ndakafara zvakanyanya necourse yacho. Munyori anonyatsoziva zvinhu zvake uye anotaura nenzira inofadza. Kuwedzera huwandu hwayo, hunoti mutsara algebra uye izvo zvekutanga zveneural network, ndakarangarira kubva kuyunivhesiti, saka handina kumbosangana nematambudziko. Chimiro chekosi chakanyanya mwero. Kosi yacho yakakamurwa kuita mavhiki. Vhiki yega yega kune hurukuro dzakasanganiswa nebvunzo pfupi. Mushure mehurukuro, iwe unopihwa basa raunofanirwa kuita, kuendesa, uye rinozoongororwa otomatiki. Muchidimbu, rondedzero yezvinhu zvakadzidziswa mukosi ndeiyi inotevera:
- mutengo basa
- kuderera kwemutsara
- gradient descent
- chiyero chekuyera
- normal equation
- logistic regression
- Multiclass classification (imwe vs ese)
- neural network
- backpropagation
- kugarisa
- kurerekera/kusiyana
- maitiro ekudzidza
- kukanganisa metrics (chaizvo, rangarira, F1)
- Tsigira Vector Machina (yakakura margin classification)
β€” K-zvinoreva
-Kuongorora Zvikamu Zvikuru
- anomaly kuonekwa
- kushandira pamwe kusefa (recommeder system)
- stochastic, mini-batch, batch gradient descents
- kudzidza online
- mepu kuderedza
- kuongorora sirin'i
Mushure mekupedza kosi, kunzwisiswa kwemisoro yese iyi yaivepo. Mushure memakore maviri, zvinenge zvinhu zvose zvakakanganwika. Ini ndinoikurudzira kune avo vasina kujairana nekudzidza kwemuchina uye vanoda kuwana kunzwisisa kwakanaka kwezvinhu zvakakosha kuti uenderere mberi.

Kutanga kumhanya

Yakange yatove munaGunyana uye yaive nguva yekufunga nezve interview. Sezvo kunyorera kuburikidza nesaiti kune njodzi, ndakatanga kutsvaga shamwari dzinoshanda kuGoogle. Sarudzo yakawira pasi datacompboy, sezvo ari iye ega wandaiziva zvakananga (kunyange kana asiri iye pachake). Akabvuma kunditumirazve magwaro angu, uye pasina nguva ndakagamuchira tsamba yaibva kumunhu aindipinza basa ichiti aizondichengetera nzvimbo pakarenda yake kuti tizokurukura kekutanga. Takaedza kutaurirana neHangouts, asi mhando yacho yakashata, saka takachinjira parunhare. Chekutanga, isu takakurumidza kukurukura chiyero kuti sei, sei uye nei, uye ndokuzoenda kune tekinoroji yekuongorora. Yaive nemibvunzo gumi nembiri mumweya wekuti "chii chinonetsa kuisa mumepu yehashi", "ndeipi miti yakadzikama yaunoziva." Hazvina kuoma kana uine ruzivo rwekutanga rwezvinhu izvi. Kuongorora kwakafamba zvakanaka uye zvichibva pamhedzisiro, vakasarudza kuronga kubvunzurudza kwekutanga muvhiki.

Hurukuro iyi yakaitikawo kuburikidza neHangouts. Vakatanga vataura nezvangu kweanenge maminitsi mashanu, ndokuzoenda kune dambudziko. Dambudziko raive pamagirafu. Ndakakurumidza kuona izvo zvaifanira kuitwa, asi ndakasarudza iyo isiriyo algorithm. Pandakatanga kunyora kodhi ndakaziva izvi ndikachinja kune imwe sarudzo, yandakapedza. Mubvunzurudzo akabvunza mibvunzo yakati wandei nezve kuoma kweiyo algorithm uye akabvunza kana zvaigona kuitwa nekukurumidza. Sezvinei ndakava nekufinyama uye handina kukwanisa kuzviita. Panguva iyi nguva dzakanga dzakwana ndokubva taonekana. Zvino, mushure memaminitsi gumi, zvakandijekera kuti pachinzvimbo cheDijkstra algorithm yandakashandisa, mudambudziko iri ndaigona kushandisa hupamhi-yekutanga kutsvaga, uye inokurumidza. Pashure penguva yakati, mupi webasa akafona ndokutaura kuti hororo yebvunzurudzo yakafamba zvakanaka uye kuti imwe inofanira kurongwa. Takabvumirana pane rimwe vhiki.

Apa zvinhu zvakatonyanya kuipa. Kana kekutanga mubvunzurudzo aive neushamwari uye aine hushamwari, panguva ino aive akati nyarei. Ini handina kukwanisa kuona dambudziko ipapo, kunyangwe pfungwa dzandakauya nadzo dzaigona, mumusoro, kutungamira kumhinduro yayo. Pakupedzisira, mushure mokukurudzira kwakawanda kubva kumubvunzurudzo, mhinduro yakauya kwandiri. Panguva ino yakave kutsvaga kwekutanga-kwekutanga zvakare, kubva pane akati wandei. Ndakanyora mhinduro, ndakasangana navo nenguva, asi ndakakanganwa nezve edge kesi. Mushure menguva yakati, muchengeti akadana uye akataura kuti panguva ino mubvunzurudzo akanga asina kufara, nokuti mumaonero ake ndaida mazano akawanda (3 kana 4 zvidimbu) uye ndaigara ndichishandura kodhi ndichinyora. Kubva pane zvakabuda mubvunzurudzo mbiri, zvakasarudzwa kuti zvisaenderere mberi, asi kumisa kubvunzurudza kunotevera kwegore, kana ndichida. Ndosaka takaonekana.

Uye kubva munyaya iyi ndakaita mhedziso dzakawanda:

  • Theory yakanaka, asi iwe unofanirwa kukurumidza kuifambisa
  • Dzidziso pasina kuita hazvibatsiri. Tinofanira kugadzirisa matambudziko uye kuunza coding kune otomatiki.
  • Zvakawanda zvinoenderana nemubvunzurudzo. Uye hapana chinogona kuitwa nezvazvo.

Kugadzirira kumhanya kwechipiri

Pashure pokufunga nezvemamiriro acho ezvinhu, ndakasarudza kuedzazve pashure pegore. Uye zvishoma kugadzirisa chinangwa. Kana pakutanga chinangwa chikuru chaive chekudzidza, uye kubvunzurudza kuGoogle kwaive kwakafanana nekaroti iri kure, ikozvino kupfuudza kubvunzurudza kwaive chinangwa, uye kudzidza yaive nzira.
Saka, chirongwa chitsva chakagadzirwa, chaisanganisira zvinotevera pfungwa:

  • Ramba uchidzidza dzidziso nekuverenga mabhuku uye zvinyorwa.
  • Gadzirisa algorithmic matambudziko muhuwandu hwe500-1000 zvidimbu.
  • Ramba uchidzidza dzidziso nekuona mavhidhiyo.
  • Ramba uchidzidza dzidziso kuburikidza nemakosi.
  • Dzidza zviitiko zvevamwe vanhu nebvunzurudzo paGoogle.

Ndakapedza hurongwa mukati megore. Zvino ini ndichatsanangura izvo chaizvo zvandakaita kune imwe neimwe yemapoinzi.

Mabhuku nezvinyorwa

Handitomboyeuki nhamba yezvinyorwa zvandakaverenga; ndakazviverenga muRussia uye muchiRungu. Zvichida iyo inonyanya kukosha saiti izvi. Pano iwe unogona kuwana tsananguro yenhamba huru yealgorithms inonakidza ine kodhi mienzaniso.

Ndakaverenga mabhuku mashanu: Algorithms, 5th edition (Sedgewick, Wayne), Nhanganyaya yeAlgorithms 4rd Edition (Cormen, Leiserson, Rivest, Stein), Cracking the Coding Hurukuro 3th edition (Gayle Laakmann), Hurukuro Hurukuro Yakafumurwa 4nd edition (Mongan, Suojanen , Giguere), Elements of Programming Interviews (Aziz, Lee, Prakash). Vanogona kugoverwa muzvikamu zviviri. Yekutanga inosanganisira mabhuku aSedgwick naCorman. Iyi idzidziso. Zvasara kugadzirira kubvunzurudzwa. Sedgwick anotaura pamusoro pechinhu chimwechete mubhuku semakosi ake. Mukunyora chete. Iko hakuna kwakawanda kwekuiverenga nekungwarira kana iwe watora kosi, asi zvakakodzera skimming zvakadaro. Kana usina kuona kosi, zvine musoro kuiverenga. Cormen airatidzika kuva anofinha zvikuru kwandiri. Kutaura chokwadi, zvakandiomera kuzvigona. Ndakabva ndangoiburitsa imomo dzidziso huru, uye akati wandei asingawanzo shandiswa data zvimiro (Fibonacci murwi, van Emde Boas muti, radix murwi).

Zvakakodzera kuverenga bhuku rimwe chete kuti ugadzirire kubvunzurudzwa. Zvose zvakavakwa pamusoro penheyo imwe chete. Vanotsanangura maitiro ekubvunzurudza mumakambani makuru etekinoroji, vanopa zvinhu zvakakosha kubva kuComputer Science, matambudziko ezvinhu izvi zvakakosha, mhinduro kumatambudziko uye kuongororwa kwemhinduro. Pakati pevatatu vari pamusoro, ini ndingangokurudzira Cracking iyo Coding Hurukuro seyo huru, uye zvimwe zvese ndezvekusarudza.

Algorithmic matambudziko

Iyi ingangove yakanga iri pfundo rinofadza zvikurusa rokugadzirira. Iwe unogona, chokwadi, kugara pasi uye kugadzirisa matambudziko nehupenzi. Kune nzvimbo dzakawanda dzakasiyana dzeizvi. Ndakanyanya kushandisa matatu: Hackerrank, CodeChef ΠΈ LeetCode. PaCodeChef, matambudziko akakamurwa nekuomerwa, asi kwete nemusoro. PaHackerrank zvese nekuoma uye nemusoro.

Asi sezvandakabva ndazvionera pachangu, pane imwe nzira inonakidza. Uye aya makwikwi (zvinetso zvepurogiramu kana makwikwi epurogiramu). Nzvimbo nhatu dzese dzinovapa. Chokwadi, pane dambudziko neLeetCode - isingaite nguva yenguva. Ndosaka ndisina kutora chikamu pane ino saiti. Hackerrank uye CodeChef inopa nhamba yakakura yemakwikwi akasiyana, anogara kubva paawa imwe kusvika kumazuva gumi. Mafomati akasiyana ane mitemo yakasiyana, asi tinogona kutaura nezvazvo kwenguva yakareba. Pfungwa huru yekuti sei makwikwi akanaka kuunzwa kweanokwikwidza (uye zvakare tautology) chinhu mukuita kwekudzidza.

Pakazara, ndakatora chikamu mumakwikwi makumi matatu nemanomwe paHackerrank. Pane ivava, makumi matatu nevaviri vaive vakayereswa, uye vashanu vakatsigirwa (ndakatowana madhora makumi maviri neshanu mune imwe yacho) kana kunakidzwa. Muzvirongwa ndakanga ndiri pamusoro 37% ka32, pamusoro 5% 25 nguva uye pamusoro 10% ka4. Mhedzisiro yakanakisa yaive 11/12 mu5-awa uye 25/27 muvhiki.

Ndakachinjira kuCodeChef apo Hackerrank yakatanga kuitisa makwikwi kazhinji. Pamwe chete ndakakwanisa kutora chikamu mumakwikwi mashanu. Chibodzwa chepamusoro chaive 5/426 mumakwikwi emazuva gumi.

Pakazara, pamakwikwi uye saizvozvo, ndakagadzirisa zvishoma kudarika 1000 matambudziko, anoenderana nechirongwa. Iye zvino, zvinosuruvarisa, hapana nguva yekusununguka yekuenderera mberi nemitambo yemakwikwi, sezvo pasina chinangwa icho nguva isina kusununguka inogona kunyorwa. Asi zvainakidza. Ndinokurudzira kuti avo vanofarira izvi vawane vanhu vane pfungwa dzakafanana. Pamwe chete kana muboka zvinonyanya kunakidza. Ndakanakidzwa neizvi neshamwari, saka pamwe zvakafamba zvakanaka.

Ona vhidhiyo

Pashure pokuverenga bhuku raSkiena, ndakava nefariro mune zvaaiita. SaSedgwick, ndiye purofesa weyunivhesiti. Panyaya iyi, mavhidhiyo emakosi ake anogona kuwanikwa online. Ndakasarudza kuongorora kosi yacho COMP300E - Programming Matambudziko - 2009 HKUST. Handigoni kutaura kuti ndakaifarira zvikuru. Chekutanga, mhando yevhidhiyo haina kunyatsonaka. Chechipiri, handina kuedza kugadzirisa matambudziko akakurukurwa mukosi ini. Saka kubatikana kwakanga kusina kunyanya kukwira.
Zvakare, ndichigadzirisa matambudziko, ndichiedza kutsvaga iyo algorithm chaiyo, ndakaona vhidhiyo yaTushar Roy. Akashanda kuAmazon uye zvino anoshanda kuApple. Sezvandakazozvionera ndega, akadaro YouTube chiteshi, kwaanotumira kuongororwa kwemaitiro akasiyana-siyana. Panguva yekunyora, chiteshi chine mavhidhiyo e103. Uye ndinofanira kutaura kuti kuongorora kwake kwakaitwa zvakanaka kwazvo. Ndakaedza kutarisa vamwe vanyori, asi neimwe nzira hazvina kushanda. Saka ndinogona kunyatso kurudzira iyi chiteshi kuti uone.

Kutora makosi

Hapana chandakaita apa. Akatarisa vhidhiyo kubva kuGoogle's Android Developer Nanodegree uye akatora kosi kubva kuITMO Maitiro ekuhwina Coding Makwikwi: Zvakavanzika zveMakwikwi. Nanodegree yakanaka kwazvo, kunyangwe ini handina kudzidza chero chinhu chitsva kubva kwairi. The course from ITMO is a little skewed in terms of theory, asi matambudziko ainakidza. Ini handingakurudzire kutanga nazvo, asi musimboti yaive nguva yakashandiswa zvakanaka.

Dzidza kubva pane zvakaitika kune vamwe vanhu

Zvechokwadi, vanhu vazhinji vakaedza kupinda muGoogle. Vamwe vakaiwana, vamwe havana. Vamwe vakanyora zvinyorwa pamusoro peizvi. Pazvinhu zvinonakidza zvandingangotaura uyu ΠΈ uyu. Muchiitiko chekutanga, munhu akazvigadzirira rondedzero yezvaanofanira kudzidza kuti ave Software Injiniya uye apinde muGoogle. Yakazopedzisira yasvika muAmazon, asi izvo hazvisi izvo zvakakosha zvakare. Bhuku rechipiri rakanyorwa naGoogle injiniya, Larisa Agarkova (Larr) Pamusoro pegwaro iri, unogona zvakare kuverenga blog yake.

Zvine musoro kuverenga wongororo yebvunzurudzo paGlassdoor. Iwo ese akafanana zvakanyanya kana mashoma, asi iwe unogona kuwana rumwe ruzivo runobatsira.

Ini handisi kuzopa zvinongedzo kune zvimwe zvinyorwa zvidiki; unogona kuzviwana zviri nyore paGoogle.

Kumhanya kechipiri

Uye zvino gore rapfuura. Zvakazove zvakanyanya zvakanyanya maererano nezvidzidzo. Asi ndakasvika kumatsutso matsva ndine ruzivo rwakadzama rwedzidziso uye ndakakudziridza hunyanzvi hunoshanda. Kwakanga kuchine mavhiki mashoma asara gore risati rapera gore randakagoverwa kuti ndigadzirire, apo kamwe kamwe tsamba kubva kune anotora basa kubva kuGoogle yakadonha mutsamba, umo akandibvunza kana ndichiri nechido chekushanda kuGoogle uye ndaizo Ndoda kutaura naye. Sezvingatarisirwa, ndakanga ndisina basa nazvo. Takabvumirana kuti taizofona mushure mevhiki. Vakandikumbirawo gwaro rakagadziridzwa, iro ndakawedzera tsananguro pfupi yezvandakanga ndaita mukati megore kubasa uye mune zvese.

Mushure mekutaura kwehupenyu hwese, takasarudza kuti muvhiki pachave nehurukuro yeHangouts, sezvakaita gore rapfuura. Vhiki rakapera, nguva yekubvunzurudzwa yakasvika, asi wekubvunza haana kuuya. 10 maminetsi akapfuura, ndakanga ndatotanga kuvhunduka, pakarepo mumwe munhu akapinda muhurukuro. Sezvazvakazoitika gare gare, mubvunzurudzo wangu nokuda kwechimwe chikonzero haana kukwanisa kuoneka uye anotsiva akawanikwa nokukurumidza kwaari. Munhu wacho akanga asina kugadzirira zvose maererano nekugadzirisa kombiyuta uye maererano nekuitisa bvunzurudzo. Asi ipapo zvinhu zvose zvakafamba zvakanaka. Ndakagadzirisa chinetso chacho nokukurumidza, ndakatsanangura paibvira misungo, uye kuti yaigona kudziviswa sei. Takakurukura akati wandei akasiyana edambudziko uye kuoma kweiyo algorithm. Ipapo takataura kwemamwe maminetsi mashanu, injiniya akatiudza maonero ake ekushanda muMunich (ivo sezviri pachena havana kuwana yekuchimbidza kutsiva muZurich), tichibva taparadzana.

Pazuva rimwe chetero, mushandirwi wacho akandibata ndokutaura kuti bvunzurudzo yakafamba zvakanaka uye vakanga vakagadzirira kundikoka kubvunzurudzo muhofisi. Mangwana acho takafona tichishandisa Hangouts tichikurukura nezvenyaya yacho. Sezvo ndaifanira kukumbira vhiza, takasarudza kuronga bvunzurudzo mumwedzi mumwe chete.

Pandakanga ndichigadzira magwaro, panguva imwe cheteyo ndakakurukura nezvebvunzurudzo yaizouya nemupi webasa. Bvunzurudzo yakajairwa paGoogle ine 4 algorithmic kubvunzurudza uye imwe chete System Dhizaini kubvunzurudza. Asi, sezvo ndakanga ndichitsvaga basa semugadziri weAndroid, ndakaudzwa kuti chikamu chebvunzurudzo chaizova Android chaiyo. Ini handina kukwanisa kuzvizunungusa kubva kune muchengeti chaizvo kuti chii uye kuti chii chaizove chaicho. Sekunzwisisa kwandinoita, izvi zvakaunzwa nguva pfupi yadarika uye iye pachake aisanyatsozviziva. Ini zvakare ndakanyoreswa kumisangano miviri yekudzidziswa: maitiro ekupasa kubvunzurudzwa kwealgorithmic uye nzira yekupasa kubvunzurudzwa kweSystem Design. Zvirongwa zvacho zvaive zveavhareji zvinobatsira. Ikoko, zvakare, hapana aigona kundiudza zvavanobvunza Android Developers. Naizvozvo, kugadzirira kwangu kwemwedzi uno kwakawira kune zvinotevera:

  • Kutenga marker board uye kunyora 2-3 gumi nemaviri eanonyanya kufarirwa algorithms pairi kubva mundangariro. 3-5 zvidimbu pazuva. Pamwe chete, imwe neimwe yakanyorwa kakawanda.
  • Nyoresa ndangariro yako yeruzivo rwakasiyana pa Android rwausingashandise mazuva ese
  • Kuona mavhidhiyo mashoma nezve Big Scale nezvimwe zvakadaro

Sezvandambotaura, panguva imwechete ndakanga ndichigadzirira magwaro erwendo. Kutanga, vakandikumbira mashoko ekuita tsamba yokukoka. Ipapo ndakaedza kwenguva yakareba kuti ndione kuti ndiani muCyprus anopa mavhiza kuSwitzerland, sezvo embassy yeSwitzerland isingaite izvi. Sezvakazoitika, mumiriri weAustria ari kuita izvi. Ndakafona ndikaita mahwekwe. Vakakumbira magwaro akawanda, asi hapana chainyanya kufadza. Mufananidzo, pasipoti, mvumo yekugara, boka rezvitupa zvakasiyana uye, hongu, tsamba yekukoka. Ukuwo tsamba haina kusvika. Pakupedzisira, ndakaenda neprintout yenguva dzose uye yakashanda zvakanaka. Tsamba yacho pachayo yakasvika mazuva matatu gare gare, uye Cypriot FedEx haina kukwanisa kuwana kero yangu uye ndaifanira kuitora ini. Panguva imwecheteyo, ndakagamuchira pasuru kubva kuFedEx imwe chete, iyo yavaisakwanisawo kundiendesa kwandiri, sezvo vasina kuwana kero, uye iyo yakanga yakarara kubva munaJune (3 mwedzi, Karl). Sezvo ndakanga ndisingazivi nezvazvo, sezvazviri, handina kufunga kuti vakanga vanayo. Ndakagamuchira vhiza rangu nenguva, vachibva vanditsvakira hotera uye vakandipa nzira dzokuenda nadzo nendege. Ndakagadzirisa sarudzo kuti zviite nyore. Kwakanga kusisina ndege dzakananga, naizvozvo ndakaguma ndakwira nendege ikoko ndichipfuura neAthens uye kudzokera nokuVienna.

Mushure mekunge maformalities ese nerwendo agadziriswa, kwapera mazuva akati wandei ndikabhururuka ndakananga Zurich. Ndakasvika pasina chakaitika. Kubva kuairport kuenda kuguta ndakatora chitima - nekukurumidza uye nyore. Ndati fambei zvishoma neguta, ndakawana hotera ndikapinda. Sezvo hotera yainge yarongerwa vanhu vasina kudya ndakabva ndadya panext door ndokunorara nekuti ndege yainge yave kuseni ndaitoda kurara. Mangwana acho ndakadya breakfast kuhotera (pamwe mari) ndokuenda kuGoogle office. Google ine mahofisi akati wandei muZurich. Interview yangu yanga isiri pacentral. Uye kazhinji, hofisi yaitaridzika seyakajairika, saka handina kuwana mukana wekutarisa zvese zvakanaka zve "zvakajairika" hofisi yeGoogle. Ndakanyoresa na administrator ndokugara pasi kuti ndimirire. Pashure penguva yakati, mushandirwi akabuda ndokundiudza gadziriro yezuva racho, achibva aenda neni kukamuri kwaizoitwa mabvunzurudzo. Chaizvoizvo, chirongwa ichi chaisanganisira 3 kubvunzurudza, masikati uye 2 mamwe mabvunzurudzo.

Hurukuro nhamba yekutanga

Hurukuro yekutanga yaingova pa Android. Uye yakanga isina chekuita nema algorithms zvachose. Kushamisika, zvakadaro. Zvakanaka, zvakatonyanya kuwanda nenzira iyi. Takakumbirwa kuti tigadzire imwe UI chikamu. Kutanga takakurukura kuti chii uye sei. Akazvipira kugadzira mhinduro achishandisa RxJava, akatsanangura chaizvo zvaaizoita uye nei. Vakataura kuti izvi zvakanaka, asi ngatizviite tichishandisa Android framework. Uye panguva imwechete isu tichanyora kodeti pabhodhi. Uye kwete chikamu chete, asi Chiitiko chose chinoshandisa chikamu ichi. Izvi ndizvo zvandaiva ndisina kugadzirira. Chinhu chimwe kunyora 30-50 mutsara algorithm pabhodhi, uye chimwe chinhu kunyora noodles yeAndroid kodhi, kunyangwe nemapfupiso uye makomendi mumweya we "zvakanaka, ini handisi kuzonyora izvo, sezvo zvave pachena." Mhedzisiro yacho yaive imwe mhando yevinaigrette yemabhodhi matatu. Avo. Ndakagadzirisa dambudziko racho, asi raiita serakapusa.

Hurukuro nhamba yechipiri

Panguva ino kubvunzurudza kwaive nezve algorithms. Uye paiva nevabvunzurudzo vaviri. Mumwe ndiye mubvunzurudzo chaiye, uye wechipiri padawan wechidiki (mubvunzurudzo wemumvuri). Zvaive zvakafanira kuuya nedata structure ine zvimwe zvinhu. Kutanga, takakurukura chinetso chacho senguva dzose. Ndakabvunza mibvunzo yakasiyana, mubvunzi akapindura. Pashure penguva yakati, vakakumbirwa kunyora nzira dzinoverengeka dzechimiro chakagadzirwa pabhodhi. Panguva ino ndakabudirira kana kushoma, kunyangwe paine zvikanganiso zvidiki, izvo zvandakagadzirisa pakukurudzira kwemubvunzurudzo.

Hurukuro nhamba yechitatu

Panguva ino System Dhizaini, iyo yakangoerekana yave Android. Zvaive zvakafanira kugadzira application ine mamwe maitiro. Takakurukura zvinodikanwa zvekushandisa, sevha, uye protocol yekutaurirana. Tevere, ndakatanga kutsanangura kuti ndezvipi zvikamu kana maraibhurari andaizoshandisa pakuvaka application. Uye zvadaro, pakutaura nezveJobho Scheduler, pakanga paine nyonganiso. Nyaya yacho ndeyokuti handina kumboishandisa mukuita, sezvo panguva yekusunungurwa kwayo ndakanga ndichangobva kuchinja kune zvikumbiro zvinotsigira apo pakanga pasina mabasa ekushandiswa kwayo. Chinhu chimwe chetecho chakaitika pakugadzira dzimwe dzakatevera. Ndiko kuti, muchirevo, ndinoziva kuti chinhu ichi chii, nguva uye sei chinoshandiswa, asi ini handina ruzivo mukuishandisa. Uye mubvunzurudzo wacho haana kuita seaida zvikuru. Vakabva vanditi ndinyore code. Ehe, kana uchigadzira application iwe unongoda kunyora kodhi. Zvakare Android kodhi pabhodhi. Zvakabva zvatyisa zvakare.

Kudya

Mumwe munhu aifanira kuuya, asi haana. Uye Google inokanganisa. Nekuda kweizvozvo, ndakaenda kukudya kwemasikati nemubvunzurudzo wekare, waaishanda naye, uye gare gare mubvunzurudzo akatevera akapinda. Lunch yanga yakanaka. Zvekare, sezvo iyi isiri iyo hofisi huru muZurich, imba yekudyira yaitaridzika seyakajairika, kunyangwe yakanaka kwazvo.

Hurukuro nhamba yechina

Pakupedzisira, algorithms mune yavo yakachena fomu. Ndakagadzirisa dambudziko rekutanga nekukasira uye nekukasira zvinobudirira, kunyangwe ndakapotsa nyaya imwe chete, asi nekukasira kwemubvunzurudzo (akapa iyi kesi yekumucheto) ndakawana dambudziko ndokurigadzirisa. Zvechokwadi, ndaifanira kunyora kodhi pabhodhi. Ipapo basa rakafanana rakapiwa, asi rakaoma zvikuru. Kune iyo, ndakawana akati wandei asiri-akanakisa mhinduro uye ndakapotsa ndawana iyo yakakwana, 5-10 maminetsi akange asina kukwana kupedzisa pfungwa. Zvakanaka, ndakanga ndisina nguva yekunyora kodhi yacho.

Hurukuro nhamba yechishanu

Uye zvakare Android kubvunzurudza. Ndinoshamisika nei ndakadzidza algorithms gore rose?
Pakutanga paiva nemibvunzo mishoma iri nyore. Ipapo mubvunzurudzo akanyora kodhi pabhodhi uye akakumbira kuwana matambudziko mairi. Akachiwana, akatsanangura, akachigadzirisa. Kukurukurwa. Zvino mimwe mibvunzo isingatarisirwi yakatanga mumweya wekuti "nzira Y inoita sei mukirasi X", "chii chiri mukati menzira Y", "chii chinoita kirasi Z". Zvechokwadi, ndakapindura chimwe chinhu, asi ipapo ndakataura kuti handina kusangana neizvi mubasa rangu munguva pfupi yapfuura uye zvakasikwa handiyeuki kuti ndiani ari kuita chii uye sei zvakadzama. Pashure paizvozvo, mubvunzurudzo akabvunza kuti ndakanga ndava kuitei zvino. Uye mibvunzo yakaenderera pamusoro penyaya iyi. Ndakatopindura zviri nani apa.

Mushure mekupera kwebvunzurudzo yekupedzisira, vakatora pass yangu, vakandishuvira rombo rakanaka uye vakandiendesa munzira yangu. Ndakafamba-famba neguta zvishoma, ndakadya uye ndakaenda kuhotera, kwandakaenda kunorara, sezvo ndege yakanga iri zvakare mangwanani-ngwanani. Zuva rakatevera racho ndakasvika zvakanaka muCyprus. Pakukumbira kwomupi webasa, ndakanyora mhinduro pamusoro pebvunzurudzo ndokuzadza fomu mubasa rinokosha kuti ndidzorere mari yakashandiswa. Pamari yese, Google inobhadhara matikiti chete. Hotera, chikafu uye kufamba zvinobhadharwa nemumiriri. Zvadaro tinozadza fomu, shandisa risiti uye titumire kuhofisi inokosha. Ivo vanogadzirisa izvi uye vanoendesa mari kuaccount nekukurumidza.

Zvakatora vhiki nehafu kugadzirisa mhinduro dzebvunzurudzo. Mushure mezvo ndakaziviswa kuti ndakanga ndiri "pazasi pebhawa." Kureva kuti ndadonha zvishoma. Kunyanya, kubvunzurudza 2 kwakafamba zvakanaka, 2 zvishoma zvisina kudaro, uye System Dhizaini haina kunyatso kunyatso. Ikozvino, dai kanenge 3 yakafamba zvakanaka, tingadai takakwanisa kukwikwidza, kana zvisina kudaro hapana mukana. Vakazvipira kudzoka mune rimwe gore.

Pakutanga, chokwadi, ndakagumbuka, nokuti kuedza kukuru kwakanga kwashandiswa pakugadzirira, uye panguva yebvunzurudzo ndakanga ndava kutofunga nezvokubva kuCyprus. Kujoinha Google uye kutamira kuSwitzerland kwaiita senge sarudzo huru.

mhedziso

Uye pano tasvika kuchikamu chekupedzisira chechinyorwa. Hongu, ndakatadza kubvunzurudza kweGoogle kaviri. Zvinosuwisa. Zvimwe zvinganakidza kushanda ikoko. Asi, unogona kutarisa nyaya yacho kune rumwe rutivi.

  • Mugore nehafu, ndakadzidza huwandu hukuru hwezvinhu zvine chekuita nekuvandudzwa kwesoftware.
  • Ndakafara zvikuru kupinda mumakwikwi epurogiramu.
  • Ndakaenda kuZurich kwemazuva mashoma. Ndichaendako rinhi futi?
  • Ndakanga ndine chiitiko chinonakidza chebvunzurudzo pane imwe yemakambani makuru eIT munyika.

Nokudaro, chinhu chiri chose chakaitika mukati meiri gore rimwe nehafu chinogona kungorangarirwa kuva kurovedza, kana kuti kurovedza. Uye miuyo yerovedzo iyi yakaita kuti vanzwe vamene. Pfungwa yangu yekusiya Cyprus yakakura (nekuda kwemamwe mamiriro emhuri), ndakabudirira kubvunzurudza akati wandei neimwe kambani inozivikanwa uye ndakatama mushure memwedzi ye8. Asi iyo inyaya yakasiyana zvachose. Nekudaro, ini ndinofunga kuti ndinofanira kuramba ndichitenda Google kwegore nehafu randakashanda pachangu, uye kwemazuva maviri anonakidza muZurich.

Chii chandingati pakupedzisira? Kana ukashanda muIT, zvigadzirire kubvunzurudza kuGoogle (Amazon, Microsoft, Apple, etc.). Zvichida rimwe zuva uchaenda ikoko kuti usvike ikoko. Kunyange kana iwe usingadi, nditende, kugadzirira kwakadaro hakuzoiti kuti iwe uwedzere kuipa. Nguva yaunoona kuti unokwanisa (kunyangwe nerombo rakanaka) kuwana kubvunzurudzwa neimwe yemakambani aya, mizhinji migwagwa ichakuzarurirwa iwe kupfuura usati watanga kugadzirira kwako. Uye zvese zvaunoda munzira chinangwa, kutsungirira uye nguva. Ndinokushuvira kubudirira :)

Source: www.habr.com

Voeg