Programmer/Developer
Profesi programmer/developer adalah
profesi yang paling sering terdengar, karena profesi ini sudah ada sejak
diciptakannya komputer itu sendiri. Profesional dalam bidang software
development dan consulting umumnya pernah meniti karir sebagai seorang
programmer. Keahlian dalam algoritma dan penguasaan terhadap salah satu atau
beberapa bahasa memprograman mutlak diperlukan oleh seorang programmer.
Programer adalah profesi inti dan tulang punggung dalam software development
karena tidak akan terwujud sebuah software aplikasi tanpa adanya programmer,
sedangkan tanpa didukung profesi lainnya, seorang programmer dapat membuat
sebuah aplikasi yang berguna walaupun dengan cakupan terbatas.
Berdasarkan jenis programming dan output yang dihasilkan, programmer
sendiri ada beberapa macam yaitu:
1.1.Hardware Programmer
Hardware programmer sebenarnya adalah
bagian dari hardware engineer. Sesuai namanya, mereka melakukan programming
secara low level terhadap hardware, misalnya mikrokontroler, embeded sistem,
PLC atau device lainnya. Pada awal diciptakannya komputer, programmer jenis ini
lebih dominan karena cara memprogram komputer waktu itu mirip dengan cara
memprogram mikrokontroller saat ini. Bahasa yang digunakan dulunya adalah
bahasa mesin tetapi saat ini cenderung digunakan bahasa assembly dan C.
1.2. System Programmer
Dalam pekerjaannya, system programmer
menggunakan low level dan medium level language. Biasanya mereka dipekerjakan
dalam pengembangan sistem operasi dan modul-modul pendukungnya. Para
pengembangan driver untuk periferal dan programming dalam SIM/UIM card juga
digolongkan ke programmer jenis ini. Perbedaan system programmer dengan
hardware programmer adalah: System programmer bekerja pada tahap pengembangan
suatu platform / sistem operasi atau yang terkait erat dengannya untuk
dijadikan sebagai landasan (platform) bagi pengembangan selanjutnya, sedangkan
hardware programmer bekerja pada tahap implementasi suatu produk agar sesuai
dengan requirement end user. Programmer jenis ini biasa menggunakan bahasa
Assembly, C/C++ dan kemungkinan C# dikemudian hari bila sistem operasi yang
menggunakan managed code (.Net) benar-benar diluncurkan.
1.3. Application Programmer
Bagi yang sering mendengar profesi
“Application Developer”, “Software Developer”, “Web Developer”, “Enterprise
Developer” atau “Developer” saja, profesi-profesi tersebut tergolong sebagai
Application programmer. Programmer jenis inilah yang paling banyak dan populer
di dunia kerja terutama di Indonesia. Hal ini disebabkan karena aplikasi adalah
jenis software yang paling banyak di gunakan.
Perbedaan istilah “application” dengan “software”. Singkatnya, dalam dunia IT, yang disebut application sudah pasti adalah sebuah software, sedangkan software belum tentu sebuah application. Software yang bukan termasuk aplikasi contohnya adalah operating system, device driver, protocol dll. Sedangkan yang dikenal sebagai aplikasi adalah software seperti office suite, image editor, games, sistem informasi retail/swalayan, sistem informasi pendidikan, sistem informasi hotel/retaurant, sistem informasi manajeman gudang, sistem informasi logistik, ERP (Enterprise Resource Planning), SCM (Suply Chain Managemant), CRM (Customer Relationship Managemant) , sistem bank, sistem airline dan masih banyak lainnya.
Perbedaan istilah “application” dengan “software”. Singkatnya, dalam dunia IT, yang disebut application sudah pasti adalah sebuah software, sedangkan software belum tentu sebuah application. Software yang bukan termasuk aplikasi contohnya adalah operating system, device driver, protocol dll. Sedangkan yang dikenal sebagai aplikasi adalah software seperti office suite, image editor, games, sistem informasi retail/swalayan, sistem informasi pendidikan, sistem informasi hotel/retaurant, sistem informasi manajeman gudang, sistem informasi logistik, ERP (Enterprise Resource Planning), SCM (Suply Chain Managemant), CRM (Customer Relationship Managemant) , sistem bank, sistem airline dan masih banyak lainnya.
Dalam pekerjaannya, application programmer
menggunakan high level language seperti Java, C#, Visual Basic (VB), VB.Net,
Delphi, PHP dll. Dengan menggunakan high level language, proses pengembangan
akan lebih mudah dan lebih cepat.
Hal
ini sesuai dengan tuntutan kebutuhan customer yang terus berkembang dengan
cepat.
Dalam hal cakupan keahlian yang dibutuhkan, secara kasar jenis aplikasi dapat dibagi menjadi:
Dalam hal cakupan keahlian yang dibutuhkan, secara kasar jenis aplikasi dapat dibagi menjadi:
·
Desktop Application (aplikasi yang berwujud Windows
Form, WPF, XWindows atau jenis GUI lainnya yang berjalan di O/S masing-masing)
·
Web Application (aplikasi yang user interface-nya
berwujud HTML dan diakses dengan web browser, biasa dikembangkan dengan
framework PHP, ASP.Net, Java, Spring, Ruby on Rails dll )
·
Database Application (aplikasi yang memerlukan akses
ke database menggunakan teknologi seperti ADO.Net, OLEDB, ODBC, JDBC, ORM,
Hibernate dll)
·
Distributed Application (aplikasi terdistribusi/server
service seperti Web Service, J2EE, WCF, COM+ dll)
Walaupun digolongkan dalam ke empat macam keahlian tersebut, seringkali
seorang application programmer harus memiliki keahlian di beberapa jenis
aplikasi untuk dapat menghasilkan aplikasi yang berguna. Contohnya: Web
programmer harus memiliki kemampuan dalam web application dan database
application untuk dapat mengembangkan aplikasi web yang memerlukan database
sebagai penyimpanan data. Tidak sedikit pula programmer yang memiliki keahlian
di seluruh jenis aplikasi sehingga sering disebut disebut enterprise
application developer.
Programmer/Developer:
Tugas:
1.
Membangun/mengembangkan software terutama pada tahap
construction dengan melakukan coding dengan bahasa pemprograman yang ditentukan
2.
Mengimplementasikan requiremant dan desain proses
bisnis ke komputer dengan menggunakan algoritma /logika dan bahasa pemprograman
3.
Melakukan testing terhadap software bila diperlukan
Keahlian yang Diperlukan:
1.
Menguasai Algoritma dan logika pemprograman (ini
penting sekali)
2.
Memahami metode, best practice dan tool/pemodelan
pemprograman seperti OOP, design pattern, UML (kemampuan membaca
dan menerapkan)
3.
Menguasai salah satu atau beberapa bahasa pemprograman
populer seperti C++, VB, PHP, C#, Java, Ruby dll (untuk web developer perlu
juga menguasai HTML, DHTML, CSS, JavaScript dan AJAX)
4.
Memahami RDBMS dan SQL (Structured Query Language)
5.
Menguasai bahasa Inggris (hal ini sangat penting saat
ini karena bahasa en-US merupakan bahasa ibu di dunia IT)
Latar Belakang:
Ilmu Komputer, Teknik Informatika, Manajemen Informatika, Matematika pemusatan studi Komputasi
Ilmu Komputer, Teknik Informatika, Manajemen Informatika, Matematika pemusatan studi Komputasi
Analisis
Dalam
era kini, informasi dipandang sebagai aset atau sumber yang setara dengan
sumber-sumber lain dan juga mempunyai kekhususan persoalan dan pengelolaannya,
sehingga diperlukan suatu menejemen khusus yaitu sistem manajemen informasi.
Sebagai manajemen jelas harus mempunyai etika yang benar karena dengan etika
maka kita/manajemen tersebut akan baik.
Sebagai
seorang yang profesional, kita mempunyai tanggung jawab utuk mempromosikan atau
membangun etika yang baik dalam menggunakan teknologi informasi di tempat
kerja.
Dengan
tumbuhnya etika di semua kalangan baik itu karyawan maupun atasan maka bisa
dipastikan perusahaan tersebut akan senantiasa lancar karena mereka mempuyai
etika yang baik nsehingga mereka tidak akan berani melenceng dari aturan yang
sudah ditetapkan oleh perusahaan.
Dalam
hal atau artikel diatas yang berjudul Progremer/Development kita pun
harus mempunyai etika yang baik untuk menjalankan atau menjadi seorang
Progremer, apalagi kalau kita sudah sangat profesional maka sudah pasti dan
mesti kita mempunyai etika yang baik karena dengan kia mempunyai etika yang
sangat baikmaka kita akan menjadi progremer yang baik pula sehingga kita dapat
dipercaya oleh banyak orang-orang atau perusahan-perusahan karena mereka atau
perusahan-perusahan pasti berfikir bahwa kita akan bekerja secara maksimal
dengan ketentuan yang sudah perusahaan tetapkan.
Namun sebaliknya apabila
kita mempunyai etika yang jelek maka bisa dipastikan kita sulit untuk
mendapatkan kepercayaan dari orang-orang atau perusahaan-perusahaan meski kita
sudah sangat mahir dan jago bahkan profesional dalam bidangnya namun karena
kita mempunyai etika yang jelek maka perusahaan-perusahaan akan berfikir ulang
untuk memperkejakaan kita di perusahaan mereka.
Selain
itu apabila kita mempunyai etika yang baik maka kita akan cepet dapat job meski
kita tidak bekerja di suatu perusahaan, hal ini dikrenakan kita mempunyai etika
yang sangat baik sehingga orang-orang akan mengenal kita dengan orang yang baik
dan dapat dipercaya untuk menyelesainkan pesenan atau program yang claint minta
pada kita dan bahka mungkin kita dapat membuat suatu perusahaan sendiri dan
membuka lowongan pekerjaan untuk progremer-progremer yang lainnya. Hal ini juga
dikarenakan kita soerang progremer tentunya, karena seorang progremer merupakan
suatu pekerjaan yang bisa dibilang tidaklah mudah dan hanya sebagian orang yang
mampu menjadi seorang progremer handal.
Di artikel diatas juga
sudah dijelaskan secara terperinci apa saja yang harus soerang progremer kuasai
dan apa saja tugasnya, namun dibalik itu semua jangan lah kita menganggap atau
berpikir bahwa etika tidak penting karena pada artikel diatas tidak sedikitpun
dibahas bahkan disinggung yang namanya etika namun sebenernya etika merupakan
suatu yang penting walaupun tidak disebutkan atau dibahas secara detail,
sebagaimna ang telas jelaskan diatas bahwa etika sangat penting bahkan sama
pentingnya dengan apa-apa saja yang harus kita kuasai untuk menjadi seorang
progremer.
A Short Description about youself
Any feedback, questions or ideas are always welcome. In case you are posting Code ,then first escape it using Postify and then paste it in the comments
0 comments: