Rabu, 15 Mei 2013

Profesi IT Software Engineering



Software Engineering atau SE adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas.

Software Engineer bisa digolongkan sebagai sebuah profesi. Deskripsi kerja dari seorang Software Engineer adalah melakukan aktivitas engineering (analisa, rekayasa, spesifikasi, implementasi, dan validasi) untuk menghasilkan produk berupa perangkat lunak yang digunakan untuk memecahkan masalah pada berbagai bidang.

Untuk bisa melaksanakan tugas sebagai Software Engineer seseorang harus memiliki latar belakang pendidikan tertentu yang memberikan bekal untuk melakukan kerja dengan baik dan benar. Selain itu setelah lulus dari pendidikan, seorang Software Engineer juga dituntut untuk memiliki pengalaman cukup dalam pekerjaan ini melalui keikutsertaannya sebagai pekerja magang dalam proyek. Software Engineer juga harus terus memperbaharui pengetahuan dan ketrampilannya sesuai dengan perkembangan teknologi komputer yang cepat.

Profesi Software Engineer sejauh ini belum memiliki organisasi profesi. Organisasi profesi Software Engineer yang mungkin diperlukan adalah tidak diperlukan untuk menyeleksi keanggotaannya, namun yang penting adalah bisa memberikan kualifikasi yang jelas tentang apa Software Engineering itu, siapa Software Engineer itu, dan membantu anggotanya untuk memperbaharui pengetahuan dan ketrampilannya. Namun belakangan ini pengesahan profesi Software Engineer oleh organisasi profesi mulai dirasakan perlu karena banyak bidang kerja profesi ini yang bersinggungan dengan hajat hidup orang banyak.

karakteristik yang dimiliki Software Engineer:
Kompetensi,  yaitu suatu sifat yang selalu menuntut profesional Software Engineer untuk
 memperdalam dan memperbaharui pengetahuan dan ketrampilannya sesuai dengan tuntutan profesinya. Seorang Software Engineer tidak boleh berhenti belajar karena dunia software engineering terus berkembang dan berubah dengan cepat. Profesi Software Engineer tidak melekat seumur hidup, hanya sepanjang seseorang terus mengikuti tuntutan profesinya. Dan ini sesuai dengan etika profesi yang berlaku umum bahwa hanya profesional yang berkompeten yang berhak melakukan pekerjaan di bidangnya.

Tanggung jawab pribadi: yaitu kesadaran untuk membebankan hasil pekerjaannya sebagai tanggung jawab pribadi. Seorang Software Engineer untuk itu harus mengenal kemampuan dirinya, sehingga bisa mempertanggungjawabkan semua pekerjaan yang dilakukannya secara moral: selalu merekomendasikan apa adanya, melakukan pekerjaan yang menjadi bidang kompetensinya, dan mendahulukan kepentingan umum.

Pendidikan formal yang diperlukan seorang Software Engineer
Kemampuan yang perlu dimiliki seorang Software Engineer supaya dapat melaksanakan tugas dan tanggung jawabnya secara baik dan benar adalah:
 metodologi pengembangan perangkat lunak: analisa masalah, perancangan sistem yang ada dan yang akan dibangun, meng-kode-kan disain menjadi perangkat lunak.
Mengelola kelompok kerja
Mengelola sumber daya: merencanakan, mengadakan, mengawasi, dan mengoptimalkan pemanfaatannya
Komunikasi
Seorang Software Engineer harus memiliki pendidikan formal tingkat sarjana yang merupakan gabungan dari bidang:
·         Computer science: terutama dalam perangkat keras
·         Engineering: terutama dalam pendekatan/metode analisa pemecahan masalah
·         Industrial engineering: terutama dalam optimasi proses dan sumber daya
·         Management: terutama dalam mengelola manusia dan kelompok kerja, manajemen proyek
·         Social science: terutama dalam pendekatan manusia dan komunikasi
Dari uraian di atas jelas bahwa profesi Software Engineer tidak semata mengandalkan pengetahuan dalam ilmu komputer.

Pada negara- negara maju di dunia seperti amerika,  profesi sebagai seorang Software engineer sangatlah diminati. Menurut Glassdoor, seperti dikutip dari Wall Street Journal, seorang Software engineer Google rata-rata memiliki gaji pokok sebesar 128.336 dollar AS (sekitar Rp 1,2 miliar per tahun atau Rp 100 juta perbulan)

Rekomendasi untuk pengembangan profesi Software Engineer di Indonesia.
Di Indonesia profesi Software Engineer belum terdefinisikan, masih dicampur adukkan dengan profesi lainnya. Di dalam pengembangan perangkat lunak dikenal 2 aktor yang terlibat yaitu System Analyst dan Programmer. System Analyst melakukan analisa terhadap masalah dan kebutuhan organisasi dalam mengelola orang, metode, dan teknologi untuk mengatasi masalah tersebut. Programmer merencanakan keperluan penggunaan perangkat keras dan lunak yang sesuai dengan solusi yang direkomendasikan oleh System Analyst, dan memastikan kebenarannya sesuai dengan spesifikasi.
Bidang kerja Software Engineer meliputi bidang kerja System Analyst dan Programmer yaitu mencakup semua fase dalam software development life cycle: analisa sistem, analisa kebutuhan perangkat lunak, perancangan sistem, pembuatan dan perawatan perangkat lunak, ditambah dengan tugas dari manager proyek yaitu perencanaan dan pengelolaan proyek.