Programmer

dari Wikipedia, ensiklopedia gratis
Langsung ke navigasi Langsung ke pencarian

Programmer komputer
Dua wanita mengoperasikan ENIAC (resolusi penuh).jpg
Betty Jennings dan Fran Bilas , bagian dari tim pemrograman ENIAC pertama
Pekerjaan
Nama-namaProgrammer komputer
Jenis pekerjaan
Profesi
Sektor kegiatan
Teknologi informasi , industri perangkat lunak
Keterangan
KompetensiMenulis dan men-debug kode komputer, tugas dokumentasi. Beberapa pekerjaan desain dan pengembangan sering dilakukan.
Pendidikan diperlukan
Bervariasi dari magang hingga gelar sarjana di bidang terkait

Seorang programmer komputer , kadang-kadang disebut pengembang perangkat lunak , seorang programmer atau lebih baru-baru ini seorang pembuat kode (terutama dalam konteks yang lebih informal), adalah orang yang membuat perangkat lunak komputer . Istilah pemrogram komputer dapat merujuk ke spesialis di satu bidang komputer atau ke generalis yang menulis kode untuk berbagai jenis perangkat lunak.

Bahasa komputer yang paling sering digunakan oleh seorang programmer (misalnya, Assembly , COBOL , C , C++ , C# , JavaScript , Lisp , Python , Java ) mungkin diawali dengan istilah programmer . Beberapa yang bekerja dengan bahasa pemrograman web juga mengawali judul mereka dengan web .

Terminologi

Tidak ada terminologi standar di seluruh industri, jadi "programmer" dan " software engineer " mungkin merujuk pada peran yang sama di perusahaan yang berbeda. Biasanya, seseorang dengan jabatan "programmer" atau "pengembang perangkat lunak" mungkin berfokus pada penerapan spesifikasi terperinci ke dalam kode komputer, memperbaiki bug, dan melakukan tinjauan kode. Mereka mungkin memiliki gelar dalam ilmu komputer , gelar associate , atau mungkin otodidak atau menghadiri kamp pelatihan pemrograman . Seseorang dengan jabatan " insinyur perangkat lunak " diharapkan memahami prinsip-prinsip rekayasa perangkat lunak , matematika yang lebih maju, dan metode ilmiah, dan mungkin diharuskan memiliki gelar di bidang rekayasa perangkat lunak, teknik komputer , atau ilmu komputer . Beberapa negara secara hukum memerlukan gelar teknik yang sebenarnya untuk disebut seorang insinyur. Di perusahaan yang membuat perbedaan, insinyur perangkat lunak mungkin memiliki tanggung jawab yang lebih luas dan tingkat yang lebih tinggi, seperti merancang atau "mendesain" program, fitur, dan platform baru; mengelola siklus hidup pengembangan perangkat lunak termasuk desain, implementasi, pengujian, dan penerapan; memimpin tim programmer; berkomunikasi dengan pelanggan bisnis, programmer, dan insinyur lainnya; mempertimbangkan stabilitas dan kualitas sistem; dan mengeksplorasi metodologi pengembangan perangkat lunak . [1]

Seorang arsitek sistem adalah jabatan terkait, yang mungkin melibatkan pembuatan desain teknis sambil menyerahkan pemrograman yang sebenarnya kepada orang lain.

Sejarah

Ada Lovelace dianggap oleh banyak orang sebagai programmer komputer pertama. [2]

Inggris countess dan matematika Ada Lovelace sering dianggap sebagai programmer komputer pertama, karena ia adalah orang pertama yang mempublikasikan bagian dari program (khusus algoritma ) yang ditujukan untuk implementasi pada Charles Babbage 's mesin analitis pada bulan Oktober 1842. Algoritma yang digunakan menghitung bilangan Bernoulli . [2] Karena mesin Babbage tidak pernah selesai sebagai standar yang berfungsi pada masa Lovelace, dia tidak pernah memiliki kesempatan untuk melihat algoritma beraksi.

Orang pertama yang menjalankan program pada komputer elektronik modern yang berfungsi adalah ilmuwan komputer Konrad Zuse pada tahun 1941.

Tim pemrograman ENIAC , yang terdiri dari Kay McNulty , Betty Jennings , Betty Snyder , Marlyn Wescoff , Fran Bilas dan Ruth Lichterman , telah dikreditkan sebagai pemrogram komputer reguler pertama. [3] [4]

Industri perangkat lunak

Perusahaan pertama yang didirikan khusus untuk menyediakan produk dan layanan perangkat lunak adalah Perusahaan Penggunaan Komputer pada tahun 1955. Sebelum waktu itu, komputer diprogram baik oleh pelanggan atau beberapa produsen komputer komersial pada waktu itu, seperti Sperry Rand dan IBM . [5]

Industri perangkat lunak berkembang pada awal 1960-an, segera setelah komputer pertama kali dijual dalam jumlah yang diproduksi secara massal. Universitas, pemerintah, dan bisnis menciptakan permintaan untuk perangkat lunak. Banyak dari program ini ditulis sendiri oleh programmer staf penuh waktu; beberapa didistribusikan di antara pengguna mesin tertentu tanpa biaya, sementara yang lain dijual secara komersial. Perusahaan lain, seperti Computer Sciences Corporation (didirikan pada tahun 1959), juga mulai tumbuh. Produsen komputer segera mulai menggabungkan sistem operasi , perangkat lunak sistem , dan lingkungan pemrograman dengan mesin mereka; yang IBM 1620 datang dengan 1620 simbolik Pemrograman Sistem danFORTRAN . [6]

Industri berkembang pesat dengan munculnya komputer pribadi (PC) pada pertengahan 1970-an, yang membawa komputasi ke pekerja kantor rata-rata. Pada tahun-tahun berikutnya, PC juga membantu menciptakan pasar yang terus berkembang untuk game, aplikasi, dan perangkat lunak utilitas. Hal ini mengakibatkan peningkatan permintaan untuk pengembang perangkat lunak untuk jangka waktu tersebut. [7]

Pada tahun-tahun awal abad ke-21, model bisnis lain yang sukses telah muncul untuk perangkat lunak yang dihosting, yang disebut perangkat lunak sebagai layanan , atau SaaS. Dari sudut pandang produsen beberapa perangkat lunak berpemilik , SaaS mengurangi kekhawatiran tentang penyalinan yang tidak sah , karena hanya dapat diakses melalui Web, dan menurut definisi, tidak ada perangkat lunak klien yang dimuat ke PC pengguna akhir. SaaS biasanya kehabisan cloud . [ rujukan? ]

Sifat pekerjaan

Pemrogram komputer menulis, menguji, men-debug , dan memelihara instruksi terperinci, yang disebut program komputer , yang harus diikuti komputer untuk menjalankan fungsinya. Pemrogram juga memahami, merancang, dan menguji struktur logis untuk memecahkan masalah dengan komputer. Banyak inovasi teknis dalam pemrograman — teknologi komputasi canggih dan bahasa serta alat pemrograman baru yang canggih — telah mendefinisikan ulang peran seorang programmer dan meningkatkan sebagian besar pekerjaan pemrograman yang dilakukan saat ini. Judul dan deskripsi pekerjaan dapat bervariasi, tergantung pada organisasi. [8]

Pemrogram bekerja di banyak lingkungan, termasuk departemen teknologi informasi (TI) perusahaan , perusahaan perangkat lunak besar , perusahaan jasa kecil, dan entitas pemerintah dari semua ukuran. Banyak programmer profesional juga bekerja untuk perusahaan konsultan di lokasi klien sebagai kontraktor . Lisensi biasanya tidak diperlukan untuk bekerja sebagai programmer, meskipun sertifikasi profesional biasanya dipegang oleh programmer. Pemrograman secara luas dianggap sebagai profesi (walaupun beberapa otoritas [ siapa? ] tidak setuju dengan alasan bahwa hanya karier dengan persyaratan lisensi legal yang dianggap sebagai profesi). [8]

Pekerjaan programmer sangat bervariasi tergantung pada jenis bisnis di mana mereka menulis program. Misalnya, instruksi yang terlibat dalam memperbarui catatan keuangan sangat berbeda dari yang diperlukan untuk menduplikasi kondisi di pesawat terbang untuk pelatihan pilot di simulator penerbangan . Program sederhana dapat ditulis dalam beberapa jam. Yang lebih kompleks mungkin memerlukan lebih dari satu tahun kerja, sementara yang lain tidak pernah dianggap 'lengkap' melainkan terus ditingkatkan selama mereka tetap digunakan. Dalam kebanyakan kasus, beberapa programmer bekerja sama sebagai sebuah tim di bawah pengawasan seorang programmer senior. [9]

Pemrogram menulis program sesuai dengan spesifikasi yang ditentukan terutama oleh pemrogram yang lebih senior atau analis sistem . Setelah proses desain selesai, tugas programmer adalah mengubah desain tersebut menjadi serangkaian instruksi logis yang dapat diikuti oleh komputer. Programmer mengkodekan instruksi-instruksi ini dalam salah satu dari banyak bahasa pemrograman. Bahasa pemrograman yang berbeda digunakan tergantung pada tujuan program. COBOL , misalnya, biasanya digunakan untuk aplikasi bisnis yang biasanya berjalan di komputer mainframe dan midrange , sedangkan Fortran digunakan dalam sains dan teknik. C++ dan Pythonbanyak digunakan untuk aplikasi ilmiah dan bisnis. Java , C# , JavaScript , dan PHP adalah bahasa pemrograman populer untuk aplikasi Web dan bisnis. Pemrogram umumnya mengetahui lebih dari satu bahasa pemrograman dan, karena banyak bahasa yang serupa, mereka sering kali dapat mempelajari bahasa baru dengan relatif mudah. Dalam praktiknya, pemrogram sering disebut dengan bahasa yang mereka ketahui, misalnya sebagai pemrogram Java , atau berdasarkan jenis fungsi yang mereka lakukan atau lingkungan tempat mereka bekerja: misalnya pemrogram basis data , pemrogram mainframe , atau pengembang web . [ rujukan?]]

Saat membuat perubahan pada kode sumber yang mendefinisikan program, pemrogram perlu membuat pemrogram lain menyadari tugas yang harus dilakukan rutin. Mereka melakukan ini dengan menulis dokumentasi perangkat lunak dan dengan memasukkan komentar ke dalam kode sumber sehingga orang lain dapat lebih mudah memahami program tersebut. Untuk menghemat waktu, pemrogram sering menggunakan pustaka kode dasar yang dapat dimodifikasi atau disesuaikan untuk aplikasi tertentu. Pendekatan ini menghasilkan program yang lebih andal dan konsisten serta meningkatkan produktivitas pemrogram dengan menghilangkan beberapa langkah rutin. [ rujukan? ]

Pengujian dan debugging

Pemrogram menguji program dengan menjalankannya dan mencari bug (kesalahan). Setelah diidentifikasi, pemrogram biasanya membuat koreksi yang sesuai, kemudian memeriksa ulang program sampai tingkat dan tingkat keparahan bug yang dapat diterima tetap rendah. Proses ini disebut pengujian dan debugging . Ini adalah bagian penting dari pekerjaan setiap programmer. Pemrogram dapat terus memperbaiki masalah ini sepanjang umur program. Memperbarui, memperbaiki, memodifikasi, dan memperluas program yang ada kadang-kadang disebut pemrograman pemeliharaan . Pemrogram dapat berkontribusi pada panduan pengguna dan bantuan online , atau mereka dapat bekerja dengan penulis teknis untuk melakukan pekerjaan tersebut.

Pemrograman aplikasi versus sistem

Pemrogram komputer sering dikelompokkan menjadi dua jenis besar: pemrogram aplikasi dan pemrogram sistem. Pemrogram aplikasi menulis program untuk menangani pekerjaan tertentu, seperti program untuk melacak inventaris dalam suatu organisasi. Mereka juga dapat merevisi paket perangkat lunak yang ada atau menyesuaikan aplikasi generik yang sering dibeli dari vendor perangkat lunak independen . Pemrogram sistem, sebaliknya, menulis program untuk memelihara dan mengontrol perangkat lunak sistem komputer, seperti sistem operasi dan sistem manajemen basis data . Para pekerja ini membuat perubahan dalam instruksi yang menentukan bagaimana jaringan, workstation, dan CPUsistem menangani berbagai pekerjaan yang telah diberikan kepada mereka dan bagaimana mereka berkomunikasi dengan peralatan periferal seperti printer dan drive disk .

Kualifikasi dan keterampilan

Seorang programmer perlu memiliki keahlian teknis dengan aspek-aspek tertentu dari komputasi. Beberapa posisi akan membutuhkan gelar di bidang yang relevan seperti ilmu komputer, teknologi informasi, teknik, pemrograman, atau studi terkait lainnya.

Jenis perangkat lunak

Pemrogram dapat bekerja secara langsung dengan para ahli dari berbagai bidang untuk membuat perangkat lunak – baik program yang dirancang untuk klien tertentu atau perangkat lunak yang dikemas untuk penggunaan umum – mulai dari permainan video hingga perangkat lunak pendidikan hingga program untuk penerbitan desktop atau aplikasi keuangan. Pemrograman perangkat lunak yang dikemas merupakan salah satu segmen yang paling cepat berkembang dari industri layanan komputer. Beberapa perusahaan atau organisasi – bahkan yang kecil – telah membentuk tim TI mereka sendiri untuk memastikan desain dan pengembangan perangkat lunak internal untuk menjawab kebutuhan yang sangat spesifik dari pengguna akhir internal mereka, terutama ketika perangkat lunak yang ada tidak sesuai atau terlalu mahal . Hal ini, misalnya, terjadi di laboratorium penelitian . [kutipan diperlukan ]

Di beberapa organisasi, terutama yang kecil, orang yang umumnya dikenal sebagai analis programmer bertanggung jawab atas analisis sistem dan pekerjaan pemrograman yang sebenarnya. Transisi dari lingkungan mainframe ke lingkungan yang terutama didasarkan pada komputer pribadi (PC) telah mengaburkan perbedaan yang dulu kaku antara programmer dan pengguna. Semakin, pengguna akhir mahir mengambil alih banyak tugas yang sebelumnya dilakukan oleh programmer. Misalnya, meningkatnya penggunaan perangkat lunak yang dikemas, seperti spreadsheet dan paket perangkat lunak manajemen basis data, memungkinkan pengguna untuk menulis program sederhana untuk mengakses data dan melakukan perhitungan. [ rujukan? ]

Selain itu, munculnya Internet telah membuat pengembangan web menjadi bagian besar dari bidang pemrograman. Saat ini, banyak aplikasi perangkat lunak adalah aplikasi web yang dapat digunakan oleh siapa saja dengan browser web . [ kutipan diperlukan ] Contoh aplikasi tersebut termasuk layanan pencarian Google , layanan email Outlook.com , dan layanan berbagi foto Flickr .

Editor pemrograman, juga dikenal sebagai editor kode sumber , adalah editor teks yang dirancang khusus untuk programmer atau pengembang untuk menulis kode sumber suatu aplikasi atau program. Sebagian besar editor ini menyertakan fitur yang berguna bagi pemrogram, yang mungkin mencakup penyorotan sintaksis warna , indentasi otomatis , pelengkapan otomatis , pencocokan braket, pemeriksaan sintaksis , dan memungkinkan plug-in . Fitur-fitur ini membantu pengguna selama pengkodean, debugging , dan pengujian. [10]

Globalisasi

Perubahan pasar di Inggris

Menurut BBC News , 17% mahasiswa ilmu komputer tidak dapat menemukan pekerjaan di bidang mereka 6 bulan setelah lulus pada tahun 2009 yang merupakan tingkat tertinggi dari mata pelajaran universitas yang disurvei sementara 0% mahasiswa kedokteran menganggur dalam survei yang sama. [11]

Perubahan pasar di AS

Setelah jatuhnya gelembung dot-com (1999–2001) dan Resesi Hebat (2008), banyak programmer AS dibiarkan tanpa pekerjaan atau dengan upah yang lebih rendah. [12] [13] Selain itu, pendaftaran gelar terkait komputer dan gelar STEM lainnya (pengurangan STEM) [14] di AS telah menurun selama bertahun-tahun, terutama untuk wanita, [15] yang, menurut Beaubouef dan Mason, [16] dapat dikaitkan dengan kurangnya minat umum dalam sains dan matematika dan juga karena ketakutan yang jelas bahwa pemrograman akan tunduk pada tekanan yang sama seperti karir manufaktur dan pertanian. Untuk programmer, Biro Statistik Tenaga Kerja AS(BLS) Occupational Outlook memprediksi penurunan sebesar 7 persen dari 2016 hingga 2026, penurunan lebih lanjut sebesar 9 persen dari 2019 hingga 2029, dan penurunan 10 persen dari 2020 hingga 2030. [17] karena pemrograman komputer dapat dilakukan dari mana saja di dunia, sehingga perusahaan terkadang mempekerjakan programmer di negara-negara di mana upahnya lebih rendah. [17] Namun, untuk pengembang perangkat lunak, proyek BLS untuk 2019 hingga 2029, peningkatan 22% dalam pekerjaan, dari 1.469.200 menjadi 1.785.200 pekerjaan dengan gaji pokok rata-rata $ 110.000 per tahun. Prediksi ini lebih rendah dari perkiraan awal 2010 hingga 2020 sebesar 30% untuk pengembang perangkat lunak. [18] [19] [20]Meskipun perbedaannya agak ambigu, pengembang perangkat lunak terlibat dalam aspek pengembangan aplikasi yang lebih luas dan umumnya lebih terampil daripada pemrogram, membuat outsourcing lebih sedikit risiko. [21] [22] Alasan lain untuk penurunan programmer adalah keterampilan mereka sedang digabungkan dengan profesi lain, seperti pengembang, sebagai majikan meningkatkan persyaratan untuk posisi dari waktu ke waktu.

Lihat juga

Referensi

  1. ^ [1] [2] [3] [4]
  2. ^ a b Fuegi, J.; Francis, J. (Oktober–Desember 2003). "Lovelace & Babbage dan penciptaan 1843 'catatan ' ". IEEE Annals of the History of Computing . 25 (4): 16–26. doi : 10.1109/MAHC.2003.1253887 .
  3. ^ "Peringatan" . Eniacprogrammers.org . Diakses pada 13 Maret 2021 .
  4. ^ "Berita ABC: Programmer Komputer Pertama Menginspirasi Film Dokumenter" . abcnews.go.com. 4 Desember 2007 . Diakses pada 13 Maret 2021 .
  5. ^ Elmer C. Kubie (Musim Panas 1994). "Kenangan dari perusahaan perangkat lunak pertama". Sejarah Sejarah Komputer . 16 (2): 65–71. doi : 10.1109/85.279238 . S2CID 5733812 . 
  6. ^ "Arsip IBM: Sistem Pemrosesan Data 1620" . www.ibm.com . 23 Januari 2003 . Diakses pada 17 Maret 2021 .
  7. ^ Biro, Sensus AS. "Pekerjaan Teknologi Informasi" . Biro Sensus Amerika Serikat . Diakses pada 21 Maret 2021 .
  8. ^ a b "Pemrogram Komputer : Buku Pegangan Pandangan Pekerjaan: : Biro Statistik Tenaga Kerja AS" . www.bls.gov . Diakses pada 13 Maret 2021 .
  9. ^ "Pemrogram Komputer | ComputerScience.org" . Dapatkan Pendidikan yang Dibutuhkan Dunia | Ilmu Komputer.org . 13 Oktober 2020 . Diakses pada 20 September 2021 .
  10. ^ "BBC Bitesize - GCSE Ilmu Komputer - Pemrograman perangkat lunak dan IDE - Revisi 4" . www.bbc.co.uk . Diakses pada 13 Maret 2021 .
  11. ^ Shankleman, Martin (1 Juli 2010). " ' Satu dari 10' lulusan Inggris menganggur" . Berita BBC . Diakses pada 13 Maret 2021 .
  12. ^ Mann, Amar; Nunes, Tony (Agustus 2009). "Setelah Gelembung Dot-Com: Ketenagakerjaan dan Upah Teknologi Tinggi Lembah Silikon pada tahun 2001 dan 2008" (PDF) . Laporan Regional, Biro Statistik Tenaga Kerja AS : 1–8 . Diakses pada 13 Maret 2021 .
  13. ^ "Krisis STEM adalah Mitos" . 30 Agustus 2013.
  14. ^ "Atrisi STEM: Jalur Mahasiswa Masuk dan Keluar dari Bidang STEM" . nces.ed.gov . 26 Nopember 2013 . Diakses pada 13 Maret 2021 .
  15. ^ "Portal Pengembang hp | Pekan Wanita Internasional HP: Wanita dalam Ilmu Komputer menurun sejak 1980-an" . developer.hp.com . Diakses pada 13 Maret 2021 .
  16. ^ Beaubouef, Theresa; Mason, John (Juni 2005). "Mengapa tingkat gesekan yang tinggi untuk mahasiswa ilmu komputer: beberapa pemikiran dan pengamatan". Buletin ACM SIGCSE . 37 (2): 103–106. doi : 10.1145/1083431.1083474 . S2CID 207157501 . 
  17. ^ a b "Pemrogram Komputer : Buku Pegangan Pandangan Pekerjaan: : Biro Statistik Tenaga Kerja AS" .
  18. ^ "Pengembang Perangkat Lunak, Analis Jaminan Kualitas, dan Penguji: Buku Pegangan Outlook Pekerjaan: Biro Statistik Tenaga Kerja AS" . www.bls.gov . Diakses tanggal 29 Juli 2021 .
  19. ^ "Pengembang Perangkat Lunak, Analis Jaminan Kualitas, dan Penguji: Buku Pegangan Outlook Pekerjaan:: Biro Statistik Tenaga Kerja AS" . Diarsipkan dari versi asli pada 1 September 2013.
  20. ^ "Krisis STEM adalah Mitos" . 30 Agustus 2013.
  21. ^ "Pemrogram Komputer vs. Pengembang Perangkat Lunak: Mendekode Perbedaan" . www.rasmussen.edu . Diakses tanggal 29 Juli 2021 .
  22. ^ "Membandingkan Dua Karir Utama: Pengembang Perangkat Lunak vs. Programmer" . online.maryville.edu . 31 Juli 2020 . Diakses tanggal 29 Juli 2021 .

Bacaan lebih lanjut

  • Weinberg, Gerald M. , Psikologi Pemrograman Komputer , New York: Van Nostrand Reinhold, 1971
  • Sebuah studi pengalaman tentang sifat pekerjaan pemrograman: Lucas, Rob. "Dreaming in Code" Ulasan Kiri Baru 62, Maret–April 2010, hlm. 125–132.
  • Thompson, Clive (2019). Coders: Pembuatan Suku Baru dan Pembuatan Kembali Dunia . Pers Pinguin. ISBN 978-0735220560.

Tautan eksternal

0.037037134170532