Learn the Rules, Break The Rules, and Create the New Ones...

Hi... My name is Rizky Prihanto. You can call me RQ, or Rizky either. I am currently living on Bandung, Indonesia. Had a lot of works and research about Enterprise Information Systems (majoring on education and e-governments). I have bunch of interests (some friends call it 'freakz') about MySQL Opensource Database and now I am one of the administrator of MySQL Indonesia User Group - the opensource community initialized by Sun Microsystems Indonesia.

My Company PT Cinox Media Insani, Bandung, Indonesia. I work here since 2008 and I take responsibility as Chief of Software Architect. My job is about planning, imaginating, fantasy-ing, concepting, and build the infrastructure of the new information systems (or app engines) which going to be implemented.

This blog This is my blog that represent my current opinion, research and experiences about anything in Software Engineering. Written since 2007 (actually) and has been vaccum for a lot of while. And now I wanna ressurrect this blog (optimistically) from the long-long-hibernation with something fresh and new ideas -- still about MySQL, software engineering, development, and may be something managerial here.

About the tagline I've learned the statement above from some paper written by Kent Beck about Extreme Programming (XP) methodology -- some sort of practical software development methods which have no boundaries. That's very inspiring me a lot. I have written some article on this blog that tell my interpretation about that statement here.

My Another Blogs I have classifying my blogs into some sort of genre. The blog that you read here right now is my primary blog that tell you (majoring) about IT stuff. But if you wanna look another side of me, you can visit here, here, here,or here. Hope it'll be interesting for some of you.

Credits I would thanks to Blogger for this great blog platform. Skinpress who designed this Wordpress template (which is bloggerized by Free Blogger Templates). My appreciate is also going to you who give your generously time for visiting my blog.

4
Software Arsitek adalah...

Sebenarnya blog ini sudah direncanakan sejak luamaaa bgt.., cuman kendala teknis (dan finansial) yang menghambat launching blog ini selalu tertunda2... Saya sudah lama meregister domain http://www.software-arsitek.web.id dari depkominfo, namun saya belum hosting.
Alhamdulillah, sekarang saya udah kerja di PT Lintang Kawuryan (http://www.linkar.co.id) dan fasilitas kantor berupa internet gratis tiap hari bisa saya manfaatkan untuk memaintenance situs ini... (kalo dulu, hampir nggak kuat saya ngongkosin diri saya sendiri utk ke warnet. maklum masih mahasiswa).

Ups, ini kan MUKKADIMAH. Agak aneh klo saya curhat di sini. Oke lah, buat Anda yang penasaran ato pengen tau ato udah tau tapi pengen tau pendapat newbie seperti saya mengenai apa itu software arsitek?, inilah dia...

Software arsitek, kalo di-inggris-kan itu adalah software-architect. Itu jabatan fungsional yang dipegang Bill Gates di Microsoft setelah lengser dari CEO. Saya ngga mau ceritakan detail kenapa Bill Gates berkeinginan lengser dari pemimpin Microsoft n lebih milih jadi Chief of Software Architect (CSA), cuman yang ingin saya katakan di sini adalah : CSA itu adalah puncak tertinggi dari aspek technical dari suatu perusahaan software. Yup, technical. Bukan aspek manajerial...

Bagi kita2 para orang teknis -- kerja di balik meja, berfikir strategis tentang manajemen, kelangsungan hidup perusahaan, cara menggaji karyawan, strategi pemasaran, itu sangat tidak menyenangkan. Mungkin dari kacamata luar, pekerjaan dgn gaya kaya' gitu tampak mudah. ah, tinggal pura-pura mikir, pura-pura ngetik padahal main solitaire, apa susahnya???

Kompetensi, bro. Aspek-aspek manajerial di perusahaan itu emang *seharusnya* dipegang oleh orang-orang yang berkompetensi di bidang manajemen, entah itu kompetensi yang didapat dari latar belakang akademik, ato dari bakat... -- lha orang teknis, yang ngga bakat manajemen? yang ngga pernah tau apa2 aja sih hal penting yang harus disikapi untuk (misalnya) perilaku keorganisasian, partnership, branding, dll -- kalo manajer ngga ngerti itu, waah... bisa-bisa kachaow-beliaow tu perusahaan...

Temenku dulu pernah bilang gini waktu aku ngga bisa ngambil penjurusan IPA setalah bagi raport kelas 2 SMA : "Q, ndak masalah kita masuk IPA ato IPS... kalo kita bisa jadi yang nomor satu di bidang kita -- kita akan tetap dihargai. Walaupun sekarang image anak2 IPS itu bla-blab-bla...." -- dan setelah sekian lama bergelut di dunia IT (walo latar belakang SMA ku IPS), aku mulai memahami sinergi antara ilmu-ilmu sosial dan ilmu-ilmu eksakta... DUA-DUA-NYA berperan penting dalam kehidupan kita... mutualisme...

... mungkin di post yang lain ntar aku akan ceritakan salah satu wujud mutualisme antara ilmu sosial dan technical...

Kembali ke laptop... :)

Menurut pak Wiwit Siswoutomo, Software Arsitek itu (dia menyebutnya System Architect), adalah posisi yang bertanggung jawab untuk mengembangkan dan memelihara arsitektur sistem informasi di mana memungkinkan dan mempercepat pelayanan proses bisnis, product roadmaps, dan strategic initiatives. Ibaratnya, tu SA itu adalah seorang dirigen dari orkestra System Development Lifecycle, mo dibuat gimana ni software, mo diarahin ke mana ekspansi teknologinya, mo ngasih fitur-fitur apa yang tepat guna n mampu memberikan solusi terhadap masalah-masalah kesistem-informasian... membuat blueprint, dan bertanggung jawab terhadap arsitektur sistem selama-lamanya... Yach, percis kya arsitek gedung deh. Klo ada bangunan pencakar langit yang ambroll, yang dicari pertama kan arsiteknya? Begitu deh...

Dalam agile methodology macam Extreme Programming, software arsitek ini sering disebut sebagai mentor. Dia bertindak sebagai manajer teknis, pelatih, sampai supervisor para-para coder ketika fase konstruksi. Supervisor coder (?) berarti harus bisa coding juga donk? Oh, tentuuuu itu... - software arsitek itu bukan suatu jabatan fungsional yang *langsung begitu saja* bisa kita dapatkan. Untuk menjadi seorang software arsitek, dia juga harus punya jam terbang tinggi sebagai programmer, sebagai tester, sebagai dokumenter, sebagai databaser... - makanya di kuliah Teknik Sipil, di semester-semester awal banyak mahasiswa yang disuruh jadi tukang dulu kan? hehehe....

Kenapa harus bisa coding ? Yaa, jawaban simpel-nya : biar nggak dikibulin ama coder-coder-nya.. misal gini :
SA : "Untuk memfasilitasi menu aplikasi yang woakehh, kita akan mempergunakan treeview sebagai menu. "
trus programmernya yang ngga mau repot bilang gini :
Coder : "wah pak, ngga bisa pake treeview! ndak shiepp itu... harus main sibling-siblingan. susah. mending pake dropdown menu aja... "
- nah, seorang Software Arsitek yang bener, dia akan bilang gini :
SA : "siapa bilang susah, bro! treeview ini caranya gini looo" (sambil nunjukin contoh coding). "Nah, sibling2an itu baru kita pake klo kita mo generate menu.. tapi utk aplikasi ini, kita hanya niru IMK-nya Microsoft Management Console doank koq... ngga berat-ngga berat. mudah juga koq. coba pelajarin lagi.."

coba bayangkan, kalo SA ngga ngerti coding blass... mo jadi apa software yang akan dikonstruksi coder-coder nya itu...

begitu deh...

Yaa, mungkin ini belum cukup memberikan secuil gambaran tentang siapa sih software arsitek itu... mungkin lain kali aku ceritakan lagi deh... nie blogs kan judulnya SOFTWARE ARSITEK, jadi pembahasan-pembahasan di blogs ini yaa larinya nggak jauh2 amat dari arsitektur software dan arsitektur sistem informasi...

Well, untuk sementara sekian dulu deh. Makasih udah mengunjungi situs ini...