Saya percaya bahwa seseorang disebut senior atau tidak bukan dari seberapa hebat skill coding seseorang, tetapi lebih dari pada itu.
Jika ada senior programmer pasti ada junior programmer. Maka jika sebuah perusahaan atau tempat menyebut semua programmer senior karena ingin tampil beda atau apapun, menurut saya kurang tepat.
Seorang senior programmer harus dapat MEMIMPIN para juniornya. Jika, ada seorang senior yang tidak dapat melakukan hal tersebut, walaupun dia skillnya sangat luar biasa, dia hanya akan selalu dan selalu menjadi junior. Mungkin dia paling jagoan di level junior, tetapi tidak akan pernah bisa menjadi senior.
Jadi, apasih perbedaan antara junior dan senior?
Programmer Junior
Seorang junior, biasanya perlu penjelasan yang lebih mendetail jika diberikan sebuah task. Mereka perlu tuntunan dan arahan, secara coding mungkin mereka dalam tahap OK, asal tahu apa yang harus dilakukan. Biasanya mereka perlu bimbingan untuk dapat mencapai “tahu apa yang harus dilakukan”. Disinilah peranan seorang senior programmer.
Bahkan untuk para senior yang baru join di sebuah company, mereka perlu masa trial atau pencocokan untuk beberapa minggu awal, untuk mengetahui struktur code, database, dll nya sebelum dia bisa MEMIMPIN yang lain.
Programmer Senior
Berbeda dengan junior, senior lebih cepat menangkap apa yang perlu dilakukan bahkan dengan task yang kurang jelas pun mereka sudah mengerti apa yang diinginkan. Inilah perlunya lama kerja disebuah perusahaan, karena dengan semakin lama dia disana, semakin paham budaya dan cara komunikasi setiap anggotanya. Oleh karena itu, skill saja tidak cukup.