Programer, pindhah menyang wawancara

Programer, pindhah menyang wawancara
Gambar dijupuk saka video saka saluran "Amethysts militan»

Kira-kira 10 taun aku kerja dadi programmer sistem Linux. Iki minangka modul kernel (ruang kernel), macem-macem daemon lan nggarap hardware saka ruang pangguna (ruang pangguna), macem-macem bootloader (u-boot, lsp.), firmware pengontrol, lan liya-liyane. Malah kadhangkala kedaden kanggo Cut web-antarmuka. Nanging luwih kerep kedaden aku kudu njagong karo wesi soldering lan sesambungan karo perancang PCB. Salah sawijining masalah karya kasebut yaiku angel kanggo netepake tingkat kompetensi sampeyan, amarga sampeyan bisa ngerti siji tugas kanthi jero, lan sabanjure sampeyan bisa uga ora ngerti. Siji-sijine cara sing cukup kanggo ngerti ngendi sing kudu dituju lan arus saiki yaiku kanggo wawancara.

Ing artikel iki, aku pengin ngringkes pengalaman babagan wawancara kanggo lowongan programmer sistem linux, fitur wawancara, kerja lan cara kanggo netepake tingkat pengetahuan pribadi ing komunikasi karo majikan sing bakal teka lan apa sing ora dikarepake. saka iki.

Bakal ana kontes cilik kanthi hadiah ing artikel kasebut.

Fitur Profesi

Programmer sistem, ing spesifik sing aku kerja, iku universal lengkap: Aku kudu nulis kode lan debug hardware. Lan asring ana perlu kanggo solder soko dhewe. Secara periodik, kedadeyan pangaturan hardware banjur ditransfer menyang pangembang. Mulane, kanggo bisa ing wilayah iki mbutuhake basis kawruh cukup apik, loro ing bidang sirkuit digital lan ing bidang program. Amarga iki, asring wawancara kanggo programmer sistem katon kaya nggoleki spesialis elektronik.

Programer, pindhah menyang wawancara
Papan kerja khas programmer sistem.

Ing foto ing ndhuwur - papan kerja khas nalika driver debugging. Analisa logika nuduhake kabeneran pesen sing dikirim, osiloskop ngontrol bentuk ngarep sinyal. Uga, debugger jtag, sing digunakake nalika alat debugging standar ora bisa ngatasi maneh, ora mlebu ing pigura. Lan kanthi kabeh armada peralatan iki sampeyan kudu bisa kerja.

Asring kedadeyan yen resolder sawetara unsur, mbenerake kesalahan topologi luwih cepet lan luwih gampang tinimbang nggawa produk menyang installer. Banjur stasiun soldering uga dumunung ing papan kerja sampeyan.

Fitur pangembangan liyane ing tingkat driver lan hardware yaiku Google ora mbantu. Asring sampeyan kudu nggoleki informasi babagan masalah sampeyan, lan ana telung pranala, sing loro minangka pitakonan sampeyan dhewe ing sawetara forum. Utawa luwih elek, nalika sampeyan ndeleng pitakonan saka wong miskin sing padha takon 5 taun kepungkur ing mailing list kernel, lan ora tau entuk jawaban. Ing karya iki, saliyane kesalahan ing desain hardware lan piranti lunak, asring ana kesalahan dokumentasi - iki mbokmenawa masalah sing paling abot lan ora nyenengake. Kadhangkala ndhaptar diterangake kanthi salah, utawa ora ana katrangan kanggo dheweke. Masalah kasebut ditanggulangi mung kanthi cara ngetik ilmiah nomer acak menyang register tartamtu (jinis mbalikke). Asring mengkono sing sawetara fungsi ditempelake ing prosesor, nanging ora ana siji wis dipun ginakaken fungsi iki kajaba kanggo sampeyan (utamané yen prosesor anyar). Lan iki mlaku-mlaku ngubengi lapangan kanthi garu, sing 70% kanggo bocah-bocah. Nanging nalika ana dokumentasi, sanajan ana kesalahan, iki wis maju. Cukup asring kedadeyan yen ora ana dokumentasi, lan ing kana ladang ranjau wiwit mlaku nalika wesi diobong. Lan ya, aku uga sukses ngrampungake masalah kasebut.

wawancara

Mratelakake panemume, sampeyan kudu pindhah menyang wawancara nang endi wae paling ora saben setengah taun, sanajan sampeyan seneng karo proyek lan ora pengin ngganti. Wawancara ngidini sampeyan ngerti level sampeyan minangka spesialis. Aku ngira yen wawancara sing paling penting yaiku wawancara sing gagal. Iku sing paling akurat nuduhake bottlenecks kawruh sing kudu tightened.

Fitur liyane sing menarik yaiku kualitas wawancara. Iki minangka pengamatanku, lan ora bener, aku ngakoni yen aku pancen begja. Yen wawancara lumaku miturut skenario:

  • marang kita bab sampeyan dhewe;
  • kita duwe tugas kuwi;
  • sing disenengi?

Lan yen sawise dialog iki sampeyan seneng saben liyane, sampeyan bisa kerja, banjur minangka aturan, perusahaan lan tugas dadi nyenengake lan nyukupi. Yen wawancara kaya ngliwati 12 bunderan neraka: wawancara pisanan karo HR, banjur wawancara karo klompok programer, banjur direktur, luwih akeh peer, lan liya-liyane, banjur minangka aturan, iki minangka organisasi gagal sing aku ora kerja. suwe banget. Maneh, iki minangka pengamatan pribadi, nanging minangka aturan, birokrasi sing akeh banget lan proses perekrutan sing dawa nuduhake manawa proses sing padha ditindakake ing njero perusahaan. Kaputusan ditindakake kanthi alon lan ora efisien. Ana kahanan mbalikke nalika ana bunderan saka neraka Interview, lan perusahaan dadi nggantheng, lan nalika, sawise clapping tangan, perusahaan dadi rawa, nanging iki arang.

Yen sampeyan mikir yen skenario patemon, ngomong babagan sampeyan dhewe, lan disewakake mung ana ing perusahaan cilik, mula ora. Aku wis ndeleng iki ing perusahaan gedhe banget sing makaryakke luwih saka atusan wong lan diwakili ing pasar donya. Iki mekanisme normal, utamané yen sampeyan duwe rekaman trek sugih lan iku bisa kanggo nelpon juragan sadurungé lan takon bab sampeyan.

Kanggo kula, indikator sing apik banget kanggo perusahaan nalika dijaluk nuduhake conto proyek lan kode. Langsung nuduhake tingkat persiapan pelamar. Lan, kanggo aku, saka sudut pandang milih calon, iki minangka cara pemilihan sing paling efektif tinimbang wawancara sing apik. Nyatane, ing wawancara, sampeyan bisa gagal saka kasenengan, utawa kosok balene, metu ing adrenalin. Nanging ing karya nyata, sampeyan ora bisa ngatasi tugas nyata. Lan aku uga nemoni iki nalika diwawancarai dhewe. Spesialis teka, nuduhake awake kanthi sampurna, aku seneng karo dheweke, dheweke seneng karo kita. Lan kanthi tugas sing paling gampang, dheweke nandhang sangsara sajrone sasi, minangka asil, programer liyane ngrampungake sawetara dina. Aku kudu pisah karo programer kasebut.

Ing wawancara, aku utamane ngurmati tugas pemrograman. Lan sing kudu ditangani nalika rapat, stres, lan peer. Pisanan nuduhake carane siap kanggo cepet lan akurat ngatasi masalah ing kahanan ngepenakke lan darurat. Sing nomer loro nuduhake tingkat kompetensi lan kemampuan kanggo nggoleki informasi lan ngrampungake masalah saiki.

Pakaryan sing paling menarik yaiku ing kompleks pertahanan negara kita. Ing proses kerja, aku kudu ngrampungake tugas sing luar biasa sing ora bisa diimpi dening para programer komersial. Superkomputer, ngrancang router, macem-macem sistem pertempuran nodal - iki pancen nyenengake. Nalika sajrone parade sampeyan ndeleng kompleks sing nyimpen kode sampeyan, pancen apik banget. Cukup aneh, wawancara ing perusahaan kasebut biasane banget prasaja, secara harfiah teka, disenengi - ditampa (mbokmenawa spesifik militer, sing ora seneng ngomong, ditumpangake). Tugas-tugas sing kudu daklakoni ing kana pancen menarik lan angel. Kanthi pengalaman, mula luwih becik sinau saka dheweke dadi programmer sistem kualitas. Ana uga cacat, lan iki dudu upah sing sithik. Saiki, gaji ing kompleks pertahanan cukup prayoga, kanthi bonus lan barang. Minangka aturan, iki minangka birokrasi sing gedhe, jam kerja sing ora teratur, kerja cepet-cepet tanpa wates, kerja kanthi stres. Ing kasus tartamtu, rahasia ora bisa ditolak, sing nambah masalah tartamtu kanggo lelungan ing luar negeri. Plus, mesthi, tirani bos-boots, lan iki, sayangé, uga kedadeyan. Senajan pengalaman karya karo wakil saka customer, Aku duwe, banget penake. Iki minangka kesan kolektif saka telung lembaga riset lan perusahaan sing beda-beda sing ana gandhengane karo tatanan pertahanan negara.

Tugas kanggo wawancara

Supaya ora ana kesalahpahaman lan supaya ora ngganti perusahaan sing diwawancarai, aku ora bakal nggodha nasib lan nuduhake data kasebut. Nanging aku ngucapke matur nuwun kanggo saben wawancara, kanggo wektu sing diwenehake wong, kanggo kesempatan kanggo ndeleng dhewe saka njaba. Aku mung bisa ujar manawa tugas kasebut ana ing perusahaan internasional gedhe sing diwakili ing macem-macem negara.

Aku bakal menehi pitutur marang kowe sing paling menarik: apa tugas sing diwenehake ing wawancara. Umumé, pitakonan sing paling kerep kanggo lowongan programmer sistem lan programmer mikrokontroler yaiku operasi bit, ing macem-macem variasi. Mulane, nyiapake dhewe ing arah iki.

Topik polaritas kapindho yaiku pointer, iki kudu mumbul langsung saka untu. Supaya dheweke tangi sampeyan ing tengah wengi lan sampeyan bisa ngandhani lan nuduhake kabeh.

Saka sawetara wawancara, aku nyeret pitakonan ing sirahku, lan aku bakal nggawa dheweke menyang kene, amarga aku nemokake dheweke cukup menarik. Aku sengaja ora menehi jawaban kanggo pitakonan kasebut, supaya para pamaca bisa mangsuli pitakon kasebut kanthi mandiri ing komentar lan ana bubuk mesiu nalika ngliwati wawancara nyata.

Pitakonan #1

I. Kanggo kawruh SI. Apa tegese entri ing ngisor iki:

const char * str;

char const * str;

const * char str;

char * const str;

const char const * str;

Apa kabeh entri bener?

II. Napa program iki bakal menehi kesalahan segmentasi?

int main ()
{
       fprintf(0,"hellon");
       fork();
       return(0);
}

III. Kanggo kapinteran.

Ana teken dawane siji meter. Semut sepuluh kanthi acak tiba ing kono, crawling ing arah sing beda-beda. Kacepetan gerakan siji semut yaiku 1 m / s. Yen semut ketemu karo semut liyane, semut iku mubeng lan nyusup menyang arah ngelawan. Apa wektu maksimum sampeyan kudu ngenteni kabeh semut tiba saka kelet.

Wawancara sabanjure gagal kanggo aku, lan aku nganggep minangka sing paling migunani ing praktik pemrograman. Iku nuduhake ambane incompetence sandi. Sadurunge wawancara iki, aku kenal karo saben pitakonan kasebut lan dheweke terus-terusan ketemu ing praktikku, nanging piye wae aku ora nggatekake dheweke, lan aku ora ngerti ing limang. Mulane, aku gagal ujian iki kanthi isin. Lan aku ngucapke matur nuwun banget yen kegagalan kuwi kedaden, wis efek paling sobering ing kula. Sampeyan mikir sing spesialis kelangan, ngerti circuitry, antarmuka, bisa karo kernel. Banjur sampeyan duwe pitakon nyata lan sampeyan nglangi. Dadi ayo padha ndeleng.

Pitakonan Wawancara #2

masalah hardware.

  • Carane telpon sistem linux diatur ing basa assembly ing prosesor ARM, ing x86. Apa bedane?
  • Apa tegese sinkronisasi? Fasilitas sinkronisasi apa sing bisa digunakake ing konteks interupsi, sing ora, lan kenapa?
  • Apa bedane bis i2c lan bis spi?
  • Napa ana terminator ing bis i2c lan apa regane?
  • Bisa RS-232 antarmuka bisa ONLY ing loro kabel: RX lan TX? Ing kene aku bakal menehi jawaban: Pranyata miskin, ing 9600, nanging bisa!!!
  • Lan saiki pitakonan kapindho: kenapa?
  • Apa cara paling apik kanggo ngatur garis sinyal lan daya ing papan multilayer lan ngapa? Daya ing lapisan, utawa garis sinyal ing lapisan? (Pitakonan iku umume murni ing circuitry).
  • Yagene garis diferensial duwe jejak menyang endi wae bebarengan?
  • Bus RS-485. Biasane ana terminator ing baris kasebut. Nanging, kita duwe sirkuit bintang, kanthi jumlah plug-in sing variabel. Apa cara kanggo nyegah tabrakan lan gangguan sing kudu digunakake?
  • Apa wit abang lan binar?
  • Kepiye cara nggarap cmake?
  • Pitakonan babagan mbangun yocto linux.

Tugas kanggo wawancara iki:

1. Nulis fungsi sing inverts ing uint32_t kabeh bit. (garap karo beats populer banget ing wawancara, aku nyaranake)
2.

int32_t a = -200;
uint32_t b = 200;
return *(uint32_t) * (&a)) > b;

Apa fungsi iki bakal bali? (solusi ing kertas, tanpa komputer)

3. Fungsi ngitung rata-rata aritmetika saka rong wilangan int32_t.

4. Apa cara output ing program, kalebu. menyang stream kesalahan.

Pilihan katelu relatif anyar, lan aku ora bakal kaget yen isih ana profil kaya ngono, mula aku ora bakal ngumumake perusahaan kasebut supaya ora ngganti ... lan yen sampeyan ngerteni pitakon sampeyan, mula aku ngucapake salam :).

Pitakonan Wawancara #3

  1. Conto kode traversal wit diwenehi, iku perlu kanggo ngomong apa wis rampung ing kode iki lan nuduhake kasalahan.
  2. Tulis conto utilitas ls. Kanthi pilihan paling gampang "-l".
  3. Menehi conto carane nggawe link statis lan dinamis. Apa bedane?
  4. Kepiye cara kerja RS-232? Apa bedane antarane RS-485 lan RS-232? Apa bedane antarane RS-232 lan RS-485 saka sudut pandang programmer?
  5. Kepiye cara kerja USB (saka sudut pandang programmer)?
  6. Terjemahan teks teknis saka Rusia menyang Inggris.

Wawancara sing sukses ora dadi jaminan kanggo sukses

Bab iki luwih kamungkinan ora malah kanggo programer (sanajan kanggo wong-wong mau banget), nanging luwih kanggo HR. Perusahaan sing paling nyukupi ora kanthi tliti ndeleng asil wawancara. Iku normal kanggo nggawe kesalahan, paling asring padha ndeleng carane wong ngerti carane ngatasi masalah lan alesan.

Salah sawijining masalah utama yaiku calon bisa ngrampungake masalah ing wawancara, nuduhake dheweke dadi spesialis sing apik, nanging gabung karo tugas nyata sing sepisanan. Aku ora bakal ngapusi, aku uga duwe iki. Dheweke kasil ngliwati kabeh bunderan neraka, ngrampungake kabeh tugas tes, nanging ing kahanan nyata, karya kasebut dadi angel banget amarga ora duwe pengalaman. Mlebet ing kapal dudu tugas sing paling angel. Sing paling angel yaiku tetep ing perusahaan iki.

Mulane, aku luwih percaya marang perusahaan sing nindakake wawancara prasaja karo calon lan ujar: sawise sasi kapisan kerja, bakal jelas apa sampeyan cocok kanggo kita utawa ora. Iki pendekatan sing paling nyukupi, ya, mbok menawa larang sethitik, nanging langsung cetha sapa sing.

Ana pilihan liyane kanggo wawancara: yen sampeyan kasil lulus, nanging miturut asil wawancara, sampeyan ngerti yen majikan ora cukup. Aku langsung nolak kerja yen aku ditawani dadi wirausaha individu, njanjeni penghasilan gedhe. Iki minangka wangun evasion pajak kanggo organisasi operasi, lan kenapa masalah majikan kudu dadi perhatian kanggo kula minangka programer? Pilihan liyane yaiku macem-macem struktur negara. Aku duwe wawancara, minangka asil aku ditawani gaji sing apik, nanging dheweke ujar manawa programer sadurunge mandheg, lara, seda, dadi binge amarga beban kerja lan dina kerja diwiwiti jam 8 esuk. Saka panggonan sing kaya ngono, dheweke uga mlayu supaya sikile padhang. Ya, HR, elinga yen programer siap nolak malah lowongan sing paling enak yen dina kerja kudu diwiwiti esuk.

Ing pungkasan, aku bakal menehi video sing apik banget babagan pilihan programmer, gambar sing diwenehake ing wiwitan artikel iki. Aku uga duwe wawancara kaya iki luwih saka sepisan. Yen sampeyan ndeleng tirani ing tahap pitakonan, banjur ngormati dhewe, tangi, njupuk barang lan ninggalake - iki normal. Yen HR lan manajer ing wawancara negesake awake dhewe kanthi biaya sampeyan, iki nuduhake keracunan perusahaan lan sampeyan ora kudu kerja ing kana, kajaba sampeyan seneng bos sing ora nyukupi.

temonan

Programer, pindhah menyang wawancara! Lan nyoba kanggo tansah munggah. Ayo dadi ngomong yen sampeyan entuk dhuwit N, banjur menyang Interview kanggo paling N * 1,2, lan luwih N * 1,5. Sanajan sampeyan ora langsung njupuk lowongan iki, sampeyan bakal ngerti apa sing dibutuhake kanggo tingkat pambayaran iki.
Pengamatanku nuduhake yen kawruh sing apik babagan basa Inggris, pengalaman sing cukup sugih ing industri lan kapercayan dhewe mutusake. Sing terakhir minangka kualitas utama, kaya ing papan liya ing urip. Minangka aturan umum, calon sing luwih percaya diri bisa nindakake luwih apik ing wawancara, sanajan luwih akeh kesalahane, tinimbang pelamar sing apik banget nanging luwih isin lan enterprising. Good luck karo wawancara!

Lomba P/S

Yen sampeyan duwe conto menarik saka tugas sing HR dimuat karo sampeyan, banjur welcome ing komentar. Kita wis nyiapake kompetisi cilik - kahanan sing prasaja: sampeyan nulis tugas sing paling ora biasa sing sampeyan lakoni kanggo wawancara, para pamaca ngevaluasi (plus), lan sajrone seminggu kita nyimpulake asil lan menehi hadiah marang pemenang kanthi nishtyaks lucu.

Programer, pindhah menyang wawancara

Programer, pindhah menyang wawancara

Source: www.habr.com

Add a comment