Pages

Pages - Menu

Wednesday, January 4, 2017

10 Keterampilan wajib bagi programmer

Sudah menjadi hal umum, bahwa anda belajar dari sekolah dasar hingga lulus kuliah menjadi seorang sarjana atau ahli madya selama bertahun-tahun anda mendapatkan sebuah ijazah, ijazah tersebut pasti anda gunakan sebagai jalan pertama untuk melamar pekerjaan anda. Bagi anda yang khususnya yang berada pada jurusan ilmu computer atau sejenisnya, anda pasti dikejutkan oleh beberapa aturan yang mungkin tidak ada di bangku waktu anda sekolah atau kuliah. Khususnya bagi anda yang menjadi programmer.
Diluar sana, anda dituntut tak hanya menjadi seorang yang hanya lulus dengan nilai baik dan melamar pekerjaan sesuai yang anda sukai, atau bahkan tidak sesuai jurusan anda, namun bagi anda yang berani memilih pekerjaan sesuai jurusan awal maka anda pantas diacungi jempol, berarti anda suka tantangan dan bukan orang yang mudah menyerah. Diluar sana banyak orang yang harusnya programmer di jurusannya tapi murtad menjadi professional yang lain, tidak masalah hanya saja, cukup rugi bagi anda yang mempelajari ilmu yang tidak pernah anda pakai di saat anda sekarang. Gelar ilmu komputer banyak yang digunakan semata-mata untuk menulis aplikasi perbankan dan aplikasi admininstrasi atau yang lain. Harusnya anda sejak awal tidak memilih mata kuliah ini atau hanya sekedar nama.
Beberapa siswa 100% siap untuk pekerjaan pertama mereka. Dan gelar ilmu komputer semata-mata dirancang guna mempersiapkan siswa untuk pekerjaan menulis aplikasi perbankan. Tapi masih terus terkejut melihat berapa banyak lulusan baru-baru bahkan beberapa programmer berpengalamanyang masih mengedit kode mereka di Notepad atau Pico dan tidak tahu bagaimana menggunakan kontrol versi, bukan apa-apa namun seharusnya kita harus punya wawasan selain didalam matakuliah, karena kita didunia teknologi yang serba mudah dalam mencari tambahan ilmu.
Jika Anda tidak ingin menjadi “orang itu” – atau tidak ingin menjadi orang itu lagi – luangkanlah waktu untuk belajar 10 keterampilan wajib bagi programmer dasar ini:
  1. Version control systems
Ini mungkin kelalaian terbesar dalam kurikulum ilmu komputer. Lembaga pendidikan tinggi mengajarkan cara membuat kode sumber untuk program, tetapi biasanya mengabaikan segala sesuatu tentang pengelolaan kode tersebut. Setiap programmer harus tahu cara membuat repositori, mengedit dan commit kode tersebut, dan branch dan menggabungkan secara efektif sebagai bagian dari alur kerja proyek menggunakan Git atau Subversion. Mengetahui tentang sistem kontrol versi juga berarti bahwa Anda akan tahu lebih baik daripada bekerja untuk organisasi yang tidak menggunakanya.
  1. Bagaimana menulis kode program
Bekerja sebagai seorang programmer adalah lebih dari sekedar menulis dalam bahasa pemrograman. Anda juga harus menulis catatan rilis untuk proyek-proyek Anda. Anda menulis pesan komit untuk kontrol versi. Anda menulis tiket untuk bug dalam sistem. Semua ini dan banyak lagi membutuhkan komunikasi bahasa Inggris yang jelas, dan efektif  – keterampilan dimana pada program ilmu komputer jarang ditekankan.
  1. Regular expressions
Regexes adalah bahasa mereka sendiri, dan setiap programmer modern perlu mahir dalam penggunaannya. Setiap bahasa pemrograman mendukung regexes atau memiliki perpustakaan standar untuk bekerja dengan mereka. Jika bagian dari tugas kode Anda untuk memvalidasi bahwa sejumlah bagian adalah lima huruf, tanda hubung dan angka, Anda harus segera mampu mengekspresikannya sebagai  /^[A-Z]{5}-\d$/.
  1. Menggunakan librari
Ini tahun 2014, dan tidak perlu menggunakan ekspresi reguler untuk mengekstrak nama host dari URL. Setiap bahasa pemrograman modern memasukkan perpustakaan standar untuk fungsi umum, atau memiliki perpustakaan standar yang mudah tersedia.
Programmer perlu memahami bahwa kode yang telah ditulis, diuji, dan debug akan menjadi kualitas yang lebih baik daripada kode baru yang dia ciptakan. Bahkan lebih penting, kode yang tidak harus ditulis dapat diimplementasikan lebih cepat.
  1. SQL
Seseorang berkata kepada saya pada meetup baru-baru ini, “Semua SQL yang saya tahu saya pelajari di tempat kerja. Mengapa database elektif? Apa yang tidak menggunakan database? “
Era menyimpan data dalam file flat berakhir. Semuanya masuk ke dan keluar dari database, dan SQL adalah bahasa yang digunakan untuk mengambilnya. SQL juga merupakan bahasa deklaratif, bukan bahasa prosedural, sehingga membutuhkan belajar cara baru berpikir tentang pemecahan masalah. Tapi setiap programmer harus memahami dasar-dasar normalisasi database dan dapat melakukan SELECTs (termasuk dasar INNER dan OUTER JOINs), INSERT, UPDATE dan DELETE.
  1. Penggunaan Tool: tool-tool IDE, editor, CLI
Seorang tukang kayu tidak akan pernah menyelesaikan pekerjaan hanya dengan mengetahui bagaimana menggunakan gergaji besi saja, jadi mengherankan bahwa sekolah Ilmu Komputer dapat meluluskan mahasiswanya yang hanya tahu Notepad atau pico. Ini adalah pekerjaan alat pemrograman untuk membantu memanipulasi kode sumber dan semua data lainnya di komputer untuk membuat hidup programmer lebih mudah.  Baris perintah Unix, shell scripting, find, grep, dan sed harus menjadi bagian dari setiap pengetahuan programmer.
  1. Debugging
Setiap programmer harus dapat men-debug dengan debugger interaktif atau dengan menaburkan pernyataan print secara bebas di seluruh kode. Kemampuan untuk melacak masalah melalui perbaikan bertahap terlalu penting untuk diserahkan kepada programmer yang hanya belajar dengan kursi mereka.
  1. Pemrograman Defensif
Bahkan programmer rockstar tidak sempurna, sebagian besar dunia adalah di luar kendali kita, dan banyak hal akan menjadi salah. Pemrograman defensif adalah tentang memahami kebenaran yang sederhana. Jika hal-hal tidak salah, kita tidak perlu memeriksa file telah sukses dibuka, atau menyatakan bahwa ID pelanggan adalah bilangan bulat yang valid, atau untuk menguji kode untuk memastikan bahwa ia bekerja dengan baik.
Programmer perlu memahami bahwa peringatan compiler adalah alat yang membantu membuat hidup lebih mudah, bukan gangguan yang harus dihindari. Setiap programmer harus tahu mengapa setiap program PHP harus dimulai dengan error_reporting(E_ALL), atau masing-masing programmer Perl dengan use strict; use warnings;.
  1. Kerja Tim
Sangat sedikit pekerjaan pemrograman memungkinkan Anda untuk bekerja sepenuhnya seorang diri – dan mereka yang melakukan hal itu sering melumpuhkan intelektualnya dan menjadikan anda seorang programmer yang lebih buruk daripada ketika anda memulai. Kode Anda harus berinteraksi dengan kode yang ditulis oleh orang lain, atau sering bercampur dengan kode dari orang lain. Tidak peduli seberapa berbakat, seorang programmer yang tidak bisa berkolaborasi dalam proyek dengan orang lain memiliki produktivitas yang negatif, dan dengan cepat menjadi beban bagi organisasi.
  1. Bekerja pada kode yang telah ada
Di sekolah, setiap tugas kelas selalu baru, proyek baru. Itu bukan cara kerja di dunia nyata. Hal pertama yang terjadi pada karyawan baru adalah mereka bisa ditugaskan untuk memperbaiki tiket #8347 dalam sistem pelacakan bug. Setelah itu, mereka harus menambahkan fitur pelengkap kecil baru ke sistem yang ada dengan basis kode yang ditetapkan. Merancang kode baru datang beberapa bulan kemudian, jika mereka beruntung.

No comments:

Post a Comment