Bagaimana Seorang Programmer Dapat Dikatakan Programmer yang Baik?

Setiap orang yang belajar programming, pasti ingin disebut seorang programmer yang baik. Nah, pasti ada sebuah hal yang menjadi tolak ukurnya, apa saja?

1 Like

1. Skill yang Mengagumkan
Seorang programmer yang telah bekerja sebagian besar dalam bahasa yang lebih tua namun baru-baru ini menambahkan sebuah bahasa baru untuk sertifikasinya mungkin sangat sesuai, karena tahun pengalamannya memberinya fondasi yang bagus di bidang pemrograman lainnya.

2. Keinginan untuk belajar.
Teknologi selalu berkembang dan keterampilan dan kemampuan yang dimiliki pemrogram saat ini kemungkinan akan ketinggalan jaman dalam beberapa tahun. Sangat penting untuk menemukan seorang programmer yang memiliki ketertarikan untuk mengikuti tren terbaru dan sangat ingin berpartisipasi dalam kesempatan melanjutkan pendidikan yang tersedia.

3. Keterampilan debugging.
Membuat kode hanyalah bagian dari pekerjaan pemrogram. Bila perangkat lunak tidak bekerja seperti yang diharapkan, programmer diharapkan bisa sampai ke akar masalahnya dengan cepat dan efektif. Alih-alih menghabiskan berjam-jam membabi buta membuat perubahan, cari programmer yang lebih suka menyelidiki dengan teliti kode dan kemungkinan penelitian sampai ada jawaban.

4. Keterampilan Berinteraksi Dengan Orang.
Pemrogram umumnya tidak diharapkan memiliki talenta untuk melayani seseorang. Tampaknya sejak awal dipahami bahwa kebanyakan mereka akan duduk di depan komputer sepanjang hari. Namun pemrogram secara teratur diharapkan untuk berinteraksi dengan manajer, rekan kerja, dan klien, sehingga kemampuan untuk bekerja dengan baik dengan orang lain adalah suatu keharusan. Hal ini terutama berlaku jika pemrogram Anda kadang diminta untuk berpartisipasi dalam pertemuan klien dan menjelaskan bagaimana sistem bekerja.

5. Keterampilan Memecahkan Masalah.
Bagi mereka yang belum pernah mencoba membuat aplikasi dari nol, pemrograman bisa lebih baik dibandingkan dengan memecahkan persamaan matematika yang sangat sulit. Seorang programmer yang baik tumbuh subur dalam menemukan cara untuk membuat sesuatu bekerja, terlepas dari kemungkinannya. Jika tidak, Anda mungkin pernah mendengar ungkapan, “Itu tidak dapat dilakukan,” setiap kali Anda mengusulkan sebuah proyek baru yang inovatif.

6. Mentalitas kerja sama tim
Seorang programmer jarang bekerja sendiri, biarpun dia satu-satunya pengembang di sebuah perusahaan. Kemampuan untuk bekerja dengan pemrogram, pengguna bisnis, staf pemasaran dan penjualan, dan sesama programmer sangat penting.

8. Kemampuan Menangani Kegagalan
Menjadi seorang programmer jarang sekali berhasil pada percobaan pertama. Padahal, kegagalannya hampir bisa dipastikan. Ketekunan itu penting, sekaligus kemampuan untuk memulai kembali jika perlu, bahkan setelah berjam-jam kerja.

source : www.entrepreneur.com

1. Melakukan penelitian
Mereka tahu untuk melakukan penelitian sebelum mereka mencoba memecahkan masalah. Jadi, melakukan penelitian disini seorang programmer harus mengetahui program seperti apa yang dibutuhkan dan apa keuntungan dan kerugian dari program yang dibuat?dan sebaiknya saat meneliti ajaklah orang lain atau berkonsultasi lah dengan orang lain untuk penelitian anda agar program yang dibuat memiliki hasil yang baik.

2. Pergi ke sumbernya
Mereka selalu ingin mengetahui bagaimana sesuatu bekerja dan melihat sendiri pada sumbernya. Tidak takut jika itu bukan bahasa yang sangat dikenali, misalnya seperti anda tidak mengetahui bahasa pemrogramman ruby tetapi anda ingin mencoba nya maka cobalah. Apabila terjadi kesalahan pergilah ke perpustakaan dan membaca bagaimana cara ruby bekerja.

3. Langsung melakukan
Pemrogramer yang baik didorong untuk bertindak. Ada paksaan di dalamnya yang bisa sulit dikendalikan seperti mereka menerapkan solusi segera setelah mengidentifikasi masalah atau melihat permintaan fitur baru, terkadang terlalu cepat dan terlalu agresif. Tapi tanggapan naluriah mereka terhadap suatu masalah adalah mengatasinya secara langsung. Mereka sangat menyukai masalah dan langsung bertindak untuk mencari tahu bagaimana cara menyelasaikan nya tanpa menunggu waktu yang lama.

4. Tidak menghindari masalah yang sulit
Mereka meluangkan waktu untuk memahami apa yang salah, bahkan bila memang benar ada masalah yang sulit mungkin lebih dari itu, mereka memperlakukan masalah tersebut sebagai masalah yang harus dipecahkan. Dengan demikian mereka memecahkan nya secara lebih akurat, dan melakukannya tanpa meningkatkan ketegangan pada custumer nya.

5. Berkomunikasi dengan baik
Mereka harus mampu berkomunikasi baik dengan orang banyak untuk meningkatkan kualitas yang ada pada diri mereka. Coba saja bayangkan, apabila anda mencadi programmer yang baik tetapi anda tidak bisa berkomunikasi baik dengan orang banyak maka itu akan membuat anda hanya menjadi programmer saja.

6. Selalu bersemangat
Dimana mereka berkeniginan membuat perbedaan dengan aplikasi/alat yang dipakai nya dan membuatnya pada saat waktu senggang. Dengan cara mengaplikasikan coding sesuai dengan style algoritma yang mereka miliki. Menjadi programmer bukan hanya membuat profesinya menjadi sarana menghasilkan uang tetapi juga membuat perbedaan.

http://joshsymonds.com/blog/2013/11/03/what-makes-a-good-programmer-good/

Ada banyak hal yang membuat seseorang menjadi “pemrogram yang baik” (atau “pasangan yang baik”, yang berbeda), jadi langkah pertama adalah menjelaskan dengan jelas apa yang sebenarnya Anda cari.

Seorang manajer perekrutan bertanya apakah seseorang adalah “pemrogram yang baik” mungkin benar-benar mempertanyakan apakah dia benar

  • Bagus dalam pemrograman: apakah dia mengerti teknologi? Bisakah dia menulis kode yang berhasil? Bisakah dia memecahkan masalah?
  • Bagus dalam bisnis: Apakah dia mengerti industri tempat perusahaan beroperasi? Bisakah dia menetapkan prioritas dan membuat keputusan yang selaras dengan tujuan bisnis (bukan teknis)?
  • Baik didalam tim: Apakah dia bergaul dengan orang lain di tim? Apakah nilai-nilainya sesuai dengan keinginan organisasi?
  • Senang menjadi karyawan: Apakah dia mengikuti perintah tanpa keluhan? Akankah dia setuju bekerja untuk gaji yang bersedia kami bayarkan?

atau beberapa atribut lain yang dianggap sangat berharga oleh perusahaannya. Saya akan fokus di sini pada kriteria pertama (“bagus dalam pemrograman”), karena itu biasanya yang paling sulit bagi orang non-teknis untuk menilai. Namun perlu diingat “kebaikan” dalam konteks ini sebenarnya memiliki banyak segi.


Saya pernah berada di kedua sisi pertanyaan ini, sebagai seorang programmer yang mencoba untuk dipekerjakan dan kemudian sebagai manajer yang ingin mempekerjakan pemrogram lain. Karena Anda tidak ragu menemukan bahwa tidak ada cara sederhana dan pasti untuk mengidentifikasi calon mana yang benar-benar hebat dan akan membuang waktu dan uang atau, yang lebih buruk lagi, akhirnya menyeret seluruh anggota tim.

Tapi ada petunjuknya. Pemrogram hebat ingin menjadi hebat dengan apa yang mereka lakukan, dan mereka bertekad untuk mengembangkan keterampilan yang tidak hanya menarik bagi pengusaha tapi memberi isyarat status mereka kepada pemrogram lain. Jika Anda bisa mulai menerima sinyal-sinyal ini saat mencari kandidat, Anda akan memiliki kesempatan yang lebih baik untuk memilih seseorang yang akan menjadi investasi bagus dalam jangka panjang.

Jadi apa yang harus kamu cari? Dari pengalaman saya yang sekarang hampir dua puluh tahun di industri perangkat lunak, berikut adalah lima besar sifat yang saya kaitkan dengan pengembang hebat dan bahwa saya akan mencari jika saya mempekerjakan seorang programmer sekarang.

1. Mereka sebenarnya bisa memprogram. Jangan tertawa: Saya harus bekerja dengan lebih dari satu orang yang berpendidikan universitas, dibayar dengan baik dan dipekerjakan sebagai programmer namun sepertinya sama sekali tidak mampu menghasilkan kode sederhana sekalipun. Orang semacam ini memiliki bobot mati bagi tim pengembang, dan jauh lebih mudah dan lebih murah untuk tidak mempekerjakan mereka terlebih dahulu daripada memecat mereka setelah kejadian tersebut.

Seperti yang dicatat orang lain di sini, sebenarnya tidak ada cara untuk menilai sifat ini selain meminta kandidat benar-benar menulis sebuah program selama wawancara, sesuatu yang sangat banyak yang tidak perlu dilakukan oleh banyak organisasi. Inilah kabar baiknya, terutama jika Anda sendiri yang tidak teknis: Tes pemrograman bisa sesederhana yang Anda suka dan ini akan tetap sangat efektif. Ternyata orang yang tidak bisa memprogram dengan baik tidak bisa benar-benar memprogram sama sekali.

Tes FizzBuzz adalah titik awal yang baik, tapi karena begitu banyak pemrogram yang pernah mendengarnya sekarang mungkin Anda lebih baik membuat tes sendiri. Seorang pemrogram senior dari tim Anda (atau konsultan, jika Anda masih membangun tim) dapat membantu menyusun tes efektif dan berbagai solusi yang dapat diterima untuk dibandingkan.

2. Mereka menulis dengan baik. Ini maksud saya menulis bahasa Inggris (atau bahasa ibu anda), bukan kode. Setidaknya ada dua alasan mengapa hal ini penting.

Pertama, sebagian besar karya pemrograman efektif benar-benar ditulis untuk manusia lain: dokumen persyaratan, komentar kode, dokumentasi API, laporan bug, komit pesan, dan lain-lain. Sebagian besar biaya proyek perangkat lunak terjadi selama fase pemeliharaan setelah diluncurkan, dan salah satu cara terbaik untuk mengendalikan biaya ini adalah (masih!) Untuk menulis dokumentasi yang efektif sebelum dan selama pengembangan.

Kedua, programmer yang baik adalah pemecah masalah yang baik, dan kemampuan memecahkan masalah sebagian besar merupakan fungsi kecerdasan. Anda tidak dapat menguji potensi kecerdasan pilot secara langsung (dilarang oleh hukum, di Amerika Serikat dan mungkin di tempat lain) namun Anda dapat menilai kemampuan menulis mereka, dan keterampilan menulis adalah indikator kecerdasan yang kuat. Jadi cari sesuatu yang telah ditulis kandidat - di blog mereka, di Quora atau di situs mana pun yang disebutkan di bawah ini - dan kaji kualitasnya sebagai petunjuk lain tentang kapasitas seseorang sebagai pemrogram.

3. Mereka berkontribusi pada proyek open-source. Ini adalah sinyal status yang jelas antar pemrogram itu sendiri. Selain itu, setelah berkontribusi pada proyek publik menunjukkan sejumlah ciri yang diinginkan.

Pertama, calon jelas mencintai pengembangan perangkat lunak sehingga mereka bersedia melakukannya pada waktu mereka sendiri, secara gratis. Ini tentang indikator gairah paling otentik yang ada.

Kedua, produk open source seringkali (meski tidak selalu) komponen infrastruktur yang kompleks secara teknis yang beroperasi pada tingkat yang relatif rendah, berteknologi, sehingga bekerja pada mereka mencerminkan tingkat kemampuan yang sesungguhnya. Mengubah halaman web sehingga memuat lebih cepat berarti mengetahui sesuatu tentang bagaimana Web bekerja; mengubah Mozilla Firefox sehingga memuat halaman web dengan lebih cepat membutuhkan keseluruhan tingkat pengetahuan tentang kinerja Web.

Akhirnya, open-source work menunjukkan kandidat memiliki setidaknya kemampuan organisasi yang belum sempurna. Proyek open-source sering meminta kontribusi namun tidak pernah berkewajiban untuk menerimanya, jadi selalu ada sedikit penjualan yang terlibat dalam mendapatkan perubahan yang dilakukan. Seorang programmer yang terlalu kasar atau tidak terorganisir atau yang tidak bisa mengkomunikasikan pikirannya akan mendapati dirinya terkunci dari dunia ini.

Strategi pertama yang bagus untuk menemukan pengembang yang hebat adalah mengidentifikasi proyek open source utama yang digunakan di industri Anda, kemudian mencari sistem pelacakan bug proyek tersebut, repositori kode dan milis untuk mengidentifikasi orang-orang yang telah menyumbangkan jenis pekerjaan organisasi Anda membutuhkan. (Di sini sekali lagi, keterlibatan seorang programmer bisa sangat membantu.) Banyak karya open-source terjadi di Github juga, jadi melihat profil Github kandidat dapat memberi Anda petunjuk penting tentang partisipasi mereka.

  1. Mereka berusaha melampaui arus utama. Apa pendapat Anda tentang kritikus makanan yang menawarkan di koran langit-langitnya yang cerdas jika Anda tahu bahwa dia hanya makan di makanan cepat saji? Orang yang bergairah tentang suatu subjek termotivasi untuk melihat melampaui hal yang biasa dan biasa dan untuk mencari yang baru dan berbeda di bidang mereka, bahkan jika mereka sendiri dapat merasakan perbedaan di antara semua pilihan.

Untuk alasan ini saya selalu curiga terhadap pengembang “senior” yang melakukan semua pekerjaan mereka, katakanlah, C # atau Java, dan yang hanya menjalankan Microsoft Windows di komputer mereka sendiri. Ini adalah pilihan default, pilihan yang Anda dapatkan jika Anda tidak melakukan apapun. Seseorang yang sangat menyukai pemrograman, yang memiliki pendapat tentang apa yang membuat sistem menjadi baik dan akan termotivasi untuk bekerja melalui masalah yang menantang, hampir pasti akan mencoba sistem operasi “alternatif” seperti Linux, NetBSD atau Haiku atau bahasa pemrograman seperti Eiffel, Haskell atau Clojure, dan akan ada bukti di situs web mereka atau resume.

  1. Mereka berbagi pengetahuan dengan orang lain. Dengan cara ini, ini menyatukan empat sifat lainnya: Pemrogram yang bersedia dan mampu mengajari rekan-rekan mereka harus mengembangkan kepercayaan diri pada pemahaman mereka sendiri, kemampuan untuk berkomunikasi secara efektif dan cukup dengan orientasi masyarakat untuk mau berbagi nilai yang mereka miliki. akumulasi. Orang semacam ini dapat berfungsi sebagai pengganda kekuatan dalam sebuah organisasi, membantu anggota pemula yang lebih pemula untuk mencapai kecepatan dan orang lain di perusahaan memahami apa yang dapat dilakukan tim pengembangan untuk mereka dan apa yang dibutuhkan sebagai gantinya.

Sumber : https://www.quora.com/How-do-you-know-when-someone-is-a-good-programmer