werd Posted April 6, 2017 Report Share Posted April 6, 2017 Esmu Jānis - uzņēmuma Arkbauer Group tehniskais vadītājs. Šobrīd esam senior PHP programmētāja meklējumos. Ko mēs piedāvājam Tev: Labu atalgojumu (atkarībā no prasmēm un zināšanām): 1700 - 2300 EUR uz rokas (neto) pēc visu nodokļu nomaksas Interesantus projektus: Portāla Visidarbi.lv pārbūve pēc SOA principiem, izmantojot PHP7, Symfony3, Elasticsearch un arī Python Travel-Desk.de ceļojumu rezervācijas sistēmas pilnveidošana un pārbūve Viesnīcu pārvaldības sistēmas "3RPMS" izstrāde un attīstība Vācijas tirgum u.c. Darbu komandā ar pieredzējušu sistēmarhitektu Izaugsmes iespējas (vadīt komandu, kļūt par sistēmarhitektu, tehnisko projektu vadītāju) Atbalstu start-up idejām Fleksiblu darba laiku (saprāta robežās) Labu humoru komandā :) Ko mēs sagaidām no Tevis: Labu izpratni un pieredzi ar OOP Labas zināšanas un izpratni par vismaz vienu augsta līmeņa PHP ietvaru, piemēram, Symfony vai Laravel Vēlmi palīdzēt mūsu klientiem un augt kopā ar komandu Atbildības sajūtu par savu darbu Labas angļu valodas zināšanas Pozitīvu domāšanu Ja esi ieinteresēts, tad, lūdzu, izpildi testa uzdevumu un atsūti savu CV uz cv@arkbauer.com Informāciju par vakanci var atrast šeit. Quote Link to comment Share on other sites More sharing options...
jurchiks Posted April 6, 2017 Report Share Posted April 6, 2017 (edited) Visiem tiem interfeisiem būs tikai viena implementācija. Tā ir nepareiza interfeisu izmantošana pēc būtības. Zinu, ka testa uzdevums, bet labāk tad būtu vnk ļāvuši developerim pašam izdomāt, ko kā rakstīt. Noteikumi taču ir uzrakstīti. Edited April 6, 2017 by jurchiks Quote Link to comment Share on other sites More sharing options...
werd Posted April 7, 2017 Author Report Share Posted April 7, 2017 10 hours ago, jurchiks said: Visiem tiem interfeisiem būs tikai viena implementācija. Tā ir nepareiza interfeisu izmantošana pēc būtības. Zinu, ka testa uzdevums, bet labāk tad būtu vnk ļāvuši developerim pašam izdomāt, ko kā rakstīt. Noteikumi taču ir uzrakstīti. Sveiks! Reālā sistēmā - piekrītu. Šajā gadījumā runa, protams, ir par testa uzdevumu, kurā dotie interfeisi ir neliels ieskats uzdevuma būtībā. Ar prieku gaidīšu Tavu risinājumu! Quote Link to comment Share on other sites More sharing options...
Zefirs Posted April 7, 2017 Report Share Posted April 7, 2017 Lokācija Rītausmas iela 11 ? Quote Link to comment Share on other sites More sharing options...
werd Posted April 7, 2017 Author Report Share Posted April 7, 2017 4 minutes ago, Zefirs said: Lokācija Rītausmas iela 11 ? Jā, šobrīd gan esam jauna biroja meklējumos tuvāk centram, lai visiem ērtāk :) Quote Link to comment Share on other sites More sharing options...
Zefirs Posted April 7, 2017 Report Share Posted April 7, 2017 Žēl, uzskatu atrašanos ne-centrā par ērtumu. Quote Link to comment Share on other sites More sharing options...
codehighriga Posted April 7, 2017 Report Share Posted April 7, 2017 Uzdevums tomēr liekas nedaudz izplūdis, nav skaidrs vai gribat implementāciju symfony, laravel, vai kaut kādā vannila php. Kāda ir DB, sesijas, kāds testu freimworks. Šobrīd liekas mazliet nekonkrēti kādu veidolu tam ir jāiegūst. Quote Link to comment Share on other sites More sharing options...
briedis Posted April 7, 2017 Report Share Posted April 7, 2017 10 minutes ago, codehighriga said: Uzdevums tomēr liekas nedaudz izplūdis, nav skaidrs vai gribat implementāciju symfony, laravel, vai kaut kādā vannila php. Kāda ir DB, sesijas, kāds testu freimworks. Šobrīd liekas mazliet nekonkrēti kādu veidolu tam ir jāiegūst. Jēziņ, tač nevajag iebraukt tādās detaļās. Es pats testēju cilvēkus ar ļoti vienkāršu uzdevums - novilkt CSV (paliels fails, 300 megas), izveidot klasi, kas reprezentē ierakstu, izveidot interfeisu, ja mainās datu avots kādreiz, veikt vienkāršu ierakstu kešošanu. Uzdevuma izpildes laiks vidēji 1-3h cilvēkiem aiziet, bet realizācijas krasi atšķirās - cits brutāli saraksta visu vienā failā, cits saskalda visu smalku un vēl pamanās uzrakstīt phpdoc komentārus un ievilkt composeri, lai nebūtu jāraksta autoloadings. Lieki pie****ies detaļām, jo pietiek redzēt cilvēka koda rokrastu, lai saprastu, vai rubī kko, vai tomēr švaks juniors. Tāpēc teiktu, ka uzdevums ir perfekts, jo atstāj vietu izpausties pašam koderim, neieliek striktā vidē. Quote Link to comment Share on other sites More sharing options...
werd Posted April 7, 2017 Author Report Share Posted April 7, 2017 28 minutes ago, codehighriga said: Uzdevums tomēr liekas nedaudz izplūdis, nav skaidrs vai gribat implementāciju symfony, laravel, vai kaut kādā vannila php. Kāda ir DB, sesijas, kāds testu freimworks. Šobrīd liekas mazliet nekonkrēti kādu veidolu tam ir jāiegūst. Jāpiekrīt @briedis teiktajam. Šis uzdevums tika veidots ar domu, ka to varēs izpildīt gan iesācējs (junior), gan pieredzējis (senior) programmētājs. Nekas konkrēts netiek "uzspiests", jo mēŗkis ir iegūt priekšstatu par kandidāta individuālajām spējām (spriestspēju, loģisko domāšanu, tehnisko izdpildījumu utt.). Ja ir vēlme izmantot kādu no ietvariem - droši. Ja šķiet, ka ir nepieciešama datu bāze vai sesijas - droši. Quote Link to comment Share on other sites More sharing options...
codehighriga Posted April 7, 2017 Report Share Posted April 7, 2017 (edited) 32 minutes ago, briedis said: Jēziņ, tač nevajag iebraukt tādās detaļās. Es pats testēju cilvēkus ar ļoti vienkāršu uzdevums - novilkt CSV (paliels fails, 300 megas), izveidot klasi, kas reprezentē ierakstu, izveidot interfeisu, ja mainās datu avots kādreiz, veikt vienkāršu ierakstu kešošanu. Uzdevuma izpildes laiks vidēji 1-3h cilvēkiem aiziet, bet realizācijas krasi atšķirās - cits brutāli saraksta visu vienā failā, cits saskalda visu smalku un vēl pamanās uzrakstīt phpdoc komentārus un ievilkt composeri, lai nebūtu jāraksta autoloadings. Lieki pie****ies detaļām, jo pietiek redzēt cilvēka koda rokrastu, lai saprastu, vai rubī kko, vai tomēr švaks juniors. Tāpēc teiktu, ka uzdevums ir perfekts, jo atstāj vietu izpausties pašam koderim, neieliek striktā vidē. Ja neņem vērā vizuālu koda apskati, kā tu nosaki, vai uzdevums ir izpildīts? Vai ir kāda konsoles komanda kuru tu palaid un tai jāizvada iepriekš zināms rezultāts? Man arī ir tas gods patestēt potenciālos darbiniekus, bet tas, vai darba uzdevums ir izpildīts, tiek primāri noteikts ar jau iepriekš manis uzrakstītiem phpunit testiem. Tādējādi kandidātam ir uzreiz skaidrs kādu klasi es sagaidu un kādu rezultātu sagaidu no tās publiskajām metodēm. Kandidāta ziņā paliek tas, ko dara privātās metodes un kaut kādas apakšklases kuras viņš vai nu veido vai nu neveido (kā jau tu teici - saliek visu vienā failā, vai tomēr saskalda). Tātad primāri es (un pats kandidāts) palaižam testus un noskaidrojam vai uzdevums ir izpildīts. Atkrīt daudzas neskaidrības. Bet kā tu nosaki šo posmu? Tāds posms vispār ir? Vai tikai ver vaļā phpstormu un skaties kodu vizuāli? Kaut kādā līmenī līdzīgu struktūras forsēšanu nosaka @werd piedāvātie interfeisi, bet nu jā, tas ir daudz brīvāk nekā mans variants. Man gribas tā, ka kandidāts atsūta linku uz savu github repozitoriju, es noklonēju un sekundes laikā uzzinu vai uzdevums ir izpildīts. Jums tā nav? Edited April 7, 2017 by codehighriga Quote Link to comment Share on other sites More sharing options...
F3llony Posted April 7, 2017 Report Share Posted April 7, 2017 13 hours ago, jurchiks said: Visiem tiem interfeisiem būs tikai viena implementācija. Tā ir nepareiza interfeisu izmantošana pēc būtības. Zinu, ka testa uzdevums, bet labāk tad būtu vnk ļāvuši developerim pašam izdomāt, ko kā rakstīt. Noteikumi taču ir uzrakstīti. Kāpēc tad tikai viena? Piemēram grozs, nevar būt session-based un db-persisted? Stock nevar būt vairāki backendi, piemēram, integrācijas? Nevar būt dažādas produktu instances, kas implementē vienu vai vairākus interfeisus? Quote Link to comment Share on other sites More sharing options...
werd Posted April 7, 2017 Author Report Share Posted April 7, 2017 14 minutes ago, codehighriga said: Ja neņem vērā vizuālu koda apskati, kā tu nosaki, vai uzdevums ir izpildīts? Vai ir kāda konsoles komanda kuru tu palaid un tai jāizvada iepriekš zināms rezultāts? Man arī ir tas gods patestēt potenciālos darbiniekus, bet tas, vai darba uzdevums ir izpildīts, tiek primāri noteikts ar jau iepriekš manis uzrakstītiem phpunit testiem. Tādējādi kandidātam ir uzreiz skaidrs kādu klasi es sagaidu un kādu rezultātu sagaidu no tās publiskajām metodēm. Kandidāta ziņā paliek tas, ko dara privātās metodes un kaut kādas apakšklases kuras viņš vai nu veido vai nu neveido (kā jau tu teici - saliek visu vienā failā, vai tomēr saskalda). Tātad primāri es (un pats kandidāts) palaižam testus un noskaidrojam vai uzdevums ir izpildīts. Atkrīt daudzas neskaidrības. Bet kā tu nosaki šo posmu? Tāds posms vispār ir? Vai tikai ver vaļā phpstormu un skaties kodu vizuāli? Kaut kādā līmenī līdzīgu struktūras forsēšanu nosaka @werd piedāvātie interfeisi, bet nu jā, tas ir daudz brīvāk nekā mans variants. Šī uzdevuma struktūra nav tāda, lai pateiktu vai uzdevums ir izpildīts vai nē. Būtu muļķīgi uzdevumā nodefinēt jau gatavus vienībtestus un tai pat laikā prasīt izmantot TDD pieeju :) Arkbauer izpratnē senior programmētājs ir cilvēks, kas pats domā nevis vienkārši izpilda katru punktu no uzdevuma apraksta (monkey see - monkey do). 14 minutes ago, codehighriga said: Man gribas tā, ka kandidāts atsūta linku uz savu github repozitoriju, es noklonēju un sekundes laikā uzzinu vai uzdevums ir izpildīts. Jums tā nav? Nē, mums tā nav. Es uzskatu, ka sekundes laikā nav iespējams objektīvi novērtēt programmētāju (it īpaši senior līmeņa). Mēs cilvēkus atlasām individuāli - viena mēraukla visiem neder. Quote Link to comment Share on other sites More sharing options...
codehighriga Posted April 7, 2017 Report Share Posted April 7, 2017 (edited) @werd, vai ceļš, kā tu testēsi saņemot uzdevuma risinājumu ir apmēram šāds? 1. Tev atsūta linku uz github repo 2. Vizuāli novērtē repo, vai ir pievienota readme informācija, instrukcijas, kas tāds? 2. Noklonē repo 3. Palaid paša kandidāta rakstītos testus? 4. Atver koda editorā, novērtē failu struktūru, klašu, interfeisu struktūru, autoloadingu, failu garumu, utt. 5. Novērtē formatējumu, vai ir PSR, vai ir konsistents namings, mainīgo nosaukumi, utt 6. Ja redzētais apmierina, sazinies ar kandidātu? Padiskutējat par vietām kur tev radās jautājumi vai ieteikumi? Kaut ko izlaidu, kaut kur kļūdos? Man šajā sistēmā nedaudz nepatīk tas, ka ir ļoti maz iespēju kodu reāli palaist, eksekjūtot. Varbūt no koda vizuālas apskates uzreiz nepamanīsi kādu performance issue vai ko tādu. Edited April 7, 2017 by codehighriga Quote Link to comment Share on other sites More sharing options...
werd Posted April 7, 2017 Author Report Share Posted April 7, 2017 3 minutes ago, codehighriga said: @werd, vai ceļš, kā tu testēsi saņemot uzdevuma risinājumu ir apmēram šāds? 1. Tev atsūta linku uz github repo 2. Vizuāli novērtē repo, vai ir pievienota readme informācija, instrukcijas, kas tāds? 2. Noklonē repo 3. Palaid paša kandidāta rakstītos testus? 4. Atver koda editorā, novērtē failu struktūru, klašu, interfeisu struktūru, autoloadingu, failu garumu, utt. 5. Novērtē formatējumu, vai ir PSR, vai ir konsistents namings, mainīgo nosaukumi, utt 6. Ja redzētais apmierina, sazinies ar kandidātu? Padiskutējat par vietām kur tev radās jautājumi vai ieteikumi? Kaut ko izlaidu, kaut kur kļūdos? Kaut kas uz to pusi. Quote Link to comment Share on other sites More sharing options...
codehighriga Posted April 7, 2017 Report Share Posted April 7, 2017 4 minutes ago, werd said: Kaut kas uz to pusi. Mind sharing your insights? Ļoti lakoniska atbilde. Būtu interesanti uzzināt vairāk. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.