Profesi IT dibagi menjadi tiga bagian besar yaitu :
  - Computer Engineering      (rekayasa komputer)
- Software Development and      Consulting (pengembangan dan konsultasi piranti lunak) 
- Computer System and      Networking (sistem dan jaringan computer)
 
  Computer Engineering
     
  Computer engineering berkaitan dengan desain, pengembangan dan testing hardware komputer / peripheral dari mulai teknologi semikonduktor, mikroprosesor, circuit, interfacing hingga pengembangan embedded software dalam sebuah mikrokontroler.
   
  Hardware Engineer
  Job description :
  ·        Mendesain dan membangun interface antara komputer dengan peralatan-peralatan lain.
  ·        Membangun software yang mengontrol interface (biasanya menggunakan bahasa C)
  ·        Mendesain dan membangun solusi menggunakan embedded sistem / mikrokontroler
  ·        Membangun software untuk menjalankan mikrokontroler (biasanya menggunakan bahasa assembly)
  ·        Testing hardware.
     
  Keahlian yang diperlukan:
  - Memahami rangkaian      elektronika dan rancang bangun rangkaian digital serta komponennya
- Meguasai arsitektur komputer      dan cara kerja mikroprosesor / mikrokontroler
- Meguasai rancang bangun      computer interfacing
- Memahami algoritma dan      pemprograman
- Menguasai bahasa      pemprograman Assembly dan atau C/C++
- Menguasai prinsip kerja      komunikasi data baik secara parallel, serial (COM/USB), Wireles serta      teknik pemprogramannya.
 
  Latar Belakang:
    Teknik komputer, Teknik elektro (pemusatan studi komputer)
   
   
   
  Software Development and Consulting.
   
  Programmer/Developer
  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:
     
  ·       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.
     
  ·       System Programmer
  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.
     
  ·       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.
   
  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
  Job description :
  - 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
     
  
 
 
    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 yang benar-benar diposisikan sebagai system analyst, tugas utamanya adalah membuat requirement dan desain software.
   
  System Analyst
  Job description :
  - 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
     
   
    Computer System and Networking
     
  Bidang ini berkaitan dengan desain, implementasi dan pemeliharaan infrastruktur jaringan computer baik LAN maupun WAN, teknologi server hingga optimasi serta administrasi sistem komputer. Berikut ini adalah profesi-profesi yang berkaitan:
     
  System Support / Technical Support
  Dari namanya: “system support / technical support”, pekerjaan sehari-harinya adalah men-support / maintain / memelihara sistem komputer berupa hardware atau software yang sudah berjalan. Para profesional di bidang ini diperlukan untuk memberikan dukungan teknis terhadap produk berupa software atau hardware yang telah atau akan diimplementasikan. 
   
  System Support / Technical Support
    Job description :
  - Memelihara dan memastikan      sistem yang ada berjalan dengan baik
- Instalasi sistem baik      hardware maupun software
- Troubleshooting dan      perbaikan system
- Memberikan pelatihan ke para      pengguna sistem
 
  Keahlian yang Diperlukan:
  - Menguasai instalasi &      setting komputer
- Memahami konsep dasar      networking dan troubleshooting-nya
- Memahami insalasi &      troubleshooting hardware / software tertentu (tergantung apa yang      di-support)
 
  Latar Belakang:
    Teknik komputer, Teknik elektro (pemusatan studi komputer)
   
   
   
  Network Engineer
    Network engineer biasanya dipekerjakan di provider-provider jaringan atau perusahaan multi nasional dan atau yang berskala enterprise. Perusahaan-perusahaan tersebut membutuhkan interkoneksi data antar cabang di kota-kota yang jauh atau negara lain. Untuk itu diperlukan interkoneksi jaringan melalui WAN (Wide Area Network) dan konfigurasi LAN yang sesuai di kantor pusat dan kantor cabang.
  
Profesional di bidang ini umumnya memegang sertifikat CCNA, CCNP ataupun CCIE. Dengan memegang sertifikat ini, skill mereka dapat diakui secara internasional dan lebih memudahkan dalam memperoleh pekerjaan di negeri seberang.
  Network Engineer
  Job description :
  - Mendesain dan membangun      infrastruktur jaringan baik LAN maupun WAN
- Memberikan solusi terbaik      dalam hal infrastruktur jaringan baik dalam hal peralatan yang digunakan,      efisiensi, reliability, security dan aspek-aspek lain yang terkait
- Memastikan suatu      infrastruktur jaringan computer dapat berfungsi dengan baik.
 
  Keahlian yang Diperlukan:
  - Menguasai konsep dasar      mengenai jaringan seperti topologi, protokol-protokol komunikasi,      standar-standar networking, media komunikasi data dan keamanan jaringan      baik LAN maupun WAN
- Menguasai konsep dan desain      infrastruktur jaringan dan troubleshooting-nya
- Menguasai desain, instalasi      dan terminasi media jaringan seperti kabel tembaga/UTP, fiber optic,      Wireless communication dll
- Menguasai setting,      pemanfaatan dan troubleshooting perangkat jaringan seperti router, switch,      firewall, proxy, modem dll
- Memahami instalasi dan      setting PC dan server yang bisa digunakan dalam infrastruktur jaringan      seperti domain controller, proxy, filrewall, mailserver dll
- Menguasai secara teknis dan      praktis mengenai keamanan jaringan / sistem
 
  Latar Belakang:
    Teknik komputer, Teknik elektro (pemusatan studi komputer atau telekomunikasi)
   
   
   
  System Engineer / Administrator
    Profesi System Engineer / System Administrator (biasa disingkat Sys Admin) adalah profesi yang mirip dengan network engineer tetapi dituntut memiliki pengetahuan lebih detail dalam hal desain dan administrasi server-server yang ada di suatu jaringan internal.
     
  Seseorang dengan posisi ini akan diserahi tanggung jawab untuk memastikan system (hardware, software dan jaringan komputer) di suatu perusahaan berjalan desuai harapan dan memegang kunci password utama jaringan internal perusahaan (Administrator). Serifikasi untuk profesi ini contohnya adalah MCSE untuk platform Microsoft Windows.
   
  System Engineer / Administrator
  Job description :
  - Mendesain dan membangun      sistem dan jaringan komputer terutama dalam hal teknologi server dan      konektifitasnya baik LAN maupun WAN
- Memberikan solusi terbaik      dalam hal pemilihan dan teknologi server dan software yang digunakan dalam      hal efisiensi, reliability, security dan aspek-aspek lain yang terkait
- Memastikan/memaintain suatu      jaringan internal (baik LAN maupun WAN) dapat berfungsi dengan baik.
 
  Keahlian yang Diperlukan:
  - Memahami konsep dan desain      infrastruktur jaringan dan troubleshooting-nya
- Mamahami setting dan      instalasi tentang perangkat aktif jaringan seperti router, switch, hub,      firewall dll.
- Menguasai secara mendalam      salah satu atau beberapa platform / network operating system untuk      membangun suatu domain yang aman dan terintegrasi, contohnya seperti      “Active Directory” untuk platform windows.
- Menguasai secara mendalam      tentang instalasi, setting dan troubleshooting PC dan server yang bisa      digunakan dalam infrastruktur jaringan seperti domain controller, proxy,      filrewall, mailserver, DNS dll
- Menguasai secara teknis dan      praktis mengenai keamanan jaringan / system
 
  Latar Belakang:
    Teknik komputer, Teknik elektro (pemusatan studi komputer atau telekomunikasi)
   
   
   
  IT Specialist
    Profesi IT specialist atau IT engineer mungkin merupakan profesi yang agak jarang terdengar. Tetapi tanpa disadari, beberapa professional yang merasa bekerja sebagai system support, network engineer ataupun system administrator dapat digolongkan sebagai IT specialist.
     
  IT Specialist umumnya dipekerjakan di perusahaan-perusahaan yang core bisnisnya bukan IT. Tugas utamanya adalah merekomendasikan solusi IT terbaik untuk meningkatkan efisiensi dan performa bisnis perusahaan baik dalam hal hardware, jaringan maupun software. Kalau anda merasa pekerjaan ini mirip konsultan IT, mamang benar, IT specialist bekerja sebagai konsultan IT tetapi lebih cenderung kearah hardware dan jaringan, walaupun pengetahuan tentang software aplikasi server seperti operating system, mail server, proxy, anti virus server,  firewall, enterprise portal dll sangat diperlukan dalam mendukung tugas-tugasnya.
   
  IT Specialist
  Job description :
  - Mendesain dan membangun      sistem komputerisasi terutama dalam hal implementasi software, hardware      dan jaringan.
- Memberikan solusi terbaik      dalam hal pemilihan dan implementasi teknologi baik hardware maupun      software.
 
  Keahlian yang Diperlukan:
  - Memahami konsep dan desain      infrastruktur jaringan dan troubleshooting-nya
- Menguasai network operating      system dan aplikasi-aplikasi yang dapat diimplementasikan dalam      organisasi.
- Memiliki pengetahuan yang      luas mengenai software, hardware dan jaringan komputer.
- Menguasai secara teknis dan      praktis mengenai keamanan jaringan / system
 
  Latar Belakang:
    Teknik komputer, Teknik elektro (pemusatan studi komputer atau telekomunikasi), Manajemen Informatika