Minggu, 2008 Juni 22

Kaliorang 13 Mei 2008


Tanggal 13 Mei – 6 Juni 2008, 1 bulan kurang penulis merantau untuk pertama kali ke kalimantan timur, tepatnya desa kaliorang, sebuah desa yang secara geografis berada pada 117 38 - 118 02 BT dan 00 46 - 1 21 LU, secara administrasi Kaliorang termasuk dalam wilayah Kec. Kaliorang, Kab. Kutai Timur Propinsi Kaltim dengan luas wilayah +195.000 ha dan merupakan bagian dari Kawasan Agropolitan Sangsaka, yaitu Sangkulirang, Sandaran dan Kaliorang.
Merantau dalam rangka tugas luar untuk mengemban misi instalasi jaringan Vsat dan pengembangan system di PT Fairco Agro Mandiri, yang merupakan sebuah perusahaan pengembangan budidaya dan industri pengolahan komoditi unggulan tanaman perkebunan kelapa sawit, yg merupakan juga perusahaan tempat penulis bekerja.
Perasaan sedih terus menyelimuti penulis karena kali pertama harus meninggalkan anak si mata wayang Meisya Kayla Pramesti dan Istri di tangerang. Yang secara kebetulan penulis harus terbang ke daerah pelosok pada tanggal bersamaan dengan ulang tahun anak tercinta. Sedihnya!!

Standarisasi Gaji Programmer

Saya sampai hari ini coding pakai produk borland(pas sekolah dan kuliah) dan microsoft (buat kerja). Kalau soal salary memang programmer produk microsoft tersebut lebih mudah dinego, wong jumlahnya banyak. Ada yang jual mahal, masih ada penggantinya. Kalau soal skill dan pengalaman itu relatif, sebab biasanya dilihat dari background nyambung, apa ngak. Kalau nyambung ,butuh banget dan ngak ada pesaing soal harga bisa ningkat. Dalam permasalahan ini Hukum permintaan dan penawaran berlaku. (Maklum anak IPS) BTW kemampuan nego penting juga. Saya copy paste dari sebuah forum " http://mbot.multiply.com/tag/hrd <http://mbot.multiply.com/tag/hrd> " )* Menjawab permintaan dari salah seorang pengunjung di shoutbox gue, kali ini gue mau sharing sedikit pengetahuan yang gue punya tentang proses negosiasi gaji. Tapi perlu dicatat; mengingat sekarang gue udah cukup lama meninggalkan dunia per-HRD-an, mungkin informasi yang gue sampaikan di sini udah nggak terlalu update lagi. Jadi, jangan telen mentah2 apa kata gue, cek dan ricek lagi dari sumber yang lain ya! *Kenapa sih kita harus menegosiasikan gaji?* Kenapa nggak langsung aja ditentuin oleh perusahaan? Untuk menjawab ini, pertama-tama perlu gue jelasin dulu bahwa struktur gaji di sebuah perusahaan biasanya ditentukan dalam range (rentang), dan range-nya saling overlap satu dengan lainnya. Memang nggak semua perusahaan menetapkan struktur gaji dalam range seperti ini, tapi sebagian besar sih begitu. Untuk jelaskan coba perhatiin tabel ilustrasi berikut: *Level* *Gaji* I 900rb - 1.2 jt II 1 jt - 1.5 jt III 1.3 jt - 2.2 jt ...dst Ada 2 keuntungan penetapan gaji dengan sistem range, ditinjau dari sudut pandang perusahaan: 1. Memberikan ruang bagi pihak HRD perusahaan tersebut untuk merekrut orang terbaik pada sebuah level. Untuk jelasnya coba simak contoh kasus sbb: Sebuah perusahaan berniat merekrut si X yang saat ini udah bekerja di perusahaan lain. Berdasarkan hasil wawancara diketahui bahwa X menerima gaji 1 juta di perusahaannya sekarang, dan berada di level I. X tentu menolak saat diajak pindah dengan penawaran gaji sama yaitu 1 juta. Berkat sistem gaji yang menggunakan range, maka perusahaan yang baru bisa memberikan penawaran menarik sebesar 1.2 juta kepada X, tanpa harus memposisikannya di level yang lebih tinggi (yang mana terkait dengan pemberian fasilitas / tunjangan yang lebih besar pula). 1. Memungkinkan perusahaan untuk melakukan efisiensi pengeluaran gaji. Ingat, perusahaan sebagai institusi ekonomis, pastinya mengutamakan prinsip ekonomi pula: *pengeluaran sekecil-kecilnya untuk mendapatkan hasil sebesar-besarnya* . Kalo seorang pegawai happy-happy aja dengan digaji 900 ribu, kenapa harus ngasih 1 juta? Ilustrasi berikut mungkin bisa memperjelas: Si Y adalah seorang pegawai lugu yang rela ngelembur tanpa banyak nuntut uang tambahan. Di kantor sekarang ia menduduki level I dengan gaji 750 ribu. Melihat fakta seperti ini, maka sambil sedikit bertanduk sang petugas HRD perusahaan tetangga menyodorkan penawaran gaji 900 ribu kepada Y, yang langsung diterima dengan penuh rasa syukur dan hati sumringah. Nah, melihat kedua contoh di atas, jelas bahwa urusan negosiasi gaji bisa sangat menentukan besaran gaji yang kita terima. Si X dan si Y sama-sama menduduki posisi di level I, kerjaannya sama, tanggung jawab sama, tapi X bisa mendapat gaji lebih besar dari Y hanya karena perbedaan dalam proses negosiasi gaji! Kesimpulannya: proses negosiasi gaji itu penting banget! *Apa yang harus disiapkan sebelum menegosiasikan gaji?* 1. *Kenali pasaran *Ini penting banget banget! Lo harus tau, untuk kualifikasi yang lo punya sekarang ini, berapa range gaji yang berlaku. Dengan demikian lo bisa mengajukan penawaran yang 'pas'. 2. *Tetapkan standar yang rasional *Ini juga nggak kalah penting. Standar ditetapkan berdasarkan kondisi pribadi lo sekarang ini. Maksud gue gini: Kalo saat ini lo lagi happy-happy aja di perusahaan tempat kerja lo, trus dateng tawaran untuk pindah ke perusahaan lain, boleh lah lo jual mahal dikit. Minta gaji yang rada2 di luar range. Dikasih sukur, enggak ya udah. Tapi sebaliknya, kalo lo saat ini lagi nganggur, trus lo menolak tawaran pekerjaan dengan gaji 1 juta hanya karena lo tau untuk kualifikasi lo rangenya berkisar antara 1.2 - 1.5 juta, ya kurang bijaksana juga. What i'm saying is, memang perlu untuk mengetahui harga pasaran lo berapa, tapi jangan lantas terpaku dan terjebak dengan pasaran tersebut hingga akhirnya mematikan potensi lo untuk berkembang, gitu loh. *Faktor apa aja yang mempengaruhi standar gaji dari sebuah perusahaan?* 1. *Industri *Beda industri, beda juga standar gajinya. Industri telekomunikasi, pertambangan / perminyakan, konsultan, dan consumer goods adalah beberapa industri yang standar gajinya relatif tinggi. 2. *Ukuran perusahaan *Perusahaan multi-nasional biasanya punya standar gaji lebih tinggi dari perusahaan lokal dari *bidang industri yang sama*. Tapi, perusahaan2 kelas menengah biasanya masih belum punya standar gaji yang baku - sehingga justru dengan perusahaan tipe ini lo bisa nodong gaji seenaknya berdasarkan wangsit dan disetujui! 3. *Level / lingkup pekerjaan *Gue sering menemukan, orang salah memperkirakan standar gaji pekerjaan yang dilamar karena terkecoh dengan title / judul pekerjaannya. Contoh kasus yang sering terjadi: lowongan pekerjaan dengan judul mentereng "sales supervisor" membuat pelamar mengira pekerjaannya di tingkat manajerial dan mengepalai sebuah tim, nyatanya harus kerja sendiri jualan barang. Atau yang pernah gue temui di sebuah perusahaan milik pemerintah daerah, terjadi kenaikan jabatan berkala secara otomatis - sehingga seorang staff biasa setelah sekian tahun kerja harus jadi "kepala" sesuatu. Akibatnya, struktur perusahaan tersebut mekar terus dari waktu ke waktu karena bermunculan "kepala2" baru, dan banyak "kepala seksi" yang nggak punya anak buah! Title pekerjaan bisa mengecoh, "manager" di perusahaan yang satu bisa saja selevel dengan seorang "supervisor" di perusahaan lain atau justru seorang "vice president" di perusahaan lainnya - tergantung seberapa besar beban kerja yang menjadi tanggung jawabnya. Oleh karena itu, sebelum bernegosiasi kenali dulu di level mana pekerjaan yang akan lo lamar ini. *Gimana caranya mengetahui pasaran gaji untuk pekerjaan yang akan gue lamar?* Untuk urusan ini memang rada sulit. Kalo kebetulan lo punya temen yang kerja di industri yang sama, lo mungkin bisa nanya2 sama dia - walaupun pastinya nggak semua orang mau jawab saat ditanya gajinya. Gue salah satunya, sampe detik ini cuma ada satu temen gue yang tau persis gaji gue berapa. Selain itu lo juga bisa ikutan milis2 HRD - kadang di sana suka ada sharing mengenai standar gaji. *Tahap-tahap negosiasi gaji* 1. *Pengisian formulir lamaran *Ya, proses negosiasi gaji dimulai saat lo mengisi formulir lamaran pekerjaan. Biasanya di formulir tersebut ada isian tentang besar gaji yang diinginkan. Make sure lo isi kolom tersebut dengan jumlah yang lo inginkan, tentunya dengan mempertimbangkan faktor kemampuan diri sendiri dan faktor standar perusahaan. Tambah jumlah tersebut dengan 20-30% untuk memberikan ruang just in case ditawar. *Jangan*, jangan pernah mengosongkan bagian ini, atau mengisinya dengan kata2 basi *"mengikuti standar perusahaan"* atau *"terserah perusahaan"*. Waktu gue masih di HRD, kalo nemu pelamar yang ngisi begini suka gue tanya balik, "bener nih gajinya terserah? Dibayar ceban mau?" Oh ya, biar nggak salah paham, tulis jumlah gaji yang lo inginkan itu dalam satuan p.a. (per annuum alias per tahun). Soalnya, ada perusahaan yang menggaji karyawannya secara standar yaitu 12 bulan gaji plus 1 bulan THR, sementara ada juga perusahaan yang per tahunnya bisa belasan hingga puluhan kali gaji yang dibayarkan dalam bentuk bonus ini - itu. 2. *Wawancara pertama *Biasanya di tahap ini suka muncul pertanyaan tentang jumlah gaji yang lo tulis di formulir. Pertanyaan yang umum muncul adalah, "Jumlah ini *negotiable* nggak?" Karena tadi jumlahnya udah lo tambah, tentu aja lo jawab dengan "ya". Pertanyaan lain yang sering muncul adalah "Kenapa Anda minta gaji sekian?" Nah, yang ini perlu dijawab dengan jurus khusus. Jangan pernah speechless saat ditanya begini, karena akan melemahkan posisi tawar lo di tahap selanjutnya. Lo akan terlihat asal2an dan nggak ngerti pasaran saat meminta gaji. Jawaban paling bijak adalah, "Karena nilai itu sesuai dengan kualifikasi yang saya miliki sekarang". Oh ya, saat mengucapkan kalimat itu usahakan intonasi tetap datar dan terkendali, jangan terkesan jumawa sehingga bikin petugas recruitment serasa ingin noyor kepala lo. Udah, sampe sebatas dua pertanyaan itu aja yang perlu lo jawab di tahap ini. Sebagaimana pernah gue bahas di sini<http://mbot.multiply.com/journal/item/274 <http://mbot.multiply.com/journal/item/274>>, jangan mau kalo si petugas berusaha menawar permintaan gaji lo ke titik final di tahap ini. Masih terlalu dini untuk negosiasi gaji, sehingga jawab aja dengan "Biar lebih jelas, mungkin Anda bisa ceritakan dulu paket remunerasi lengkap yang berlaku di perusahaan ini, sebagai bahan pertimbangan saya?" Kalo si petugas recruitment waras dia juga belum mau membeberkan paket remunerasi lengkap di wawancara awal sehingga posisi menjadi case-closed, sama-sama paham belum waktunya untuk bernegosiasi gaji. Atau bila ternyata dia langsung blak2an membuka paket remunerasi lengkap yang ditawarkan, artinya wawancara awal ini sekaligus wawancara final - lo diminta memutuskan akan join atau enggak di tahap itu. 3. *Proses negosiasi gaji *Setelah rangkaian proses recruitment selesai dan lo berhasil lolos dari semua saringan, lo akan dipanggil sekali lagi untuk menegosiasikan gaji. Sebaiknya lo datang ke tahap ini dengan berbekal informasi, berapa jumlah saingan lo. Kalo ternyata cuma elo sendiri yang lolos, maka posisi tawar lo akan lebih kuat. Biasanya di tahap ini, petugas akan mulai dengan menceritakan seluruh paket remunerasi lengkap yang ditawarkan - mulai dari gaji hingga tunjangan2. Catet semuanya, jangan cuma dihafal karena biasanya komponennya cukup ribet. Perhatikan komponen tunjangan kesehatannya gimana? Penggantiannya berapa persen dari tagihan dokter? Berapa jumlah per tahun? Kalo rawat inap dapat kamar kelas berapa? Things like that. Pastikan lo dapet penjelasan yang selengkap mungkin. Setelah petugas menjelaskan, biasanya dia akan nanya, "Bagaimana, apakah paket kami sudah sesuai dengan ekspektasi Anda?" Kalo jumlahnya lebih besar dari ekspektasi lo ya case-closed, lo tinggal tanda tangan kontrak kerja. Tapi kalo belum, ya inilah saatnya lo bernegosiasi, tentunya dengan ekspresi yang terkendali dan tidak bikin orang serasa ingin noyor kepala lo, misalnya dengan bilang "Sebenarnya ekspektasi saya lebih besar dari jumlah ini, yaitu sekian rupiah (atau dollar - *if you're one lucky bastard*) per tahun." Kemukakan juga alasan lo, yaitu balik ke harga pasaran kualifikasi yang lo punya plus mengacu juga ke gaji yang lo terima di perusahaan sekarang (kalo elo udah kerja). Kalo lo mau jual mahal bisa bilang dengan "Saat ini saya merasa tidak ada masalah dengan pekerjaan yang sekarang, tentunya saya butuh 'motivasi' yang lebih besar untuk berkarir di tempat lain." Ada dua kemungkinan yang akan dilakukan petugas saat mendengar jawaban lo (a) berkata, "sayang sekali, ini final offer dari kami". atau (b) "mohon tunggu sebentar, akan saya konsultasikan dengan atasan saya dulu". Apapun yang terjadi, hari itu biasanya lo akan mendapat penawaran final dari perusahaan. Kalo ternyata penawaran finalnya tetep belum memenuhi harapan lo, JANGAN langsung menolak saat itu juga. Kesannya lo mata duitan banget (walaupun mungkin memang iya) dan hanya tertarik untuk bergabung karena faktor penghasilan. Entah kenapa, hari gini masih banyak aja boss2 di perusahaan besar yang berharap orang bergabung di perusahaannya "bukan semata-mata nyari duit" sehingga langsung bete pada kandidat2 yang secara jujur mengakui motivasi kerjanya adalah uang. Lantas kalo bukan karena nyari duit, buat apa dong orang ngelamar kerja? Kelebihan energi? Anyway, JANGAN langsung menolak penawaran yang kurang memuaskan itu, dan bilang, "Baik kalau begitu akan saya pertimbangkan dulu di rumah. Boleh saya hubungi Anda lagi besok via telepon?" Dengan mengulur waktu seperti ini, lo menghindarkan diri lo sendiri dari keputusan impulsif yang mungkin akan lo sesali. 4. *Pasca negosiasi gaji *Besokannya, hubungi lagi petugas yang temui kemarin tepat waktu sesuai janji, dan sampaikan keputusan lo. Kalo lo memutuskan untuk batal bergabung, tetep jaga sopan santun dengan bilang "Mohon maaf, setelah saya pikirkan masak2, saya memutuskan untuk tetap di perusahaan saya yang sekarang dulu". Nggak perlu belagu, lo nggak akan tau kapan lo harus berhadapan dengan si petugas itu lagi. Siapa tau saat ini lo merasa udah nggak butuh lagi dengan dia, eh taunya kapan2 lo ngelamar di tempat lain dan ketemu dia lagi. Biasanya para petugas HRD punya ingatan gajah lho. Jangan lupa bilang terima kasih atas segala effortnya mengurusi proses lamaran lo. Ok, segitu dulu tips negosiasi gaji dari gue, semoga cukup jelas dan membantu.

Programmer… Oh Programmer… Begitu Ekslusifnya kah Kalian

Programmer… Oh Programmer… Begitu Ekslusifnya kah Kalian?Written on March 6, 2008 – 3:45 pm by irv
“Theory is when you know something, but it doesn’t work.Practice is when something works, but you don’t know why.Programmers combine theory and practice: Nothing works and they don’t know why”.
Ini adalah cerita sebuah pengalaman dari seorang Information Security Officer yang merangkap sebagai System Administrator plus Network Administrator dan system engineer yang terkadang nyambi kerja sampingan jadi kuli IT Help Desk beradu emosi dengan user yang malas, bloon, gak mau tau dan sok bossy.Kisah ini mengambil setting di sebuah perusahaan nun jauh di sana. Yah… meskipun perusahaan dalam cerita ini tidak eksis dan mudah-mudahan tidak terjadi beneran terhadap anda semua.
Di perusahaan tempat ia bekerja, terbentuk sebuah pola pikir bahwa IT hanya lah Progamming. Jadi seorang Programmer di tempat ia bekerja di-elu-elu-kan sekali oleh Manajer IT. Sementara jabatan lain seperti Help Desk (Teknisi), System Administrator, Network Administrator, bahkan Information Security Officer hanya dianggap sebagai pelengkap struktur Divisi Sistem Informasi saja oleh Si Manajer IT. Yak!!! Hanya sebagai pelengkap.
Situasi ini semakin diperburuk dengan sifat sang Manajer IT yang tidak pernah menerima masukkan dari staff bawahannya jika mereka mempunyai sebuah konsep atau usulan. Usulan dan konsep yang disampaikan oleh staff bawahannya hanya berakhir menjadi peti es, bahkan menguap tanpa jejak. Tapi perlu diingat loh.. usulan, teori atau konsep yang dipeti-es-kan hanya usulan yang berasal dari staff selain programmer. Tapi ketika Programmer yang di-elu-elu-kan oleh si Manajer IT tersebut berbicara, memberi usul, waaaahh…. si Manajer menyambutnya dengan rasa bangga, si Programmer langsung diberi kepercayaan untuk menerapkan konsep atau usulan yang disampaikannya itu.
Beda sekali ketika staff lainnya memberi usulan, si Manajer cuma berkata “iya..iya..” saja. Kalo toh si staff tersebut menyuruh atau mendelegasikan usulan tersebut, itu hanya sebatas basa-basi, tidak pernah ada kelanjutannya, tidak pernah hasilnya dilihat. Tapi ketika si Manajer tersebut mendapatkan usulan yang sama yang pernah disampaikan oleh staffnya namun si Manajer mendengarnya dari orang yang dia anggap “WAH!!!” atau dari media masa, si Manajer langsung mengusulkan ke staff tersebut, seolah ide tersebut datangnya dari si Manajer, padahal jelas-jelas ide tersebut pernah di lontarkan beberapa bulan sebelumnya.
Contoh kecil ketika Sang System Engineer yang merangkap berbagai jabatan mengusulkan untuk menggunakan CentOS daripada Fedora sebagai OS di server database, dengan berbagai argumen salah satunya dengan mengatakan bahwa CentOS itu diambil dari RedHat Enterprise. Si Manajer bersikeras menggunakan Fedora. Hingga kurang lebih setahun kemudian, ketika Si Manajer IT membaca ulasan tentang CentOS di sebuah majalah. Sang Manajer IT dengan santainya berkata:
“CentOS itu diambil dari RedHat Enterprise yah? Kalo gitu sama aja donk ama Fedora? Kita pake CentOS aja kalo gitu”
Sang System Engineer yang merangkap sebagai System Administrator pun menghela nafas, sambil gregetan dicampur sebel dan berkata dalem hati..“Cabe deh… kemane aje dulu waktu gue jelasin tentang CentOS?”
Yaaah.. itu hanya sebagian kecil contoh, masih banyak lagi hal-hal yang memuakkan dari sifat si Manajer IT tersebut.
Tapi ada lagi kisah yang gak kalah menarik, yaitu tentang Staff yang di mata si Manajer IT amat sangat “WAH!!” yaitu para Programmer di perusahaan tersebut. Para programmer diperlakukan ekslusif.
Sang System Engineer yang merangkap sebagai Information Security Officer pun penasaran dengan kesan dan kelakuan ekslusif dari para programmer tersebut. Pemikiran sederhana pun muncul di benak Sang System Engineer:
“Kalo mereka ekslusif, berarti mereka jago donk?”
Sampai akhirnya Sang System Engineer tersebut melakukan sedikit riset dan test batas kemampuan para kaum ekslusif tersebut. Kebetulan ada waktu dimana saat user melakukan transaksi ke database terjadi bottleneck yang mengakibatkan akses menjadi lambat sekali. Ya..ya… hal ini memang didukung oleh settingan server yang benar-benar default tanpa optimasi oleh Sang System Engineer, dan ini pun bukan keingininan Sang System Engineer, tapi melainkan kemauan dari Si Manajer IT, yang penting Servernya udah jalan, ketika dijelaskan perlunya optimasi, Si Manajer pun tidak menggubris. Tapi sialnya ketika terjadi bottleneck, selalu blamming Sang System Engineer, kaum ekslusif pun menyalahkan database servernya.
Wah.. Sang System Engineer pun penasaran, akhirnya ia pun melakukan berbagai debug dan analisa terhadap server. Dengan kesadaran sendiri ia pun melakukan tune-up terhadap server tersebut, tapi hasilnya sama. Hingga pada akhirnya ia menemukan kasus “idle connection”. Hasil googling mengatakan bahwa, setiap koneksi ke database memesan register memory, jadi selama koneksi tersebut belum dilepas maka memory tersebut belum direlease. Hal ini memang menjadi habit dari aplikasi berbasiskan TCP/IP, itu sebabnya aplikasi yang berbasis TCP/IP idealnya melakukan “Closing Connection” jika tidak dibutuhkan.
Tapi tidak dengan aplikasi yang dibuat oleh para kaum ekslusif tersebut. Mereka tidak melakukan testing secara full sebelum merilis aplikasinya. Ketika dijelaskan kenapa terjadi bottleneck tersebut, dan dijelaskan mengenai aplikasi berbasis TCP/IP idealnya menutup koneksi ke server jika kedaan idle dalam batasan waktu tertentu. Mereka seolah tidak mau menerima bahwa terjadi kesalahan dalam aplikasi yang mereka buat. Bahkan ada satu dari kaum ekslusif tersebut yang mengatakan telah mencoba untuk membuat skrip otomatis MENUTUP APLIKASI, jika idle dalam batas waktu tertentu.
WHAT THE…???!!! Mereka itu ngerti gak sih??? Mereka menguasai gak sih tools yang mereka gunakan??? Jelas-jelas sudah dikatakan, TUTUP KONEKSI, bukan TUTUP APLIKASI.MORON….
Dan hal lain yang menjengkelkan dari kelakuan kaum ekslusif tersebut adalah, mereka menggunakan mesin production untuk mendevelop aplikasi, padahal sudah disiapkan 2 mesin development…Sang System Engineer pun tak habis pikir:
“Jadi ini toh yang merasa ekslusif? Merka tau gak sih apa yang mereka kerjakan? Meraka menguasai tools, dan system yang mereka gunakan?”
Jadi teringat sebuah quote yang telah saya tulis di atas sebelumnya, yaitu:
“Theory is when you know something, but it doesn’t work.Practice is when something works, but you don’t know why.Programmers combine theory and practice: Nothing works and they don’t know why”.
Jangan-jangan kategori ekslusif bagi mereka seperti itu??
Cerita ini bukan merupakan luapan kecemburuan kerja di dalam organisasi tempat ia bekerja, hanya sebagai refleksi buat kita-kita semua, semoga orang lain tidak mengalami hal serupa.

Discussing Programmer

tadi pagi saya mendapat email dari istri saya. isi emailnya adalah sebuah artikel dari sebuah website yang menjelaskan tentang bagaimana menjadi seorang “good programmer” dan bagaimana berubah dari “good programmer” menjadi “advance programmer”. karena sibuk saya tidak sempat membacanya. saya putuskan untuk dijadikan bahan diskusi diperjalanan pulang, kebetulan saya memang sudah janji menjemput istri.Diperjalanan istri saya menceritakan artikel itu bahwa seorang programmer yang baik adalah programmer yang dapat membuat kode program yang dapat digunakan oleh pemula. pemula yang baik adalah programer yang dapat menggunakan kode program dari “good programmer”. Programmer lanjut adalah programmer yang dapat membuat code program yang dimengerti dengan mudah oleh programmer lain.jika tidak sebuah tim tidak akan dapat dengan mudah mengerjakan sebuah proyek dengan mulus. Apalagi proyeknya proyek besar, hasilnya sangat menjijikan.Ini memang terjadi dan dialami oleh saya. Saya pernah dilibatkan dalam sebuah proyek besar yang timnya terdiri dari para programmer yang idealis. Beberapa kali project manager mencari banyak programmer yang berpengalaman dan expert tapi sayang ketika bergabung dalam sebuah tim hasilnya bukan tambah bagus tapi tambah parah. sang manager selalu percaya dan menyerahkan solusi ke setiap programmer namun disitulah terjadinya bencana. Kembali ke pembicaraan dengan istri saya. Artikel itu ujungnya menyimpulkan bahwa sebagian besar Big IT project berakhir acak-acakan. So, big projects are ugly, setuju?