Rabu, 23 Januari 2013

Tentang Programmer

Artikel Job Programmer


Dalam melakukan sesuatu harus diawali dengan niat dan usaha, apalagi saat ini dalam dunia usaha sangat sulit sekali untuk mendapatkan pekerjaan karena sangat berbanding terbalik antara lowongan pekerjaan dengan para pencari pekerjaan. Seperti yang telah diketahui angka pengangguran sangat besar di Indonesia.
Lowongan pekerjaan yang saat ini dibutuhkan adalah dalam bidang Programmer. Sebelumnya kita harus tahu terlebih dahulu apa itu programmer. Programmer   adalah   individu   yang   bertugas   dalam   hal   rincian implementasi,  pengemasan,  dan modifikasi  algoritma serta struktur data, dituliskan   dalam   sebuah   bahasa   pemrograman   tertentu. Pekerjaan ini selain sulit mendapatkannya karena harus memiliki kemampuan dalam bidang ini juga karena saingannya yang banyak. Dalam bidang Programmer, biasanya syarat-syarat yang harus di miliki adalah :
  1. Konsep dasar OOP
  2. Dasar-dasar Java
  3. Pernah menggunakan minimal 2 (dua) bahasa pemrograman
  4. Konsep struktur data, misalnya tree, list
  5. Konsep relasional termasuk join dan subquery
  6. Mengerti SQL untuk minimal satu produk database
  7. HTML dan CSS
  8. Dasar-dasar jaringan komputer
  9. Bahasa Inggris (minimal membaca)
  10. Pernah membuat minimal satu aplikasi utuh (dari tampilan depan sampai ke database, lengkap dengan validasi) dengan minimal 4 (empat) tabel yang berelasi.
Deskripsi Pekerjaan :
a)    Menulis program (coding) dengan menggunakan pemograman tertentu ( VB, VB.NET, Java ).
b)    Memahami konsep basis data.
c)    Mampu mengoperasikan aplikasi basis data.
d)    Melakukan pengujian terhadap aplikasi program.
e)    Melakukan analisis terhadap aplikasi program.
f)     Melakukan riset , desain, dokumentasi dan modifikasi aplikasi software.
g)    Melakukan analisis dan memperbaiki kerusakan (error ) pada software dengan tepat dan cara yang akurat.
h)    Menyediakan status laporan aplikasi yang diperlukan.

·      Database Programmer
Programmer yang menguasai perancangan dan pemrograman database menggunakan Aplikasi  Ms.  Access dan Ms.  Sql  Server ATAU PL/SQL dan Oracle Form Developer 10g.
·      Web Programmer
Programmer web yang menguasai pengembangan aplikasi web berbasisKelompok 1 “Etika Programmer” HTML dan ASP.Net  ATAU aplikasi web berbasis HTML dan J2EE serta Struts Framework ATAU aplikasi web berbasis MySQL dan PHP.
·      Multimedia Programmer
Programmer multimedia yang menguasai penggunaan teknologi dan pengembangan aplikasi berbasis multimedia.
·      Embedded Programmer
Programmer yang menguasai arsitektur sistem mikroprosesor, interfacing dan pemrograman embedded.

Pemrograman komputer membutuhkan sebuah kode etik, dan kebanyakan dari kode-kode etik ini disalurkan berdasarkan kode etik yang kini digunakan oleh perkumpulan programmer internasional. Kode etik seorang programmer adalah sebagai berikut :
1.    Seorang   programmer   tidak   boleh   membuat   atau   mendistribusikan Malware.
2.    Seorang programmer tidak boleh menulis kode yang sulit diikuti dengan sengaja.
3. Seorang   programmer   tidak   boleh  menulis   dokumentasi   yang   dengan sengaja untuk membingungkan atau tidak akurat.
4.    Seorang programmer   tidak boleh menggunakan ulang kode dengan hak cipta kecuali telah membeli atau meminta ijin.
5.    Tidak boleh mencari keuntungan tambahan dari proyek yang didanai oleh pihak kedua tanpa ijin.
6.    Tidak boleh mencuri software khususnya development tools.
7.   Tidak boleh menerima dana tambahan dari berbagai pihak eksternal dalam suatu proyek secara bersamaan kecuali mendapat ijin.
8.   Tidak   boleh   menulis   kode   yang   dengan   sengaja   menjatuhkan   kode programmer lain untuk mengambil keunutungan dalam menaikkan status.
9.    Tidak boleh membeberkan data-data penting karyawan dalam perusahaan.
10.  Tidak   boleh   memberitahu   masalah   keuangan   pada   pekerja   dalam pengembangan suatu proyek.
11.  Tidak pernah mengambil keuntungan dari pekerjaan orang lain.
12.  Tidak boleh mempermalukan profesinya.
13.  Tidak boleh secara asal-asalan menyangkal adanya bug dalam aplikasi.
14.  Tidak boleh mengenalkan bug yang ada di dalam software yang nantinya programmer akan mendapatkan keuntungan dalam membetulkan bug.
15.  Terus mengikuti pada perkembangan ilmu komputer.
Pada   umumnya,   programmer   harus   mematuhi   “Golden   Rule”: Memperlakukan orang  lain  sebagaimana kamu  ingin diperlakukan.   Jika  semua programmer   mematuhi   peraturan   ini,   maka   tidak   akan   ada   masalah   dalam komunitas. Pemrograman komputer membutuhkan sebuah kode etik, dan kebanyakan dari kode-kode etik ini disalurkan berdasarkan kode etik yang kini digunakan olehperkumpulan programmer internasional.

KETERAMPILAN   YANG   HARUS   DIMILIKI   SEORANG PROGRAMMER
Membaca   kode   sumber   sebuah   program,   dari   yang   sederhana   hingga relative   kompleks,   adalah   keterampilan   yang   harus   dimiliki   oleh   seorang programmer.   Istilah   program  di   sini   digunakan   tidak   hanya   dalam  pengertian aplikasi utuh, namun juga mencakup level segmen kode, fungsi/subrutin, pustaka atau modul yang digunakan oleh sebuah aplikasi utuh. Manfaat dari terbiasanya kita membaca program adalah semakin banyaknya sumber informasi yang dapat kita gunakan untuk memecahkan masalah.
Implementasi sebuah algoritma yang memodifikasi sebentuk struktur data dalam sebuah program dapat kita adaptasikan ke dalam program yang kita buat sendiri dengan konteks dan struktur data yang sama sekali berbeda. Terlepas dari manfaat pedagogisnya, sayangnya keterampilan ini tidak banyak diajarkan namun baru terasa urgensinya saat kita disodori kewajiban memodifikasi program yang ditulis  dan  sebelumnya  dikelola oleh orang  lain.  Dengan hanya  berbekal  kode sumber   dan   dokumentasinya   (yang,   patut   disayangkan,   tidak   selalu komprehensif),   dalam  keadaan   seperti   ini   seorang   programmer   harus  mampu melanjutkan pengelolaan program tersebut tanpa menghancurkan organisasi kode yang  telah ada atau menambah kompleksitas yang  tidak perlu ada.  Di  sisi   lain keadaan  ini akan  jarang ditemui  oleh rata-rata programmer,  karena  lebih sering penulis   asli   dari   program  itulah   yang   harus  melanjutkan   pengelolaan,   setelah memindahkan perhatian pada hal lain selama beberapa waktu.
Karenanya   dapat   disimpulkan   bahwa   secara   umum,   keterampilan   yang harus   dimiliki   seorang   programmer   terkait   dengan   komprehensi   kode   sumber program, dengan derajat urgensi menurun(Hargo,2008), adalah:
1.   Memahami   kode   sumber   yang   ditulis   sendiri   pada   saat   ia   tidak   lagi mengingat detail mekanisme dari program tersebut.
2.    Melanjutkan   pengelolaan,   menyesuaikan,   mengembangkan   dan   (bila perlu)  merombaknya   untuk  menyesuaikan   program  dengan   kebutuhan pengguna tanpa mengorbankan kemudahan perawatan di masa mendatang.
3.   Memiliki kemampuan sebagaimana dijelaskan dalam point 1. dan 2. untuk program yang ditulis dan didokumentasikan oleh programmer lain.
4.   Membaca  program  untuk  memperkaya   perkakas  yang   dimiliki   seorang programmer untuk memecahkan masalah.

KEWAJIBAN PROGRAMMER
Buat para programmer, Coding adalah kewajiban. Sama halnya menghafal obat-obatan   bagi   dokter,  maupun  menghafal   undang-undang   bagi   pengacara. Sebagian programmer menganggap dirinya spesial, karena tidak semua orang IT dapat menguasai salah satu (atau bahkan beberapa) bahasa pemrograman. Seorang programmer memiliki kewajiban sebagai berikut :
1.    Memahami konsep dasar sistem operasi.
Kebanyakan   dari   programmer   Indonesia   biasanya  membuat   aplikasi   di atas sistem operasi, sehingga banyak yang berpendapat bahwa tidak perlu memahami   cara   kerja   sistem  operasi.  Untuk   programmer   profesional, pemahaman   ini   akan  membuat   programmer   lebih   siap  untuk  membuat aplikasi server yang biasanya  multithreaded  dan harus efisien digunakan dalam waktu   yang   lama.   Pemahaman  mendalam  di   salah   satu   sistem operasi juga merupakan nilai tambah yang signifikan. Dengan mengetahui struktur   internal   sistem  operasi   (misalnya   Linux),   programmer   dapat mengetahui berbagai pertimbangan dalam merancang aplikasi besar yang terus berkembang.
2.    Memahami konsep dasar jaringan.
Sebuah aplikasi tidak dapat berjalan sendiri. Aplikasi tersebut pasti harus berhubungan   dengan   internet,   melayani   banyak   pengguna,   atau berhubungan dengan perangkat lain seperti handphone atau PDA. Untuk itu, pemahaman atas konsep jaringan sangat penting.
3.    Memahami konsep dasar relational database.
Setiap   aplikasi   pasti   memiliki   sebuah   database   dalam   penyimpanan datanya   untuk   itu   programmer   khususnya   Database   Programmer ditekankan menguasai relational database.
4.    Karena sekarang jaman internet, maka wajib memahami protokol HTTP, FTP,  POP3,  SMTP,  SSH.  Protokol  HTTP sekarang adalah prokol  yang paling banyak digunakan di internet.
5.    Karena   sekarang   jaman   globalisasi,  maka  wajib  memahami  Unicode. Unicode  itu penting supaya aplikasi  kita  tetap bisa diinstal  di  komputer mana saja.
6.    Lebih dari satu bahasa pemrograman.
Pemahaman lebih dari satu bahasa itu penting agar wawasan programmer lebih  terbuka.  Bahwa  tidak ada bahasa yang one-fit-all,  bahwa ada cara berpikir  yang berbeda dalam  tiap bahasa,  bahwa komunitas  tiap bahasa berbeda   budayanya.  Semua   ini   akan   berkontribusi   dalam  pendewasaan seorang   programmer   dalam   berdiskusi   dan   menanggapi   perbedaan (terutama pendapat).
7.    Cara menggunakan Version Control.
Dalam dunia kerja, penggunaan version control adalah wajib. Ini standar (de   facto)   internasional.   Jika  mempunyai   project   opensource,   baik   di Sourceforge,  Apache,  Codehaus,  dan semua hosting project  opensource, pasti programmer akan diberikan version control.

SIKAP PROGRAMMER TERHADAP KLIEN
1.    Mempunyai   sikap & kepribadian baik,  komunikatif,  mudah beradaptasi dengan lingkungan kerja, cetakan dan fleksibel.
2.    Mampu bekerja berorientasi jadwal, mengatur pekerjaan multiple project dan nerkerja sama dalam team.
3.    Membuat kontrak kerja dengan klien.
4.    Menyukai dan mengerti dasar-dasar pemrograman.

Posting Lebih Baru Posting Lama Beranda

0 komentar:

Posting Komentar