Pemrograman tingkat tinggi vs. tingkat rendah. Apakah saya benar-benar harus memilih? [Tutup]

13

Kadang-kadang saya ditanyai dalam wawancara yang saya suka yang terbaik-tingkat rendah atau tinggi. Sepertinya saya bahwa pesan tersirat adalah bahwa mereka berdua adalah spesialisasi dan mereka ingin tahu ke arah mana saya menuju. Masalahnya, saya sepertinya menyukai keduanya. Tingkat rendah sangat menantang dan seringkali membutuhkan banyak pengetahuan esoterik. Tingkat tinggi adalah tempat semua hal seksi terjadi: aplikasi yang digunakan orang secara langsung, hasil yang dapat dengan mudah ditunjukkan (dipamerkan) dengan cara yang dapat diakses oleh semua orang, dan Anda dapat bekerja dengan alat yang sangat canggih dan berinteraksi dengan teknologi baru.

Saya akan sangat suka melakukan keduanya, bahkan jika itu berarti bergantian di antara mereka (saya ragu ada pekerjaan yang akan membiarkan saya melakukan keduanya secara bersamaan), tetapi saya menduga bahwa industri ini lebih menghargai spesialis daripada generalis. Akankah karier menjadi problematis jika saya tidak pernah memilih yang satu dari yang lain? Apakah praktis untuk bergantian di antara keduanya dalam arti bahwa jika saya meninggalkan pekerjaan dengan melakukan salah satu dari mereka, saya seharusnya tidak mengalami "gesekan" mencoba untuk mendapatkan pekerjaan melakukan yang lain (dengan asumsi saya cukup dalam lingkaran)? Apakah ada peluang karier di mana Anda bisa melakukan keduanya?

Apakah saya benar-benar harus memilih satu dari yang lain?

EpsilonVector
sumber
Anda mungkin ingin melihat pertanyaan ini di SO: stackoverflow.com/questions/919568/…
user281377

Jawaban:

5

Pertama, jalur mana pun yang Anda pilih, perlu diketahui bahwa lingkungan Anda mungkin berubah. :)

Juga, saya tidak berpikir Anda harus memilih antara satu atau yang lain. Sebaliknya, opsi Anda lebih bergantung pada proyek dan grup yang bekerja dengan Anda.

  • Kemungkinan bahwa melamar pekerjaan spesialis di perusahaan besar, Anda akan merasa sulit melakukan tugas-tugas lain.
  • Kemungkinan juga peran generalis tidak akan memberi Anda waktu untuk menggali lebih dalam menjadi bagian kecil.
  • Kemungkinan yang sama bahwa memiliki beberapa keterampilan generalis akan membuat Anda lebih efisien dalam melakukan pekerjaan spesialis, karena Anda tidak akan harus bergantung pada orang lain sebanyak mungkin untuk terus maju.
  • Mungkin juga bahwa peran generalis memerlukan pengetahuan khusus, dan jika Anda mencari perusahaan kecil atau startup yang bekerja di area di mana Anda berspesialisasi, Anda dapat memiliki banyak kesempatan untuk bersinar di bidang spesialis Anda.

Saya sebenarnya menghadapi masalah ini di pekerjaan saya saat ini ..

Saya telah mengkhususkan diri dalam C ++, OpenGL, simulasi 3D, arsitektur mesin permainan dan hal-hal semacam itu, tetapi tahun lalu saya telah menggunakan besi solder cukup banyak (menumbuk bersama-sama papan USB, prototipe, servos dan motor, serta penyetelan dan memprogram pengontrol servo ini). Saya mungkin juga harus membuat beberapa prototipe situs web untuk beberapa layanan yang kami butuhkan.

Sangat menyenangkan, tetapi saya tidak ingin melakukannya selamanya, karena spesialisasi saya sedikit berkurang, dan mungkin ada orang lain yang lebih baik dalam hal itu. Semoga perusahaan tumbuh dan kami dapat mempekerjakan lebih banyak insinyur. Kami hanya dua orang C ++ / Python saat ini (dengan saya menghabiskan 60-75% waktu saya di perangkat keras).

Jadi, pilih proyek Anda dengan hati-hati dan Anda tidak harus meninggalkan apa pun, tetapi Anda perlu memeriksa ke mana arah karier Anda sekarang dan kemudian (seperti halnya semua orang).

Macke
sumber
12

Dalam pengalaman saya, perusahaan besar butuh spesialis dan perusahaan kecil butuh generalis. Jika Anda ingin menjadi generalis, cari dan lamar di perusahaan kecil.

Scott Whitlock
sumber
3
Singkatnya, perusahaan yang lebih besar adalah perusahaan yang mampu memberikan tarif lebih tinggi yang diminta oleh spesialis.
Oded
3
Bukan gaji yang menentukan perbedaan spesialis / generalis sebanyak jumlah programmer yang dimiliki perusahaan Anda. Dengan banyak programmer, lebih efisien untuk menugaskan orang tertentu ke produk tertentu. Dengan segelintir programmer, mereka harus memenuhi semua kebutuhan pengembangan perusahaan.
dan04
2

Di bidang kami, saya pikir kami harus menjadi generalis pada tingkat tertentu sambil juga mengembangkan spesialisasi atau bahkan beberapa spesialisasi. Tidak ada salahnya untuk mengembangkan keterampilan kami di banyak bidang karena beberapa proyek mungkin mengharuskan Anda untuk serbaguna. Seperti yang telah disebutkan, semakin besar perusahaan, semakin besar kemungkinan Anda membutuhkan Anda untuk dapat fokus hanya dalam satu bidang. Dalam situasi ini saya berpikir bahwa pertanyaan yang Anda sukai lebih dari kemungkinan mencoba memilah di mana mereka akan menempatkan Anda jika mereka mempekerjakan Anda.

Kenneth
sumber
2

Saya pikir itu baik untuk mengajukan pertanyaan ini, sehingga mereka tahu apa yang Anda tuju, tetapi penjelasan yang Anda posting di sini juga merupakan jawaban yang sangat bagus: "Saya suka melakukan keduanya". Bahasa tingkat tinggi dan tingkat rendah menarik berbagai jenis orang, sementara bahasa tingkat rendah menarik orang-orang yang benar-benar ingin mengetahui detail kecil dari sistem, cara kerjanya, dll. Bahasa tingkat tinggi menarik orang lebih tertarik pada proses bisnis dan organisasi diri. Begitu banyak orang yang sangat menyukai bahasa tingkat tinggi, tetapi tidak tahan dengan level rendah (atau sebaliknya).

Jadi, bertanya adalah sangat penting untuk mendapatkan profil dan niat Anda, tetapi jawaban Anda ketika Anda memposting sepenuhnya dapat diterima.

JSBach
sumber
1

Anda tidak harus memilih, meskipun hidup Anda akan lebih mudah (jika tidak lebih bahagia) jika Anda melakukannya. Sebagian besar perusahaan akan mencari satu atau yang lain, tetapi jika Anda menemukan tempat di mana mereka menginginkan seseorang yang mengenal kedua dunia, Anda akan mendapatkan jackpot.

Yang benar-benar tidak boleh Anda lakukan adalah menerapkan pendekatan yang salah pada suatu masalah.

Dan tentu saja, kadang-kadang hal-hal tidak berjalan sesuai rencana, saya mulai dengan cinta perakitan dan C dan ketidakpercayaan terhadap semua OO dan menjadi pengembang Java. Sekarang saya merasa sulit untuk kembali, karena saya ketinggalan sepuluh tahun belajar dan teknologi baru. Jadi pelajaran di sini adalah bahwa jika Anda ingin beralih, pastikan Anda tetap berhubungan.

biziclop
sumber