Apakah Teknologi Informasi benar-benar Rekayasa? [Tutup]

13

Saat bepergian, saya bertemu seorang ahli matematika yang duduk di dekat saya. Dalam sebuah diskusi dia berkata: "... tidak ada yang seperti teknik dalam IT atau lebih tepatnya pemrograman ". Teknik sejati adalah Arsitektur, apa Listrik dan Mekanis.

Itu membuat saya berpikir dan saya bingung. Persen otak saya setuju juga karena di Angkatan Darat India, tidak ada subjek seperti Teknik Komputer di Korps Rekayasa. Mereka tidak menganggap pemrograman sebagai rekayasa. Inilah yang saya dengar beberapa tahun lalu, saya tidak tahu apa yang dipikirkan Angkatan Darat India sekarang.

Apa pandanganmu

RPK
sumber
5
Pandangan saya: Dia hanya iri bahwa Anda dibayar lebih tinggi: P
Simon
4
Menurut pendapat saya Arsitektur bukanlah rekayasa
hiena
@hiena - memang, secara hukum, mereka adalah profesi yang berbeda, dan hukum (tergantung pada yurisdiksi Anda) mengatur apa itu Arsitektur dan apa itu Rekayasa.
Scott Whitlock

Jawaban:

17

Jika kita mengikuti deskripsi ini , kita adalah 75% insinyur, atau 75% dari kita adalah insinyur :)

Tidak seperti disiplin teknik lainnya:

  • pengembang perangkat lunak tidak memerlukan pendidikan formal dan / atau lisensi
  • adalah disiplin yang relatif muda dan tidak memiliki praktik terbaik yang telah terbukti (seperti konstruksi, misalnya)

Saya pikir ini akan berubah di masa depan. Suatu hari nanti kita akan menjadi insinyur 100%.


Insinyur

sumber: http://en.wikipedia.org/wiki/Engineer

Seorang insinyur adalah seorang praktisi teknik profesional, yang peduli untuk menerapkan pengetahuan ilmiah, matematika, dan kecerdikan untuk mengembangkan solusi untuk masalah teknis.

Kata engineer berasal dari bahasa Latin root ingenium, yang berarti "kepintaran".

Pendudukan

  • Insinyur Nama
  • Jenis Profesi
  • Sektor kegiatan Ilmu terapan

Deskripsi

  • Kompetensi Matematika, pengetahuan ilmiah, keterampilan manajemen
  • Pendidikan diperlukan Pendidikan teknik
  • Bidang ketenagakerjaan. Penelitian dan pengembangan, industri, bisnis
  • Pekerjaan terkait Ilmuwan, arsitek, manajer proyek
Branimir
sumber
15

Rekayasa perangkat lunak adalah rekayasa, tetapi TI atau pemrograman tidak. Itu sama seperti teknik mesin adalah teknik dan fisika atau pengelasan tidak.

Rekayasa perangkat lunak adalah bidang yang sangat muda (dibandingkan dengan cabang-cabang teknik lainnya), yang sebenarnya sulit untuk diajarkan kepada orang-orang, karena tidak banyak pengalaman untuk mengajar. Hanya dalam 20-25 tahun terakhir perangkat lunak menjadi begitu besar dan kompleks sehingga pemrograman belaka tidak akan berhasil.

Karena kekurangan pengetahuan yang mapan ini, rekayasa perangkat lunak yang sebenarnya jarang diajarkan. Satu-satunya cara Anda bisa menjadi insinyur perangkat lunak yang layak adalah mengikuti cara pengrajin: dibimbing di lapangan. Jadi sementara rekayasa perangkat lunak adalah disiplin yang ada, sangat sedikit yang benar-benar di bidang ini. Sebagian besar orang melakukan mengutak-atik perangkat lunak atau rekayasa perangkat lunak berlebihan.

back2dos
sumber
Maksud Anda rekayasa perangkat lunak tidak termasuk pemrograman?
RPK
1
@RPK: sulit untuk mengatakan, karena saya lebih mengutak-atik perangkat lunak :) Tapi pada dasarnya saya pikir pemrograman untuk rekayasa perangkat lunak apa bangunan untuk teknik sipil. Yang pertama berakhir dalam kekacauan tanpa yang terakhir dan yang terakhir tidak masuk akal tanpa yang pertama, tetapi keduanya relatif berbeda.
back2dos
@ back2dos: Saya cenderung setuju. Namun, saya pikir insinyur perangkat lunak hampir harus tahu cara membuat kode, sementara insinyur sipil tidak harus tahu cara mengelas.
Michael K
1
Katakan kepada insinyur material atau metalurgi bahwa pengelasan bukan rekayasa dan dia akan menutup mulut Anda :)
Vitor Py
@Vitor Braga: Apa maksud Anda? Saya benar-benar berharap dari seorang insinyur yang baik untuk memahami perbedaan antara teknik dan kerajinan. Dan saya juga bertanya-tanya berapa banyak insinyur metalurgi benar-benar melakukan pekerjaan mereka.
back2dos
14

Insinyur perangkat lunak di perusahaan teknik adalah insinyur. Saya berbicara tentang tempat-tempat seperti kontraktor pertahanan, produsen peralatan, dll. Kami mengikuti proses yang ketat untuk: membuat persyaratan dan dokumentasi desain, melakukan analisis terperinci bahwa desain akan memenuhi persyaratan sebelum kode apa pun ditulis, melakukan tinjauan kode dan pengujian unit, perencanaan dan melakukan tes integrasi dan kualifikasi. Dokumen ditinjau oleh dewan rekan dan pemangku kepentingan, tes disaksikan oleh organisasi QA dan hasilnya disajikan kepada pelanggan untuk penerimaan formal. Rekayasa perangkat lunak seperti yang dilakukan di tempat-tempat ini adalah proses ilmiah yang ketat.

ASHelly
sumber
1
100% setuju. Saya bekerja di perusahaan infrastruktur kritis. Kami insinyur di sini.
Paul Nathan
8

Sebagai P.Eng yang sebenarnya, saya akan mengatakan, secara umum, tidak. Namun, saya berpikir bahwa programmer dan Insinyur keduanya melakukan desain yang signifikan . Jika pertanyaannya adalah, "Apakah programmer programmer?" Saya pasti akan mengatakan ya.

Namun, Rekayasa Profesional berkaitan dengan tanggung jawab hukum atas kesalahan Anda, atau setidaknya mempertaruhkan hak hukum untuk mempraktikkan profesi Anda jika Anda melakukan kesalahan. Tidak masalah seberapa buruk Anda seorang programmer, Anda dapat keluar besok dan secara legal memasukkan "programmer" ke dalam resume Anda. Dengan P.Eng. jika Anda kehilangan lisensi, Anda tidak dapat menyebut diri Anda seorang P.Eng.

Rekayasa Profesional dibuat untuk menjadi profesi yang mengatur diri sendiri, di mana profesi dan pemerintah menyepakati tugas-tugas tertentu yang hanya dapat dilakukan oleh individu berlisensi. Mereka melakukan ini karena saling pengertian bahwa pekerjaan itu menimbulkan risiko signifikan bagi keselamatan publik.

Ada perangkat yang digerakkan oleh perangkat lunak tertentu yang harus distempel oleh Engineer sebelum dapat dijual (saya berbicara tentang perangkat keselamatan industri di sini). Orang yang mengulas dan menyetujui desain ini adalah Insinyur.

Scott Whitlock
sumber
Apakah Anda pikir alasan pengembangan perangkat lunak tidak diatur dengan cara yang sama dengan bidang teknik adalah karena risikonya berbeda atau kaum muda pemrograman sebagai profesi? Dalam aplikasi seperti sistem kontrol untuk perangkat medis, sistem militer dan sistem simulasi, sepertinya ada kerusakan dunia nyata yang disebabkan oleh kesalahan pemrograman. Atau apakah tidak ada perbedaan yang mudah antara pengembang sistem panduan rudal dan pengembang sistem akun dari sudut pandang pemerintah / industri?
aubreyrhodes
@ aubreyrhodes - Saya membayangkan dalam kasus itu ada badan pengatur yang berbeda untuk perangkat medis, sehingga mereka mungkin berada di luar bidang Teknik. Misalnya, ada garis yang sangat ketat yang ditarik, antara apa itu Rekayasa dan apa itu Arsitektur. Meskipun ada pemrograman yang terlibat dalam banyak tugas, itu tidak berarti Anda tidak perlu Teknik juga. Teknik tidak mendesain; Engineering mengatakan, "Saya menyatakan bahwa desain ini memenuhi pedoman peraturan, menggunakan pengetahuan industri terbaru, tidak menimbulkan risiko berlebihan bagi publik, dan saya akan mempertaruhkan karier saya untuk itu."
Scott Whitlock
2

Menurut saya kebanyakan programmer sebenarnya software mechanics. Maksudku, sebagian besar programmer di industri perangkat lunak tidak lebih dari pemeliharaan perangkat lunak dan perbaikan bug.

mhitza
sumber
Saya pikir Anda membingungkan mekanik dengan perawatan.
Benteng
@Rook: Tapi apa yang kebanyakan mekanik lakukan?
Michael K
@Michael - Saya lebih mengacu pada mech. eng. yang melakukan pengembangan, dibandingkan dengan pemeliharaan.
Benteng
3
@mhitza Implikasi Anda adalah bahwa mekanika perangkat lunak tidak membangun komponen perangkat lunak asli, tetapi hanya memelihara sistem lawas. Saya ragu bahwa kebanyakan programmer hanya melakukan pekerjaan seperti ini. Saya akan mengatakan bahwa kebanyakan programmer TIDAK membangun komponen dan sistem baru secara teratur.
Morgan Herlocker
@Prof Plum: Mhitza benar. Bagian terbesar dari pekerjaan perangkat lunak terletak pada pemeliharaan karena sebagian besar sistem yang sukses memiliki umur yang cukup panjang. Saya tahu orang-orang yang telah berada di bidang ini selama tiga puluh tahun yang tidak pernah mengembangkan sesuatu yang penting dari awal. Mereka hanya memperbaiki dan memodifikasi basis kode yang ada.
bit-twiddler
2

Ada beberapa kesamaan dalam hal penerapan keterampilan, tetapi saya tegas di kamp "tidak". Perbedaannya tidak sulit untuk dibuat - profesi Teknik memiliki dewan yang mengatur siapa yang dapat menyebut diri mereka Insinyur berdasarkan kualifikasi dan pengalaman. "Rekayasa Perangkat Lunak" tidak memiliki hal seperti itu (upaya pemula ada, tetapi saya belum pernah mendengar adanya akibat karena tidak termasuk dalam satu). Siapa pun dapat menyebut diri mereka sebagai Insinyur Perangkat Lunak, dan karenanya judul tersebut tidak memberi tahu pemberi kerja tentang kemampuan Anda. Hal yang sama berlaku untuk seseorang yang menggambarkan diri mereka sebagai "Insinyur Audio" - tidak ingin mengomentari Insinyur "Penerbangan" atau "Lokomotif" karena saya tidak yakin tentang papan untuk mereka.

Secara pribadi, saya seorang Ilmuwan Komputer yang bekerja di lingkungan akademik - Saya melakukan penelitian, saya tidak hanya membangun. Saya telah menghabiskan beberapa tahun di industri juga, dan saya menyebut pekerjaan saya di sana sebagai "Pengembangan Perangkat Lunak". Saya tidak perlu berpura-pura menjadi sesuatu yang bukan saya.

Latar Belakang: Saya di Afrika Selatan, di mana istilah Insinyur Perangkat Lunak untungnya tidak terlalu mencolok. Jika Dewan Teknik di bagian lain dunia telah jatuh, mungkin perbedaannya tidak relevan di sana. Jika demikian, itu memalukan - saya lebih suka hidup di dunia dengan dewan rekayasa perangkat lunak profesional daripada orang tanpa badan untuk profesi apa pun.

iftheshoefritz
sumber
Setuju! Saya juga bekerja sebagai ilmuwan komputer di lingkungan akademik, tetapi saya menghabiskan lebih dari dua puluh tahun bekerja dalam penelitian dan pengembangan perangkat lunak industri sebelum bergabung dengan organisasi saya saat ini. Saya benar-benar benci dipanggil seorang programmer. Seorang programmer adalah pengrajin sama seperti seorang masinis adalah pengrajin. Satu-satunya perbedaan adalah bahwa masinis cukup pintar untuk dibayar untuk lembur.
bit-twiddler
Seorang insinyur yang tidak berlisensi masih melakukan rekayasa, seperti halnya dokter yang tidak berlisensi masih mempraktikkan kedokteran.
DougM
1

Itu tergantung pada negara, pada definisi mereka, pada sistem akademik mereka dan seterusnya. Beberapa contohnya tidak menganggap arsitektur sebagai rekayasa - tidak seperti teknik sipil, itu dipandang lebih sebagai campuran antara teknik dan seni.

Itu semua tergantung pada bagaimana Anda melihatnya.

Tapi mengapa itu penting? Lagipula, ada apa namanya?

Benteng
sumber
3
Sayangnya banyak. Nama sebagai pengenal tidak berarti banyak, tetapi jika saya mengatakan 'geek' kepada ayah saya, dia berpikir 'kotor', sedangkan jika saya mengatakan jika kepada teman-teman saya, mereka berpikir 'jenius komputer'. Sebuah nama memunculkan gambar di benak pendengar, dan Anda ingin gambar itu akurat.
Michael K
@Michael - Uhmm, itu bukan maksud saya.
Benteng
1

Lain kali seseorang mencoba memancing Anda tentang topik tersebut, tanyakan kepada mereka tentang pekerjaan berikut:

  • Insinyur lokomotif
  • Insinyur penerbangan
  • Insinyur audio

Tidak satu pun dari posisi-posisi itu yang banyak berhubungan dengan teknik listrik / mekanik / sipil.

MIA
sumber
1
Tapi sebenarnya orang-orang itu bukan Insinyur Profesional (PE) dan karenanya bukan Insinyur yang sesungguhnya.
Vitor Py
@Vitor Tepat seperti itu, karena hanya beberapa programmer yang nyata (bersertifikat) Engineers.
Brian Knoblauch
1

Saya pribadi berpikir kami adalah insinyur, maksud saya .. Saya mungkin saja seorang programmer tetapi saya masih membuat dan merekayasa perangkat lunak ketika saya memodifikasi kode agar sesuai dll.

Ngomong-ngomong, itu hanya nama, aku sudah dipanggil seorang insinyur di pekerjaanku dan aku sudah dipanggil hanya seorang pembuat kode, tetapi bagaimanapun juga itu adalah hal yang sama.


sumber
1

Rekayasa perangkat lunak adalah rekayasa.

Namun, kebanyakan orang yang menyebut diri mereka insinyur perangkat lunak bukanlah insinyur. Banyak dari mereka yang bukan adalah programmer dan coders yang tidak perlu mengikuti proses rekayasa. Tidak ada yang salah dengan itu karena a) pengkodean merupakan hal mendasar untuk rekayasa perangkat lunak, dan 2) adalah ilmu yang berdiri sendiri. Tetapi memiliki proses rekayasa adalah dasar untuk menjadi dan bekerja sebagai rekayasa. Itu satu kelompok.

Kelompok lain, sayangnya yang cukup besar, bukan programmer / coders. Mereka hanya retas, monyet kode yang melemparkan kotoran ke monitor mereka dan menjual tongkat apa pun (dikutip dari suatu tempat, tidak dapat mengingat di mana.) Sekelompok bodoh dari pikiran bodoh.

Pengaruh kelompok selanjutnya adalah jahat, beracun, dan lucu (dengan cara humor hitam) yang menyebabkan insinyur dalam disiplin ilmu lain (salah) mencibir gagasan rekayasa perangkat lunak, atau menganggap rekayasa perangkat lunak dan ilmu komputer sama sekali bukan pengkodean (dan dengan coding, coding spaghetti.)

Singkatnya: Ada persepsi negatif tentang rekayasa perangkat lunak di antara banyak yang lain, disiplin ilmu mapan. Itu anggapan yang salah.

Tetapi anggapan yang salah itu berasal dari pengamatan nyata bahwa banyak orang yang menyebut diri mereka insinyur perangkat lunak tidak kekurangan karikatur sedih monyet lobotom yang menggedor keyboard dengan harapan bahwa, secara kebetulan, mereka akhirnya mengetik TAOCP Knuth.

ps ... Tebakan saya adalah ahli matematika dalam cerita Anda hanya terluka. Dia punya omong kosong di dadanya karena Tuhan tahu berapa lama, dan kau hanyalah outlet pertama yang membiarkannya keluar di tempat terbuka.

luis.espinal
sumber
-1

Karena pengembangan perangkat lunak relatif sangat muda dan berkembang sangat cepat, batas antara perangkat lunak - teknisi , insinyur dan ilmuwan tidak ditentukan dengan baik / sangat buram.

Gipsy King
sumber
1
Pengembangan perangkat lunak bukan IT. TI adalah disiplin yang berfokus pada konfigurasi dan pemeliharaan kekayaan intelektual (IP) yang ada. Pengembangan perangkat lunak adalah disiplin yang difokuskan pada penciptaan IP baru sebagai respons terhadap kebutuhan. Akronim IT tidak memasuki leksikon kami sampai konvergensi komputer dan sistem komunikasi menciptakan kebutuhan akan payung untuk mengelompokkan berbagai jenis personel operasional yang terlatih secara teknis. Jika seseorang bekerja di infrastruktur, ia bekerja di bidang TI. Jika seseorang bekerja dalam pengembangan perangkat lunak melakukan pekerjaan yang berorientasi pada proyek, ia tidak berada dalam TI.
bit-twiddler
Memperbaiki, kesalahan saya.
Gipsy King