
Գիտեք, որ երբ դուք պատրաստվում եք փոխել ձեր աշխատանքը և տեղի է ունենում հարցազրույց անցնելու անհրաժեշտություն, առաջին հերթին մտածում եք «պետք է պատրաստվել հարցազրույցի»: Պետք է լուծել խնդիրները HackerRank-ում, կարդալ Crack the coding interview, իմանալ, թե ինչպես է աշխատում ArrayList-ն ու ինչպիսին է դրա տարբերությունը LinkedList- ին: Աա, նաև կարող են հարցնել դասավորություններ, և ակնհայտ կլինի, որ անպ Profesional մի պատասխանել, որ quick sort-ը, ամենայն հավանականությամբ, կլավագույն ընտրությունը լինի.
Բայց մի պահ, դուք ведь ծրագրավորում եք օրական 8 ժամ, լուծում եք հետաքրքիր և ոչ պարզ խնդիրներ, և նոր աշխատանքում, հավանաբար, նույնը կարվեք: Սակայն, որպեսզի անցնեք հարցազրույց, պետք է ինչ-որ բան լրացուցիչ պատրաստվել, նույնիսկ ոչ թե կատարելագործել ձեր առօրյա հմտությունները, այլ սովորել այն, ինչ ձեզ չի անհրաժեշտ եղել միայն ներկայիս աշխատավայրում, և, հավանաբար, չի լինելու նախորդում: Ձեր ընդունված տեսակետների վերաբերյալ, որ computer science-ը մեր արյան մեջ է, և գիշերը համաձայնեք, որ մենք պարտավոր եք աչք փակել, աջից-left նկարագրել ծառի վրայով անցնել, ես պատասխանեմ, որ եթե ես պետք է գործի գնամ տիկնիկային, և գլխավոր հնարքը հենց դա է լինելու ՝ ապա կարող եմ համաձայնվել։ Պետք է այդ հմտությունը ստուգել.
Բայց ինչու ստուգել այժմյան աշխատանքին համապատասխան չկան հմտությունները? Ու երևի դա դարձել է նորաձևություն? Արդյո՞ք Google-ն այդպես է անում? Թող ձեր ապագա թիմի ղեկավարն իր հերթին ստիպված եղած լինի սովորել բոլոր դասավորություններն անցնելուց առաջ, և այժմ զգում է, որ «ամեն լավ ծրագրավորող պարտադիր պետք է իմանա աչքերի փակ իրականացման փաստարկները:»
Սա է, դուք Google չեք (с). Ինչ կարող է թույլ տալ Google-ն, սովորական ընկերությունները թույլ չեն կարող լինել։ Google-ն, վերլուծելով իր աշխատողների տվյալները, որոշել է, թե այդ կոնկրետ դեպքում, հարմարեցրել իր խնդիրները, ճիշտ է, որ պատրաստվածների համար, որոնք լավ էին աշխատում մրցանակ և պարտավոր բնականաբար। Ավելին, կառուցելով ընտրական գործընթացներ, նրանք կարող են թույլ տալ, որ ռիսկ չլինի, երբ նրանք կարող են չընտրել որոշ լավ ինժեներներ, քանի որ նրանք հեշտությամբ չեն լուծում մաթեմատիկական խնդիրները։ Բայց նրանց համար դա խնդիր չէ, Google-ին աշխատելու ցանկացողների թիվը շատ է, որը նստել է դիրքը.
Այժմ եկեք նայենք պատուհանից, և եթե ձեր գրասենյակի առաջ դեռ ինժեներներ կան, ովքեր ցանկանում են ձեր մոտ աշխատել, չեն ճարել խարույկները, և ձեր ծրագրավորողները ավելի հաճախ որոնում են stackoverflow-ում, թե ինչ հերթական Սպրինգային anotացիա պետք է տեղադրել, այլ ոչ թե դասավորվածությունների մանրամասները, ապա, ըստ երևույթին, դուք պետք է մտածեք, արդյոք արժե մոդելավորել Google-ին:
Լավ, եթե այս անգամ Google-ը չփոխեց ու չտվեց պատասխան, ինչ անել? Ստուգել միայն այն, ինչ ծրագրավորողը կանի աշխատանքի ժամանակ: Ի՞նչ եք գնահատում ծրագրավորողների մեջ:
Պատրաստեք չափանիշներ, թե ում ուզում եք վարձել և մշակեք թեստեր, որոնք ստուգում են հենց այդ հմտությունները:
ThoughtWorks
Այստեղ ինչ կապ ունի ThoughtWorks-ն? Այստեղ ես գտա օրինակ ձեվավոր հարցազրույցի: Кто такие ThoughtWorks? Մասնավորապես, դա High-End խորհրդատվական ընկերություն է, որի գրասենյակները գտնվում են ամբողջ աշխարհում, սկսած Չինաստանից, Սինգապուրից մինչև Ամերիկայի համաշխարհային մայրցամաքները, ով զբաղվում է մշակման ոլորտում խորհրդատվությամբ շուրջ 25 տարի, ունի իր գիտական բաժինը, որը ղեկավարվում է Մարտին Ֆաուլերով: Եթե դուք փնտրեք 10 գրքերից բաղկացած ցուցակ, որոնք պետք է կարդալ ծրագրավորողներին, կարող է, որ դրանցից 2-3-ը գրված լինեն ThoughtWorks-ի կողմից, ինչպիսիք են Refactoring by Martin Fowler և Building Microservices: Designing Fine-Grained Systems by Sam Newman կամ Building Evolutionary Architectures
Պատրիկ Կուայի, Ռեբեկա Парսոնսի, Նիլ Ֆորդի կողմից:
Ընկերության բիզնեսը կառուցված է բավականին թանկ ծառայությունների մատուցման վրա, բայց պատվիրատուն վճարում է ֆենոմենալ որակի համար, որը կազմվում է փորձառությունից, ներքին չափանիշներից և, անշուշտ, մարդկանցից: Հետեւաբար, այստեղ շատ կարևոր է ճիշտ մարդկանց վարձակալելը:
Իսկ ովքեր են ճիշտ մարդիկ? Ակնհայտ է, որ յուրաքանչյուրի համար նրանք տարբեր են: ThoughtWorks-ը որոշել է, որ իրենց բիզնեսի մոդելի համար ծրագրավորողների համար ամենակարևոր չափանիշները դրանք են:
- Պարարական մշակման կարողությունը: Այստեղ կարևոր է կարողությունը, այլ ոչ թե փորձը կամ հմտությունը: Ոչ մեկը չի սպասում, որ մարդիկ, ովքեր արդեն 5 տարի պարարական ծրագրավորում են կատարում: Սակայն ցանկություն լսել եւ խորհել մյուսի կարծիքի մասին անհրաժեշտ հմտություն է:
- Թեստեր գրելն ու, իդեալում, TDD կիրառելը:
- SOLID և OOП հասկանալն ու դրանց կիրառումը:
- Նպատակ դնել ձեր կարծիքը: Խորհրդատուն պետք է աշխատի պատվիրատուների ծրագրավորողների հետ, մյուս խորհրդատուների հետ, և քիչ օգուտ կա, եթե մարդը լավ բաներ կատարում, բայց совершенно неспособен донести это до остальных членов команды:
Այժմ կարևոր է հենց այս հմտությունները գնահատել թեկնածուի մոտ: Եվ այստեղ ես ուզում եմ խոսել իմ փորձից ThoughtWorks-ում հարցազրույցի անցնելու վերաբերյալ: Ուզում եմ անմիջապես ասել, որ ես անցել եմ Սինգապուրում և հաջողել, բայց ռեկրուտավորման գործընթացը հանրային է և չի լինի այնքան տարբեր երկրից երկիր:
Քայլ 0: HR
Ինչպես հաճախ бывает, 20 րոպեանոց հարցազրույց HR-ի հետ: Այս մասին չեմ ուզում մարել, միայն կասեմ, որ չեմ տեսնում HR, որը 15 րոպե կարող է պատմել ընկերության մշակման մշակույթի մասին, թե ինչու են նրանք կիրառում TDD, ինչու համախոհ ծրագիրւմ: ՀUsually HR-ները մասամբ հիասթափվում են և խոսում են, որ գործընթացը սովորական է. ծրագրավորողները ծրագրավորում են, թեստավորողները թեստավորում են, կառավարիչները շրջապատում են:
Քայլ 1: Ինչպես ես լավ եմ OOП-ում, TDD-ում?
Հարցազրույցի մեկնարկից 1.5 ժամ առաջ ինձ ուղարկվեց առաջադրանք կատարել Մարս ռովերի սիմուլյատոր:
Մարս ռովերի առաջադրանքըNASA-ն ռոբոտիկ ռովերների խմբեր կտեղադրի Մարսի մի հարթավայրում: Այս հարթավայրը, որն ունի դասավորություն, պետք է չարչարվի ռովերների կողմից, որպեսզի նրանց վրա գտնվող տեսախցիկները ամբողջական տեսարան ստանան շրջապատող տարածքից և ուղարկեն այն Երկիր: Ռովերի դիրքն ու տեղադրությունը ներկայացվում է x և y կոորդինատների համակցությամբ, ինչպես նաև ուղղությունը ներկայացնող մի տառով, որը համապատասխանում է չորս Cardinal կոմպասի ուղղություններից մեկին: Հարթավայրը բաժանված է ցանցի, որպեսզի հեշտացնի նավիգացիան: Օրինակ դիրքը կարող է լինել 0, 0, Ն, որը նշանակում է, որ ռովերը գտնվում է ստորին ձախ անկյունում և նայում է հյուսիս: Ռովերին վերահսկելու համար NASA-ն ուղարկում է պարզ տառերից բաղկացած մի շարք: Հնարավոր տառերը 'L', 'R' և 'M' են: 'L' և 'R' խաբարացնում են ռովերը 90 աստիճան ձախ կամ direita շրջելու, առանց շարժվելու իր կատարած վայրից: 'M' նշանակում է շարժվել մեկ ցանցային կետ առաջ և պահել նույն ուղղությունը:
Հաշվարկեք, որ (x, y)-ի անմիջապես հյուսիսային քառակուսի տրը (x, y+1) է:
ԵՐԿՐ:
Մուտքի առաջին տողը հարթավայրի վերին աջ կորալների կոորդինատներն են, ստորին ձախ կոորդինատներն assumed (0,0) են:
Մուտքի մնացած մասը վերաբերում է տեղադրված ռովերներին: Յուրաքանչյուր ռովերով ունի երկու մուտքի տող: Առաջին տողը ներառում է ռովերի դիրքը, իսկ երկրորդ տողը ապագա կարգավիճակները, որոնք ցույց են տալիս, թե ինչպես պետք է ռովերը հետազոտեն հարթավայրը: Դիրքը կազմված է երկու ամբողջ թվերից և մեկ տառից, որոնք բաժանված են տարածություններով, որոնք համապատասխանում են x և y կոորդինատներին և ռովերի ուղղությանը:
Յուրաքանչյուր ռովերը կավարտվի հերթով, ինչը նշանակում է, որ երկրորդ ռովերը չի սկսի շարժվել, մինչև առաջինը չի ավարտի շարժումը:
ԱՎ ԱՐԱԳ:
Յուրաքանչյուր ռովերի ելքը պետք է լինեն նրա վերջնական կոորդինատներն ու ուղղությունը:
ՆԱՆԵՆՔ:
Պարզապես իրականացնել վերոնշյալ պահանջները և ապացուցել, որ վակուումի մաքրիչը աշխատում է, գրելով այն մասին, որ միջնամիջոցները դրա համար են:
Օգտվողի ինտերֆեյսի ցանկացած ձև ստեղծելը դուրս է շրջանակից:
Պրոբլեմը լուծել նախապատրաստական մոտեցմամբ (TDD) նախընտրելի կլինի:
Ձեր ունեցած ժամանակահատվածում մենք ավելի շատ անհանգստանում ենք որակի մասին, քան ամբողջականության:
* Ես չեմ կարող տեղադրել առաջադրանքը, որը ինձ ուղարկել են, սա հները հարցադրանք է, որը տրվում էր մի քանի տարի առաջ: Բայց հավատացեք, որ սկզբունքորեն ամեն ինչ մնացել է նույնը:
Բաժանաբար ուզում եմ ուշադրություն դարձնել գնահատման չափանիշներին: Որքան անգամ դուք հանդիպել եք իրավիճակներին, երբ կարևոր բաները, որոնք կարևոր են թեկնածուների համար, բացարձակապես կարևոր չեն ստուգման ժամանակ և հակառակը: Ոչ բոլորը չնայած մի արժեքներին, բայց շատերը կարող են վերցնել ձեր արժեքները և հետևել դրանց, եթե դրանք հստակ գրված են: Ուստի, գնահատման չափանիշներից անմիջապես պարզ է, որ այս փուլում կարևորագույն հմտությունները
- TDD;
- ՕՕՊ օգտագործելու և պահպանվող կոդ գրել սովորելու ունակությունը;
- Զույգ ծրագրավորման ունակությունները:
Սա, ինձ հաջողեցրեցին, որ այս 1.5 ժամը պետք է ծախսեմ մտածելու, թե ինչպես պիտի լուծեմ առաջադրանքը, այլ ոչ թե կազմելու կոդ: Կոդը մենք միասին կգրենք:
Երբ մենք հանդիպեցինք, տղաները կարճ պատմեցին, quién են և ինչով զբաղվում են, և առաջարկեցին սկսել զարգացման գործընթացը:
Տեսեք, որ ես երբեք չեմ զգացել, որ գտնվում եմ հարցազրույցի վրա: Կան նրանք, ովքեր աշխատում եք: Նրանք օգնում են, առաջարկների վրա քննարկումներ են առնում, նույնիսկ վիճում, թե ինչպես առավել լավ անել: Հարցազրույցի ժամանակ ես մոռացել էի, թե ինչպես JUnit 5-ում ստուգել, որ մեթոդը ուղղությունները նետում է: Նրանք առաջարկեցին շարունակել գրել փորձը, mientras որ մեկը գաղափարեն էր, cómo hacerlo:
Մի քանի ժամ անց հարցազրույցից ես ստացել եմ կառուցողական հետադարձ կապ՝ ինչն են հավանել և ինչն՝ ոչ: Իմ դեպքում գնահատեցին Sealed դասերի օգտագործումը null օբյեկտի որպես այլընտրանք; այն, որ կոդի գրվածքից առաջ ես գրել էի псевդոկոդ՝ ինչպես կուզեի կառավարել ռոևրը, և այնպես ստացա դասերի նախնական նախագիծը, առնվազն նրանց, որոնք օգտագործվում են ռոբոտի API-ում:
Քայլ 2. Tell us
Հարցազրույցից մեկ շաբաթ առաջ ինձ խնդրեցին պատրաստել վտանգներ սպասարկային թեմայի մասին: Ֆորմատը պարզ է և սովորական՝ 15 րոպե ներկայացում, 15 րոպե հարցերի պատասխան:
Ես ընտրեցի Clean Architecture by Uncle Bob-ը: Եվ մեկ անգամ ևս ինձ հարցազրույց տարավ մի քանի մարդ: Դա իմ առաջին փորձն էր ներկայացման անգլերեն լեզվով, և, հավանաբար, եթե լինեի ճնշման տակ, ես չէի մրցելու: Բայց ևս մեկ անգամ, ինձ երբեք չհայտնվեց այն զգնդությունը, որ ես հարցազրույցի մեջ եմ: Ցանկալիորեն, ես պատմում էի, նրանք внимательно слушают: անգամ ավանդական հարց ու պատասխանների նստաշրջանը նման չէր հարցազրույցի, երևում էր, որ հարցերն ուղղվում են ոչ թե "խորտակում", այլ նրանք, որոնք իսկապես հետաքրքրում էին իմ ներկայացմանը:
Մի քանի ժամ անց հարցազրույցից ստացել եմ հետադարձ կապ՝ ներկայացումը շատ օգտակար էր և նրանք ստացան անկեղծ հաճույք լսելուց:
Քայլ 3. Արտադրական որակի կոդ
Հրավիրելով, որ սա տեխնիկական հարցազրույցների վերջին փուլն է, ինձ խնդրեցին տանը հասցնել կոդն արտադրական պատրաստ վիճակի, հետո ուղարկել կոդն վերանայման և նշանակել հարցազրույց, որտեղ խնդիրների պահանջները կփոխվեն և կոդը պահանջում է փոփոխություն: Կարճ ասած, կարող եմ ասել, որ կոդի վերանայումը կատարվում է մթի, վերանայողները չգիտեն ինչպես կապված ընթացքը, այնպես էլ չեն տեսնում նրա CV-ն, անգամ չեն տեսնում նրա անունը:
Զանգեք, և կրկին մի քանի տղերք մոնիտորի այն կողմում: Ամեն ինչ այնպես է, ինչպես առաջին հարցազրույցում. գլխավորն այն է, որ չմոռանաք TDD-ի մասին, պատմեք, թե ինչ եք անում և ինչու: Եթե նախկինում չեք պատրաստել TDD, ապա խորհուրդ եմ տալիս սկսել դա անել, ոչ թե այդ ընկերություններում անհրաժեշտ լինելու պատճառով, այլ թե որքանով է սա զգալիորեն պարզեցնում ձեր կյանքը, նվազեցնում ձեր ճնշումը ՝ եթե ուզում եք: Հիշեք, թե որքան դժվար էր բջջային արկածախնդիրի միջոցով սխալը գտնելը, որը հակասում էր միայն բրաուզերում, և դուք չեք կարող reproduce այն փորձարկումներով: Եվ այժմ պատկերացրեք, թե ինչ պետք է լինի այդպիսի սխալը բռնելու համար հարցազրույցի ժամանակ՝ մի քանի մրթթել մազ ստացած եք: Ինչ է տրվում TDD-ով? Դուք փոխեցիք ծածկագիրը և անակնկալորեն հասկացաք, որ հիմա փորձարկումները կարմիր են, իսկ քանի որ ինչ սխալ է, դժվարանում եք առաջին փորձով գիտակցել: Բարվոք, ասում ենք հարցազրույց անցնողներին "ՈՒպս", սեղմում ենք Ctrl-Z և սկսում ենք փոքր քայլերով առաջ անցնել: Այո, անհրաժեշտ է TDD-ի օգտագործմամբ մշակման հմտություն ձևավորել, որը թույլ կտա հասնել նպատակին, այնպես որ փորձարկումներն ունենան մշտական կանաչ, այլապես կարմիր կեսօր իր մեծ վերաֆակտորինգի պատճառով: Դա նույնպիսի հմտություն է, ինչպես որ լավ կոդ գրելու կամ արտադրողական կոդ ունենալու ունակությունը.
Ուստի, ինչքան լավ է ձեր կոդը փոփոխությունների ենթարկվող կախված է նրանից, թե ինչ դիզայն եք սկզբից դրվել, որքան պարզ է այն և որքան լավ են ձեր փորձարկումները.
Հարցազրույցից հետո ստացա արձագանք մի քանի ժամվա ընթացքում: Այս փուլում հասկանում եմ, որ ես փաստացի անցել եմ և մնացել է միայն շատ փոքրը ` Ֆաուլերի հետ հանդիպումից առաջ.
Հետաքրքիր 4. Մրցաթերթական փուլ. Մշտական տեխնիկական հարցեր: Մենք ուզում ենք իմանալ, թե ով եք դուք!
Անմիջապես ասած, ինձ համար նման հարցադրում ես մի փոքր զարմացած: Ինչպե՞ս կարելի է հասկանալ, թե ով եմ ես մեկ ժամ զրույցի ընթացքում: Եվ առավել ևս, ոնց կարելի է դա հասկանալ, երբ ես խոսում եմ ինձ ոչ հայրենական լեզվով, իսկ բացահայտ ասած, բավականին վատ և դժվարությամբ: Վ προηγի հարցազրույցներում ինձ համար ավելի հեշտ էր պատմել, քան հարցերին պատասխանելը, և դրա պատճառը եղել է ՝ շեշտը: Հնարավոր է, որ հարցազրույցներից մեկի անցնողը ասիական էր՝ նրանց շեշտը բավականին յուրահատուկ է եվրոպական ականջի համար: Այդ պատճառով որոշեցի կիրառել պրոակտիվ մոտեցում՝ պատրաստել ինքնակենսագրական և հարցազրույցի սկզբում առաջարկել պատմել ինձ մասին այդպիսի ինքնակենսագրության հետ միասին: Եթե նրանք համաձայնեն ՝ ապա առնվազն կլինեն քիչ հարցեր ինձ մոտ, եթե իրենց մերժեն առաջարկը ՝ անկեղծ ասած, 3 ժամ իմ կյանքի, որոնք հատկացրած են նախշերի վրա՝ բավականին մեծ գին չէ: Բայց ինչ գրել ինքնակենսագրության մեջ? Բիոգրաֆիա՝ Ծնվել եմ այնտեղ, այն ժամանակ, դպրոց եմ գնացել, համալսարանն ավարտել եմ՝ ո՞վ է դա հետաքրքրում:
Եթե մի փոքր որոնենք Thoughtworks-ի մշակույթի մասին, կարող ենք գտնել Մարթին Ֆաուլերի հոդվածը [https://martinfowler.com/bliki/ThreePillars.html], որտեղ նկարագրվում են 3 Pillars: Հաստատուն բիզնես, Ծրագրային գերազանցություն և Հասարակական արդարություն։
Թողնենք, որ Ծրագրային գերազանցությունը արդեն ինձ քննադատել են։Ում մնում է ցույց տալ Հաստատուն բիզնեսը և Հասարակական արդարությունը։
Այս պարագայում ես որոշեցի կենտրոնանալ վերջինի վրա։
Սկզբում պատմեցի, թե ինչու է ThoughtWorks-ը հատուկ — դեռ համալսարանում կարդում էի Մարթին Ֆաուլերի բլոգը, ու այստեղից էլ իմ սերը «Clean code»-ի նկատմամբ։
Ժամանակին կարելի է ներկայացնել նախագծերը տարբեր տեսանկյունների։ Ես մշակել եմ բժշկության ոլորտի ծրագրային ապահովում, որը հեշտացրել է հիվանդների կյանքը, և անգամ ըստ պատմականի, երբեմն, փրկել մեկի կյանքը։ Ցանկացած բարելավում, այնուամենայնիվ, նվիրված է հասարակությանը։
Ուզո՞ւմ եք իմ մասին իմանալ։ Լավ, իմ հոբբին լուսանկարչությունն է. տասը տարի ձեռքս ֆոտոխցիկ ունեմ, կան լուսանկարներ, որոնք не очень стыдно показать։ Մի ժամանակ նույնպես օգնում էի կատուների ապաստան՝ լուսանկարում էի կատուների, որոնք մշտական տուն են հարկավոր։ Իսկ լավ լուսանկարներով ավելի հեշտ է գտնել կատվի տուն։ Եվ ուրեմն, մոտ 100 կատու եմ լուսանկարել 🙂
Ի վերջո, իմ ցուցադրման 80%-ը լցված էր կատուներով։
Հայտարարությունից անմիջապես հետո ինձ գրել է HR-ը, որ դեռ չգիտի հարցազրույցի արդյունքները, բայց արդեն ամբողջ գրասենյակը տպավորված է կատուներով։
Վերջում ես սպասեցի արձագանքի — ես բոլորին բավարարեցի որպես անձնավորություն։
Բայց HR-ը վերջնական խոսակցության ընթացքում բարեհաճ կերպով պատմեց, որ Հասարակական արդարությունը շատ լավ է և անհրաժեշտ, բայց ոչ բոլոր նախագծերը նման են։ Նա հարցրեց, չի՞ վախեցնում դա ինձ։ Ընդհանուր առմամբ, ես մի փոքր ավելացրի Հասարակական արդարության մասին, լինում է 🙂
Եզրակացություն
Քանի որ, ես արդեն մի քանի ամիս աշխատում եմ Սինգապուրում Thoughtworks-ում, տեսնում եմ, որ այստեղ շատ ընկերություններ վերցնում են «հարևանների լավագույն հարցազրույցի պրակտիկաները»՝ օգտագործելով թերթիկներ և Whiteboard ծրագրված ամեն ինչի համար, այն դեպքում, երբ աշխատեք ավելի մեծ ծրագրերի իջնել որտեղ Spring, Symfony, RubyOnRails (անհրաժեշտը նշեք) չի պահանջվում։ Ներդրողները շաբաթական արձակուրդ են վերցնում հարցազրույցից առաջ, որպեսզի «պատրաստվեն»։
Thoughtworks-ում, բացի չափանիշների նկատմամբ բավարար պահանջներից, առաջնահերթ մեծ ուշադրություն է դարձվում այս սկզբունքներին։
Հարցազրույցի ուրախություն։ Այս ամենը երկուս կողմերի համար։ Սիրով խոսքը, եթե ուզում եք լավագույն անձնակազմը ստանալ (իսկ ով չի ուզում), հարցազրույցը՝ սա մի շուկա չէ, որտեղ ընտրում են ստրկություն, այլ տեսանելիություն, որտեղ և հրավիրյալը, և թեկնածուն գնահատում են միմյանց։ Եթե թեկնածուն հաճելի զգացումներ ունի ընկերության հետ, շատ հավանական է, որ նա կընտրի հենց այդ ընկերությունը։
Ժողվեցող հարցազրույցներ մատության կողմի կողմերի հավասարակշռման համար։ Thoughtworks-ում զուգակցված ծրագրավորումը դե-ֆակտո ստանդարտ է: Եվ եթե այս պրակտիկան հնարավոր է իրականացնել այլ ոլորտներում, TW փորձում է դա անել: Յուրաքանչյուր փուլում հարցազրույցը անցկացնում են 2 մարդ: Այսպիսով, յուրաքանչյուր պերսոն գնահատվում է առնվազն 8 մարդու կողմից, և TW փորձում է ընտրել հարցազրույց անցկացնողներին տարբեր նախապատմություններով, տարբեր ուղղություններով (ոչ միայն տեխնիկական մասնագետներ) և սեռերով:
Վերջ ին վերջ, աշխատանքի ընդունվելու որոշումը կայացվելու է առնվազն 8 մարդու կարծիքի հիման վրա, և ոչ մեկի վրա չկա որոշիչ ձայնի իրավունք:
Արժեքների վրա հիմնված աշխատանքի ընդունում Երբևէ չէ, որ որոշումը հիմնվի "հետաքրքիր է-չէ, հետաքրքիր է" թեկնածուի մասին, յուրաքանչյուր դերակատարության և յուրաքանչյուր փուլում մշակվել է ձև, որը ներառում է գնահատվող արժեքները: Այս ընթացքում գնահատման գործընթացում շատ խորհուրդ է տրվում գնահատել ոչ թե որոշակի দক্ষության փորձը, այլ նրա կիրառման ունակությունը: Այսպիսով, եթե թեկնածուի համար հնարավոր չի եղել կիրառել որոշակի հմտություններ, ինչպիսիք են TDD-ն, բայց նա, այնուամենայնիվ, փորձում է դա կիրառել, լսում է ճիշտ օգտագործման վերաբերյալ խորհրդադրումներ, ապա նրա հետ հարցազրույցը անցնելուն քիչ շանսեր կան:
Կրթության վկայականներ չեն պահանջվում TW-ն չի պահանջում թեկնածուից պահանջվող վկայականներ կամ կրթություն համակարգչային գիտությունների ոլորտում: Գնահատվում են միայն ունակությունները:
Աυτόպես առաջին հարցազրույցն էր, որ անցել եմ օտար ընկերություններում, որը ես պետք չէ պատրաստվել: Պարբերաբար յուրաքանչյուր փուլից հետո ես չէի զգում, որ ես խորտակված եմ, ազատվելու փոխարեն ես ուրախ էի, որ կարող եմ կիրառել լավագույն պրակտիկաները, որ մարդիկ վեբ գումարածի մոտ գնահատում են դա, և անշուշտ դա կիրառում են ամեն օր:
Մի քանի ամսվա անցողությունից հետո, կարող եմ ասել, որ սպասումները լիովին արդարացվել են: Ինչպես է ThoughtWorks-ը տարբերից սովորական ընկերությունից: Սովորական ընկերությունում դուք կարող եք գտնել լավ ծրագրավորողներ և հաճելի մարդիկ, բայց TW-ում դրանց կոնցենտրացիան գերազանցում է:
Եթե ցանկանում եք միանալ ThoughtWorks-ին, բացակայում են աշխատատեղերը, որոնք կարելի է դիտել:
Այնպես որ, ես առաջարկում եմ ուշադրություն դարձնել հետաքրքիր աշխատատեղերին:
Հետագահ ծրագրավորող: , , ,
Փորձառու ծրագրավորող: , , ,
Ծրագրավորող: , ,
Փորձառու տվյալների مهندس:
Որակի վերլուծաբան:
Վարորդություն: , ,
(Ես ուզում եմ ազնիվ նախազգուշացնել, որ հղումը ռեֆերալ է, եթե դուք եք անցնում TW, ապա ես կստանամ հաճելի բոնուս): Ընտրեք գրասենյակը, որը ճիշտ է ձեզ համար, ոչ միայն Եվրոպայով սահմանափակվել: Իրականում, ամեն 2 տարին մեկ, TW-ը ուրախ կլինի ձեզ տեղափոխել ուրիշ երկիր, որովհետեւ դա ThoughtWorks-ի քաղաքականության մի մասն է, այսպիսով մշակույթն տարածվում է և միջինեցնում է:
Մի վախեցեք հարցեր տալ մեկնաբանություններում կամ խնդրել, որ ես ձեզ խորհուրդ տամ:
Եթե թեման հետաքրքիր է ձեզ, ես կգրեմ, թե ինչպես է աշխատել ThoughtWorks-ում և թե ինչպես է ապրել Սինգապուրում:
Ընտանիք: habr.com
