SUMBER :
Tugas untuk berbagai profesi di bidang IT
a. Luasnya dunia teknologi informasi, juga tak lepas dari
peran berjuta-juta orang dengan berbagai profesi yang digeluti dalam bidang IT.
Profesi dalam bidang IT sangatlah beragam, mulai dari tester, web designer,
system analyst, dan masih banyak lagi.
Berikut ini merupakan daftar beberapa profesi di
bidang IT beserta deskripsi sederhananya.
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.
Berdasarkan jenis programming dan output yang
dihasilkan, programmer sendiri ada beberapa macam yaitu:
a. 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.
b. 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.
c. 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.
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:
·
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:
Membangun/mengembangkan software terutama pada tahap
construction dengan melakukan coding dengan bahasa pemprograman yang ditentukan
Mengimplementasikan requiremant dan desain proses
bisnis ke komputer dengan menggunakan algoritma /logika dan bahasa pemprograman
Melakukan testing terhadap software bila diperlukan
Keahlian yang Diperlukan:
Menguasai Algoritma dan logika pemprograman (ini
penting sekali)
Memahami metode, best practice dan tool/pemodelan
pemprograman seperti OOP, design pattern, UML (kemampuan membaca dan
menerapkan)
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)
Memahami RDBMS dan SQL (Structured Query Language)
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
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.
Untuk menjembatani celah ini, maka diperlukan seorang
“System Analyst”. Seorang system analyst di satu sisi diharuskan memiliki
keahlian dalam menganalisis proses bisnis (problem domain) untuk dapat
menghasilkan sebuah SRS (software Requiremant Spesification) dan di sisi lain
menguasai aspek technical dan implementasinya dalam software aplikasi (solution
domain) untuk dapat menghasilkan DDD (Detailed Design Document). Seorang system
analyst biasanya berangkat dari seorang programmer yang sudah mahir dan
berpengalaman dalam software development. Kemampuannya dalam menangkap
requirement dan proses bisnis, ketajaman analisis mengenai celah-celah dalam
sistem serta kemampuan merekomendasikan solusi terbaik secara technical sangat
diperlukan dalam mengembangkan software yang berkualitas dan dapat bermanfaat
untuk meningkatkan kinerja proses bisnis suatu organisasi.
System analyst bekerja pada tahap requirement dan
design, walaupun kadangkala juga diperlukan untuk menyeberang dari tahap
requirement dan design ke tahap construction/implementaion
(coding/programming). Tentunya ini wajar karena biasanya seorang system analyst
dahulunya juga seorang programmer. Tetapi seorang yang benar-benar diposisikan
sebagai system analyst, tugas utamanya adalah membuat requirement dan desain
software.
Catatan:
Untuk mengetahui lebih detail mengenai tahap
pengembangan software (SDLC) akan saya jelaskan di artikel lainnya.
Kita sering mendengar istilah Programmer Analyst atau Analyst
Programmer. Kedua profesi ini terdengar mirip, hanya saja dominasi pekerjaannya
yang lebih ditekankan untuk diletakkan di depan istilah tersebut. Programmer
Analyst adalah seorang programmer yang kadang kala bekerja sebagai system
analyst tetapi dengan porsi yang lebih sedikit daripada sebagai programmer.
Begitu pula sebaliknya untuk Analyst Programmer. Saya tidak bisa memastikan
apakah penggunaan istilah itu benar secara bahasa tetapi profesi/posisi semacam
itu memang ada di dunia kerja dan dicantumkan dalam iklan lowongan pekerjaan.
Tugas:
Membangun/mengembangkan software terutama pada tahap
requirement, design dan sebagian dalam tahap construction/implementation
Membuat dokumen requiremant dan desain software
berdasarkan proses bisnis customer/client
Membuat proposal dan mempresentasikannya di hadapan
stake holder / customer / client
Membuat desain database bila aplikasi yang akan di
bangun memerlukan database
Membangun/mengembangkan framework/library untuk
digunakan dalam pengembangan software oleh programmer
Keahlian yang Diperlukan:
Menguasai hal-hal yang dikuasai programmer
Menguasai metode, best practice pemprograman dan
tool/pemodelan pemprograman seperti OOP, design pattern, UML (kemampuan
membangun/mendesain)
Menguasai SQL, ERD dan RDBMS secara lebih mendalam
Memahami tentang arsitektur aplikasi dan teknologi
terkini
Latar Belakang:
Ilmu Komputer, Teknik Informatika, Manajemen
Informatika, Matematika pemusatan studi Komputasi
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.
Dalam perusahaan software development yang cukup mapan
dan telah menangani banyak proyek besar, SQA engineer sangat diperlukan
terutama untuk menghasilkan software yang berkualitas. Tugas SQA engineer
diantaranya adalah melakukan “quality assurance” (QA) dan “quality check” (QC)
terhadap software. Pengembangan software harus sesuai dengan prosedur standar
yang telah ditetapkan (QA) dan harus melalui proses testing (QC) yang sesuai.
Di sinilah tugas SQA engineer untuk memonitor proses software development dan
memperbaiki standar yang ada (improve) bila masi memiliki kelemahan.
Dalam software development, terdapat beberapa resiko
yang ditanggung oleh para stake holders. Seperti terjadinya bug/defect, waktu
pengembangan yang semakin panjang, resource yang semakin bertambah ataupun
kendala-kendala lain yang tidak diperkirakan sebelumnya. Tugas SQA engineer
yang persifat preventif adalah dengan meminimalisir resiko-resiko ini.
Untuk menilai kemapanan sebuah perusahaan, terutama
yang bergerak dalam bidang software development, terdapat beberapa standar
seperti CMMI Capability Maturity Model Integration. Singkatnya, makin tinggi
level CMMI sebuah perusahaan, resiko project yang ditanganinya akan semakin
kecil. Dengan begitu perusahaan dengan level CMMI yang tinggi dianggap sudah
mapan dan dipercaya untuk mengerjakan proyek-proyek besar. Salah satu tugas SQA
engineer adalah mengusahakan agar perusahaannya lulus sertifikasi CMMI di level
tertentu.
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:
Menguasai hal-hal yang berhubungan dengan software
testing (test plan, test case, testing automation, functionality testing,
regression testing dll)
Memahami tentang perinsip kerja software sesuai dengan
platformnya masing-masing
Memahami tentang SDLC dan metodologi software
development seperti RUP, Agile, XP, Scrum dll
Memahami standarisasi seperti CMMI
Menguasai penulisan dokumen dan komunikasi verbal
dengan baik (dalam bahasa Inggris dan Indonesia)
Latar Belakang:
Ilmu Komputer, Teknik Informatika, Manajemen
Informatika
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).
Kompleksitas dalam software develompment dari
tahun-ketahun semakin kompleks dan jauh lebih kompleks dibandingkan pada saat
awal komputer diciptakan. Untuk itulah para ahli dalam bidang software
engineering menyusun berbagai metodologi untuk mengoptimalkan software
development process agar dapat menghasilkan produk software yang sesuai dengan
tuntutan perkembangan zaman. Keahlian unik seorang software engineer adalah
kemampuannya untuk merekomendasikan dan menerapkan metodologi software
development terbaik dalam sebuah proyek. Metode-metode software development
populer seperti RUP, Agile, Scrum, XP, TDD, BDD memiliki keunggulan dan
kelemahan dan tentunya diperlukan keahlian dan pengalaman dalam
merekomendasikan dan mengimplementasikan metode yang paling cocok dalam sebuah
proyek software development.
Bila programmer dan system analyst ada yang
dipekerjakan di perusahaan-perusahaan yang core business-nya bukan software,
software engineer umumnya dipekerjakan di perusahaan-perusahaan software
development. Bila sebuah perusahaan memerlukan karyawan dengan posisi software
engineer, maka kemungkinan besar perusahaan tersebut memerlukan karyawan yang
dapat ditempatkan secara fleksibel. Misalnya di sebuah proyek, karyawan A dapat
diposisikan sebagai programmer dalam tahap construction, sedangkan dalam proyek
lainnya si A dapat diposisikan sebagai system analyst dalam tahap requirement
dan design. Dapat pula si A diposisikan sebagai software tester, SQA engineer
ataupun di posisi mana saja dalam SDLC.
Kemampuan untuk menguasai seluruh disiplin dalam SDLC
tidak membuat software engineer selalu lebih unggul daripada programmer, system
analyst atau SQA engineer. Pada tingkatan yang sama, misalnya pengalaman kerja
5 tahun, seorang sistem analyst tentunya lebih ahli dalam menangkap requirement
dan bisnis proses serta membuat proposal. Seorang programmer tentunya lebih
menguasai secara mendalam bahasa pemprograman dan IDE (Integrated Development
Environment) tools serta trik-trik tertentu dalam bahasa pemprograman. Seorang
SQA engineer lebih menguasai software testing dan quality assurance. Diluar hal
itu, semuanya bergantung pada pribadi masing-masing dalam mengembangkan
keahliannya di profesi apapun.
Tugas:
Melakukan tugas-tugas programmer, system analyst dan
sebagian tugas SQA engineer
Merekomendasikan dan menerapkan metodologi terbaik
dalam sebuah proyek software development
Keahlian yang Diperlukan:
Menguasai hal-hal yang dikuasai programmer, system
analyst dan SQA engineer (dalam porsi yang lebih sedikit)
Menguasai SDLC berdasarkan SWEBOK (requirement,
design, implementation/construction, testing, maintenance)
Menguasai metodologi software development seperti RUP,
Agile, XP, Scrum dll
Latar Belakang:
Ilmu Komputer, Teknik Informatika, Manajemen
Informatika, Matematika pemusatan studi Komputasi
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.
Salah satu tugas sehari-hari seorang DBA adalah
memaintain database baik produksi, backup maupun development dalam perusahaan
yang membutuhkan aplikasi database berskala besar untuk operasionalnya
sehari-hari. Karena itu selain hal-hal yang berhubungan dengan software,
seorang DBA juga perlu memahami beberapa hal tentang hardware seperti teknologi
server, storage devices dll agar dapat merekomendasikan database yang optimal.
Pengetahuan tentang server clustering, storage array network (SAN), RAID,
backup devices dan optimalisasinya merupakan keahlian unik seorang DBA.
Dengan semakin berkembangnya berbagai teknologi ORM
(object relational mapping), maka di kemudian hari pekerjaan programmer dan DBA
akan semakin dapat dipisahkan. Bila di masa lalu banyak programmer yang
merangkap sebagai DBA, di masa depan bisa jadi programmer semakin jarang
menggunakan SQL karena semuanya sudah ditangani oleh komponen ORM. Di sinilah
perbedaan bidang keahlian seorang DBA menjadi lebih terlihat dibandingkan
dengan seorang programmer.
Dahulu untuk mencari orang yang memiliki keahlian
dalam bidang jaringan, server dan database, Hasilnya orang seperti itu tidak
pernah ditemukan, karena itu sama saja menggabungkan kemampuan System
Administrator dengan Database Administrator. Seorang System Administrator
berlatar belakang computer system & networking Seorang DBA sebenarnya
berlatar belakang software development. Dua hal tersebut bagaikan jalan
bercabang yang harus dipilih oleh seorang profesional IT di awal karirnya.
Tugas:
Merancang dan membangun database dalam sebuah system
Merekomendasikan solusi terbaik dalam implementasi
database baik dalam hal software maupun hardware
Memaintain database agar dapat berjalan dengan baik dan
optimal
Keahlian yang Diperlukan:
Menguasai ERD, SQL dan desain database secara mendalam
Menguasai berbagai teknik optimalisasi/tuning, backup
dan maintain database
Menguasai secara mendalam salah satu atau lebih RDBMS
beserta tools yang ada.
Memahami tentang salah satu platform/bahasa
pemprograman untuk mengakses database
Menguasai teknologi server, storage, operating system
yang berkaitan dengan implementasi database
Latar Belakang:
Manajemen Informatika, Teknik Informatika, Ilmu
Komputer
6. Software Architect
Software architect atau kadang disebut juga sebagai
Technical Architect biasanya bekerja di perusahaan software development yang
memiliki produk-produk software yang cukup besar dan kompleks. software
architect bertugas untuk mendesain dan merekomendasikan secara technical
mengenai bagaimana dan apa yang diperlukan dalam mengembangkan produk software
tersebut. Profesional di bidang ini biasanya pernah meniti karir sebagai
programmer, software engineer atau system analyst.
Bila system analyst harus memiliki pengetahuan yang
berimbang antara proses bisnis (problem domain) dan software technology
(solution domain), seorang architect dituntut untuk menguasai software
technology secara lebih mendalam. Kemampuannya dalam hal technical sangat
diperlukan dalam proyek-proyek software development berskala besar dan
kompleks, dimana keputusan dalam pemilihan teknologi yang paling tepat dan
penguasaanya sangat menentukan kesuksesan proyek. Keahlian utama seorang
software architect adalah dalam bidang software design dan software development
technology.
Tugas:
Merekomendasikan teknologi yang paling cocok untuk
mengembangkan produk software
Membuat standar-standar software development yang akan
digunakan oleh tim programmer / developer
Membuat rancangan/desain software dan proses
pengembangannya secara keseluruhan
Keahlian yang Diperlukan:
Menguasai hal-hal yang dikuasai programmer, system
analyst dan software engineer
Menguasai secara mendalam tentang software development
technology
Menguasai penulisan dokumen dengan baik (dalam bahasa
Inggris dan Indonesia)
Latar Belakang:
Teknik Informatika, Ilmu Komputer, Manajemen
Informatika
7. Software Implementer
Software implementer kadang desebut sebagai
“Implementer” atau “Software Support”. Profesi ini kedengarannya mirip dengan
“System Support” di dunia Computer System & Networking (lihat di “Profesi
di dunia IT Bagian 1″). Memang secara pekerjaan ada kemiripan, tetapi sesuai
penamaannya, dalam hal sesuatu yang disupport tentu sudah terlihat
perbedaannya. Profesi software implementer tidak tergolong dalam bidang
software development melainkan lebih dekat ke bidang software consulting
Seorang software implementer/support bertugas
men-support produk software yang akan diimplementasikan di sisi client/customer
baik instalasi setting konfigurasi, modifikasi dan pelatihan untuk
user-usernya. Umumnya software support tidak berurusan dengan masalah
hardware/jaringan melainkan lebih ke produk software yang di support. seorang
software implementer/support dibutuhkan dalam implementasi software yang cukup
besar dan kompleks seperti software perbankan, asuransi, airline dll
Tugas:
Melakukan instalasi/implementasi serta setting produk
software di sisi client/customer
Memelihara dan memastikan software yang sudah
diimplementasikan berjalan dengan baik
Melakuakan troubleshooting terhadap produk software
Memberikan pelatihan (training) kepada para pengguna
software
Keahlian yang Diperlukan:
Menguasai secara mendalam produk software yang akan
diimplementasikan
Menguasai teknologi platform / sistem poperasi/
middleware (bila ada) yang dibutuhkan oleh produk software yang disupport
Memahami insalasi, setting & troubleshooting
produk software yang diimplementasikan
Latar Belakang:
Manajemen Informatika, Teknik Informatika, Ilmu
Komputer, Teknik Komputer, Teknik Elektro (Pemusatan Studi Komputer)
8. Technical Consultant
Technical Consultan atau kadang disebut sebagai
“Consultant” saja sesuai namanya bekerja sebagai konsultan IT. Tugas utama
seorang konsultan adalah merekomendasika solusi teknologi IT terbaik untuk
memecahkan masalah yang ada. Bila seorang software architect lebih menguasai
solution domain, seorang technical consultant lebih menguasai problem domain.
Seorang technical consultant mirip seorang system analyst yang lebih sering
membuat konsep proses bisnis dan requirment daripada melakukan design atau
coding. Technical consultant tentunya juga menguasai teknologi software
development tetapi pada level yang lebih umum dan luas (high level) dan lebih
condong termasuk dalam bidang software consulting.
Berbeda dengan software architect yang lebih banyak
bekerja secara internal dalam perusahaan, technical consultant lebih banyak
bekerja untuk memberikan konsultasi kepada client/customer dan lebih banyak
berhadapan dengan banyak orang. Untuk itu dibutuhkan interpersonal dan writing
skill yang memadai.
Apabila anda sering mendengar istilah ERP (Enterprise
Resource Planning) consultant, profesi tersebut termasuk dalam technical
consultant. seorang ERP consultant tentunya harus menguasai proses bisnis
enterprise dan bagaimana mengimplementasikannya dalam produk software yang
dikuasai / direkomndasikannya. Pada tulisan mengenai “Profesi di dunia IT
Bagian 1″, IT specialist mirip dengan technical consultant dalam hal
rekomendasi dan implementasi IT. Perbedaannya adalah, technical consultant
lebih menguasai proses bisnis dan software sedangkan IT specialist lebih
meguasai hardware dan jaringan serta software secara garis besar.
Bila bekerja pada perusahaan yang menjual produk
software, technical consultant biasanya lebih banyak bekerja pada tahap
pre-sales. Pada tahap implementasi, technical consultant bekerja sama dengan
software implementer. Setelah software terimplementasi (after sales), software
implementer / support akan lebih banyak berperan dalam operasionalnya.
Technical consultant akan diperlukan lagi bila ada perubahan proses bisnis,
modifikasi atau penambahan modul yang cukup kompleks dalam software tersebut
Tugas:
Memberikan konsultansi/rekomendasi mengenai solusi IT
terbaik untuk memecahkan masalah
Membuat dokumen seperti proposal, requirement dan
desain software secara umum
Melakukan pelatihan (training) kepada para pengguna
software
Keahlian yang Diperlukan:
Berpengalaman dan menguasai berbagai macam proses
bisnis enterprise atau jenis bisnis terentu
Menguasai teknologi IT secara luas
Menguasai secara mendalam tentang solusi software yang
direkomendasikan
Menguasai penulisan dokumen dan komunikasi verbal
dengan baik (dalam bahasa Inggris dan Indonesia)
Latar Belakang:
Manajemen Informatika, Teknik Informatika, Ilmu
Komputer, Teknik Komputer, Teknik Elektro (Pemusatan Studi Komputer)
9. User Interface Designer
Mungkin anda agak jarang mendengar nama profesi
seperti ini karena memang istilah ini jarang digunakan. Ada iklan lowongan
pekerjaan yang menggunakan istilah “User Interface Designer”, tetapi lebih
sering digunakan istilah “Web Designer” untuk posisi tersebut.
Profesi yang terakhir ini memang agak sedikit berbeda
dengan profesi-profesi sebelumnya karena orang-orang sukses di bidang ini umumnya
memiliki bakat seni sekaligus kemampuan technical. Seorang user interface
designer harus dapat membuat desain web yang manis, serasi, user friendly
tetapi tetap efisien karena Internet memiliki bandwidth yang terbatas. Karena
profesional di bidang ini lebih sering dipekerjakan dalam web development, maka
profesi ini lebih sering disebut sebagai web designer.
Selain menguasai programming terutama web programming,
seorang web designer juga harus menguasai tools dalam image design dan animasi
seperti produk-produk Adobe/Macromedia, Corel dll. Dalam web development, user
interface designer bekerja bahu-membahu dengan web programmer/developer untuk
menghasilkan aplikasi web yang baik dalam hal tampilan dan fungsionalitas.
Tampilan yang baik, menarik dan user friendly akan membuat aplikasi web
tersebut dinilai lebih bermutu.
Kadang kala user interface designer juga disertakan
dalam proyek-proyek non web, misalnya untuk membuat design icon, splash screen,
logo dll. Contohnya, dewasa ini di platform Microsoft.Net dikenal adanya
teknologi WPF (Windows Presentation Foundation). Dengan menggunakan teknologi
ini, desain tampilan aplikasi desktop dapat dipisahkan dengan coding-nya.
Seorang user interface designer dapat bekerja pada desain tampilan menggunakan
XAML, sedangkan programmer/developer mengerjakan coding-nya di code-behind
menggunakan C# atau VB.Net. Karena itulah profesi ini menurut saya lebih tepat
dinamakan user interface designer.
Tugas:
Mendesain user interface agar menarik dan serasi
secara visual dan user friendly
Mendesain image/gambar/animasi yang akan digunakan di
tampilan user interface (UI) software aplikasi
Keahlian yang Diperlukan:
Memiliki bakat/minat di seni rupa / desain visual
Memahami dasar-dasar pemprograman baik web maupun
secara umum
Menguasai scripting untuk user interface seperti
seperti HTML, DHTML, CSS, JavaScript, action script, XAML dll.
Menguasai tools manipulasi image dan animasi
Sumber :
Jenis-jenis profesi IT di Indonesia & perbandingan dengan negara lain.
b. Secara umum, pekerjaan di bidang teknologi informasi
setidaknya terbagi dalam 3 kelompok sesuai bidangnya.
a) Kelompok pertama, adalah mereka yang bergelut di dunia
perangkat lunak (software), baik mereka yang merancang system operasi,database
maupun system aplikasi.
Pada lingkungan kelompok ini, terdapat
pekerjaan-pekerjaan seperti :
·
Sistem analis,
merupakan orang yang abertugas menganalisa system yang akan diimplementasikan,
mulai dari menganalisa system yang ada, kelebihan dan kekurangannya, sampai
studi kelayakan dan desain system yang akan dikembangkan.
·
Programer, merupakan
orang yang bertugas mengimplementasikan rancangan system analis, yaitu membuat
program ( baik aplikasi maupun system operasi ) sesuai system yang dianalisa
sebelumnya.
·
Web designer,
merupakan orang yang melakukan kegiatan perencanaan, termasuk studi kelayakan,
analisis dan desain terhadap suatu proyek pembuatan aplikasi berbasis web.
·
Web programmer,
merupakan orang yang bertugas mengimplementasikan rancangan web designer, yaitu
membuat program berbasis web sesuai desain yang telah dirancang sebelumnya.
b) Kelompok kedua, adalah mereka yang bergelut di bidang
perangkat keras (hardware).
Pada lingkungan kelompok ini, terdapat
pekerjaan-pekerjaan seperti :
·
Technical engineer,
sering juga disebut teknisi, yaitu orang yang berkecimpung dalam bidang teknik,
baik mengenai pemeliharaan maupun perbaikan perangkat system computer.
·
Networking engineer,
adalah orang yang berkecimpung dalam bidang teknis jaringan computer dari
maintenance sampai pada troubleshooting-nya.
c) Kelompok ketiga, adalah mereka yang berkecimpung dalam
operasional system informasi.
Pada lingkungan kelompok ini, terdapat
pekerjaan-pekerjaan seperti :
·
EDP Operator, adalah
orang yang bertugas mengoperasikan program-program yang berhubungan dengan
electronic data processing dalam lingkungan sebuah perusahaan atau organisasi
lainnya.
·
System Administrator,
merupakan orang yang bertugas melakukan administrasi terhadap system, memiliki
kewenangan menggunakan hak akses terhadap system, serta hal-hal lain yang
berhubungan dengan pengaturan operasional sebuah system.
Jenis-jenis Profesi di Bidang IT beserta Job Desc-nya
Berikut adalah 10 jenis profesi pada bidang IT di
Indonesia beserta jobdesknya:
1. Analyst Programmer
Seorang analis bertugas untuk merancang, membuat
'code' program, dan menguji program untuk mendukung perencanaan pengembangan
sebuah sistem atau aplikasi.
2. Web Designer
Mengembangkan rancangan inovatif aplikasi web-based
beserta isi dari aplikasi tersebut.
3. Systems Programmer/Softaware Engineer
Seseorang dengan posisi ini, harus terbiasa dengan
pengembangan software 'life cyclces' dan memiliki keterampilan dalam mendesain
suatu aplikasi, bahkan sistem. Tugasnya adalah menyiapkan program sesuai dengan
spsifikasi, melakukan dokumentasi program, dan menguji program yang telah
dibuat.
4. IT Executive
Seorang eksekutif IT bertanggung jawab untuk
memelihara kecukupan, standard & kesiapan systems/infrastructure untuk
memastikan pengoperasiannya dapat efektif & efisien. Selain itu
harus juga menerapkan prosedur IT & proses untuk
memastikan data terproteksi secara maksimum.
5. IT Administrator
Tugasnya adalah menyediakan implementasi &
administrasi yang meliputi Local Area Network (LAN), Wide Area Network (WAN)
dan koneksi dial-up, firewall, Proxy serta pendukung teknisnya.
6. Network Administrator
Mengurusi & mengoperasi jaringan LAN maupun WAN,
manajemen sistem serta dukungan terhadap perangkat kerasnya.
7. Database Administrator
Bertanggung jawab Untuk administrasi &
pemeliharaan teknis yang menyangkut perusahaan dalam pembagian sistem database.
8. Systems Engineer
- Menyediakan rancangan sistem & konsultasi
terhadap pelanggan.
- Memberikan respon terhadap permintaan technical
queries serta dukungannya.
- Termasuk melakukan pelatihan teknis ke pelanggan
& IT administrator.
9. Network Support Engineer
- Melaksanakan komunikasi & analisa sistem
networking
- Mendisain perencanaan untuk integrasi. Mendukung
jaringan pada internet, intranet & extranet.
- Menganalisa & ikut ambil bagian dalam
pengembangan standardisasi keamanan & implementasi mengendalikan untuk
keamanan LAN & WAN
10. IT Manager
- Mengatur kelancaran dari sistem IT.
- Troubleshooting & membantu organisasi dalam
menangani permasalahan IT.
- Sesuai dengan pengembangan IT yang baru dalam bidang
yang diperlukan.
Perbandingan dengan negara lain:
·
Singapore
Pada model Singapore juga dilakukan pembagian
berdasarkan tingkatan senioritas. Misal pada System development dibagi menjadi:
1. Programmer
2. Analyst/Programmer
3. Senior Analyst/Programmer
4. Principal Analyst/Programmer
5. System Analyst
6. Senior System Analyst
7. Principal System Analyst
·
Malaysia
Model Malaysia ini mirip dengan model Singapore, juga
membedakan posisi pekerjaan pada berbagai sektor bisnis. Tetapi berbeda dalam
melakukan ranking senioritas, misal untuk System Development:
1. Programmer
2. System Analyst/Designer
3. System Development Executive
·
Inggris
Model British Computer Society (BCS)
Untuk model BCS pekerjaan diklasifikasikan dalam
tingkatan sebagai berikut :
Level 0 . Unskilled Entry
Level 1 . Standard Entry
Level 2 . Initially Trainded Practitioner
Level 3 . Trained Practitioner
Level 4 . Fully Skilled Practitioner
Level 5 . Experienced Practitioner/Manager
Level 6 . Specialist Practitioner/Manager
Level 7 . Senior Specialist/Manager
Level 8 . Principal Specialist/Experienced Manager
Level 9 . Senior Manager/Director
Tidak ada komentar:
Posting Komentar