Jenis-Jenis Profesi di
Bidang IT
1. 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.
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)
2.
System Analyst
Seiring dengan berjalannya waktu dan perkembangan zaman, kebutuhan
aplikasi komputer semakin kompleks. Ada kalanya proses bisnis dan permasalahan
dalam suatu organisasi cukup kompleks untuk dijabarkan secara langsung ke
sebuah software aplikasi. Biasanya para manajer/direksi perusahaan memahami
secara detail mengenai proses bisnis di perusahaannya, misalnya dari sejak
procurement, purchasing, manufacturing, warehousing, marketing, accounting dll,
tetapi mereka biasanya kurang memahami mengenai bagaimana implementasinya
secara teknis dalam software aplikasi. Kemudian seorang programmer biasanya
terlalu berkutat dengan coding, algoritma dan hal-hal yang technical sehingga
kadang mengalami kesulitan dalam memahami proses bisnis menyeluruh yang umumnya
terjadi di organisasi/perusahaan tertentu.
Tugas:
1.
Membangun/mengembangkan software terutama pada tahap requirement, design
dan sebagian dalam tahap construction/implementation
2.
Membuat dokumen requiremant dan desain software berdasarkan proses bisnis
customer/client
3.
Membuat proposal dan
mempresentasikannya di hadapan stake holder / customer / client
4.
Membuat desain database bila aplikasi yang akan di bangun memerlukan
database
5.
Membangun/mengembangkan framework/library untuk digunakan dalam
pengembangan software oleh programmer
Keahlian yang Diperlukan:
1.
Menguasai hal-hal yang dikuasai programmer
2.
Menguasai metode, best practice
pemprograman dan tool/pemodelan pemprograman seperti OOP, design pattern, UML (kemampuan
membangun/mendesain)
3.
Menguasai SQL, ERD dan RDBMS secara lebih mendalam
4.
Memahami tentang arsitektur aplikasi dan teknologi terkini
3. Software Quality
Assurance Engineer
Software Quality Assurance (SQA) engineer mungkin agak jarang
terdengar di dunia kerja. Hal ini mungkin karena di Indonesia belum banyak
lowongan kerja yang mencantumkan posisi ini. Bila anda pernah mendengar posisi
“Software Tester”, maka itu termasuk dalam profesi ini. Salah satu tugas SQA
engineer memang melakukan testing terhadap software, tetapi bukan itu saja
sebenarnya pekerjaan profesi ini.
Tugas:
1. Memonitor jalannya
proyek software development apakah sudah sesuai dengan standar dan prosedur
yang ada
2. Merancang
dan membuat test case / skenario software testing
3. Melakukan
testing sesuai dengan test case / scenario
4. Merumuskan dan
merancang peningkatkan efisiensi dan efektifitas standar proses yang digunakan
Keahlian yang Diperlukan:
1. Menguasai hal-hal yang berhubungan dengan software testing (test plan, test
case, testing automation, functionality testing, regression testing dll)
2.
Memahami tentang perinsip kerja software sesuai dengan platformnya
masing-masing
3.
Memahami tentang SDLC dan metodologi software development seperti RUP,
Agile, XP, Scrum dll
4.
Memahami standarisasi seperti CMMI
5. Menguasai penulisan dokumen dan komunikasi verbal dengan baik (dalam bahasa
Inggris dan Indonesia)
4.
Software Engineer
Profesi software engineer sebenarnya ada kemiripannya dengan
profesi programmer, system analyst ataupun SQA engineer. Yang membedakannya
adalah software engineer memerlukan keahlian lebih mendalam dalam hal SDLC (Software Development Life
Cycle) yaitu seluruh proses
yang harus dijalani dalam pengembangan software. Pada level tertentu, seorang
software engineer juga harus menguasai manajeman proyek software development.
Salah satu standar SDLC yang umum digunakan dalam software engineering adalah SWEBOK (Software Engineering Body
of Knowledge).
Tugas:
1.
Melakukan tugas-tugas programmer, system analyst dan sebagian tugas SQA
engineer
2. Merekomendasikan dan menerapkan metodologi terbaik dalam sebuah proyek
software development
Keahlian yang Diperlukan:
1. Menguasai hal-hal yang dikuasai programmer, system analyst dan SQA engineer
(dalam porsi yang lebih sedikit)
2. Menguasai SDLC berdasarkan SWEBOK (requirement, design,
implementation/construction, testing, maintenance)
3. Menguasai metodologi software development seperti RUP, Agile, XP, Scrum dll
5. Database
Administrator (DBA)
Profesi Database
Administrator (DBA) terkait
erat dengan programmer dan system analyst. Seorang DBA biasanya pernah menjadi
seorang programmer tetapi pekerjaannya lebih sering berkaitan dengan database.
Perbedaannya dengan database application programmer adalah seorang DBA memiliki
keahlian lebih mendalam dalam hal desain, optimasi dan manajemen RDBMS (Relational Database
Managemant System) tertentu
seperti Oracle, SQL Server, MySQL dll. Tentunya penguasaan terhadap SQL
(Structured Query Language) mutlak diperlukan. DBA harus memiliki keahlian
menterjemahkan requirement proses bisnis ke obyek-obyek dalam database seperti
tabel, query\view dan stored procedure disamping keahliannya dalam optimasi
database seperti tuning, indexing, clustering, backup data, maintain high
availability dan sebagainya.
Tugas:
1.
Merancang dan membangun database dalam sebuah system
2.
Merekomendasikan solusi terbaik dalam implementasi database baik dalam hal
software maupun hardware
3.
Memaintain database agar dapat berjalan dengan baik dan optimal
Keahlian yang Diperlukan:
1.
Menguasai ERD, SQL dan desain database secara mendalam
2.
Menguasai berbagai teknik optimalisasi/tuning, backup dan maintain database
3.
Menguasai secara mendalam salah satu atau lebih RDBMS beserta tools yang
ada.
4.
Memahami tentang salah satu platform/bahasa pemprograman untuk mengakses
database
5.
Menguasai teknologi server, storage, operating system yang berkaitan dengan
implementasi database
sumber: http://derryansyah12.blogspot.com/2012/10/macam-macam-profesi-di-bidang-teknologi.html