Tentu tetap harus belajar. Dari sisi pengajar dan konsultan, tuntutan menyesuaikan diri dengan kemajuan ilmu dan teknologi, sungguh melelahkan ibarat mengejar mas-mas yang tidak pernah kesampaian. Meski sudah dipilihkan domain spesifik berkenaan dengan software engineering, rasanya menerjuninya masih saja terseret-seret. Kadang saya tidak mengerti atau masih tidak mengerti, bagaimana agar menjadi superman yang menguasai semua lini keilmuan tersebut? Atau falsafahkan bawang bombay, cukup tahu bagian terluarnya saja? Kupas dan masuk satu lapis demi lapis?
Lihat, piring favorit saya yang menunjukkan techonology layering:
Mau main di mana? Tools? Method? Model Process? Quaility focus?
Silahkan-silahkan :)
Lihat framework ketika mengcreate sebuah software, di mana spesialisasimu?
Seringkali saya berpendapat bahwa kita mulai dengan sebagai konstruktor, tukang konstruksi alias pemrogram. Naik pangkat menjadi desainer, analis, planner? atau terbalik, pendekatan dari komunikasi, perencanaan, dan akhirnya menjadi pembuat modul atau komponen program. Pendekatan top down atau bottom up? Dari hulu ke hilir, atau hilir ke hulu?
Tidak adil rasanya kita melakukan analisis dan desain tanpa faham bagaimana pertanggung jawabannya ketika konstruksi dimulai. Tidak bagus rasanya ketika melakukan pengkodean tanpa melakukan analisi dan desain yang sesuai dengan kebutuhan pengguna.
Tapi apakah, kembali, kita harus menjadi jagoan neon menguasai semua kotak-kotak pekerjaan tersebut? Jika memang semua adalah kerja tim sesuai peran masing-masing, kendala utama adalah bagaimana mengkomunikasikan antara satu tahapan dengan tahapan lainnya? Cukupkah itu? atau haruskah kita menerjuninya langsung ke semua aspek?
Untuk itulah saya terseret-seret hehehehehe..
Contoh tahun ini ketika ada pekerjaan menyusun Business Requirement Specification yang membuat saya membaca sekilas-kilas apa itu IT-IL dan tidak mengerti :D. Sebelumnya, ada pekerjaan yang membutuhkan lima hari pulang pergi Bandung-Jakarta untuk requirement elicitation langsung dengan pengguna, alhamdulillah usernya sangat bersahabat, 100 use-case saya persembahkan untuknya :)
Kemudian ada aplikasi yang ngotot saya harus buat sendiri demi menjaga kualitas. Banyak komputasi bermain dengan algoritma, dan hasilnya muntahlah saya ketika membuat store-procedure di MySQL untuk mengimplementasikan algoritma tersebut, kelakuan cursor yang aneh..
Belakangan, saya mabok pindahan paradigma web application dan menerapkan MVC dengan framework PHP yang menurut saya bagus, Cake. Let's bake! Ternyata convention over configuration itu membuat saya semakin memuja dosen tercinta, ibu IL karena pemaksanaan beliau dalam membuat spesifikasi. Sekarang, sibuklah saya mencari mencari helper Ajax dan.. menyerah :( [Ah suruh mahasiswa saja yang mencoba? ha ha..]
Tidak.. Tidak cukup. Saya HARUS berenang, meski mungkin bodoh karena pasti tenggelam. Tapi jika dicicil, pasti saya bisa :) Berenang ke hulu, berenang ke hilir. Berhenti di tengah--tengah sambil terengah-engah.. Di tengah bersenang-senang dengan UML untuk analisis dan desain, nah itu! Itulah tempat saya, yaitu di kotak-kota tengah itu.. Tapi jangan salah, dibawa ke hulu saya hayu, di bawa ke hilir saya tidak ketar ketir.. Mungkin tidak mungkin menjadi jagoan neon, tapi saya tahu saya membawa diri di tengah arus..
Ya kan?