Apa perbedaan antara "Pengembang Perangkat Lunak" dengan "Konsultan Perangkat Lunak"? Apa yang menjadikan seorang konsultan?

122

Saya telah melihat banyak orang mengklaim diri mereka sebagai "konsultan perangkat lunak". Konsultan ini melakukan apa yang dilakukan pengembang perangkat lunak biasa, menulis kode, memperkirakan tugas, memperbaiki bug, dan menghadiri rapat, dll. Satu-satunya perbedaan adalah keuangan, konsultan pada akhirnya menghasilkan lebih banyak. Lalu bagaimana perbedaan pengembang perangkat lunak dari "konsultan"?

Selain pertanyaan utama, saya ingin tahu bagaimana pengembang perangkat lunak dapat menjadi konsultan? Apakah ada pedoman khusus untuk konsultan? Apakah mereka perlu mengumpulkan sertifikasi dan menulis makalah penelitian? Tolong jangan membingungkan konsultan perangkat lunak dengan konsultan manajemen. Konsultan perangkat lunak yang saya lihat bukan manajer.

Robert Harvey
sumber
25
Anda dapat mengenakan biaya lebih banyak sebagai konsultan; pada dasarnya ini adalah istilah BS yang ditetapkan sendiri untuk dapat memasarkan diri Anda kepada perusahaan yang tidak curiga yang berpikir semakin banyak mereka membayar untuk orang bodoh yang menyebut dirinya seorang konsultan, semakin baik mereka.
Nodey The Node Guy
28
Di sisi lain, perusahaan tidak perlu mempekerjakan karyawan, sehingga dalam jangka panjang sebenarnya dapat lebih murah untuk membayar konsultan. Berbicara dengan sedikit kurang skeptis daripada @Steven, secara teori ketika Anda membayar konsultan, Anda mendapatkan keahlian bertahun-tahun di bidang tertentu.
Robert Harvey
43
@ Sebelas Saya tidak berpikir itu membuat Anda bodoh untuk ingin mendapatkan lebih banyak uang ...
Tidak ada yang
7
Konsultan mengembangkan hal-hal yang harus diperbaiki oleh pengembang atau ditulis ulang nanti karena semuanya omong kosong. Kisah nyata.
MetalMikester
9
@MetalMikester dan sekali lagi itu tergantung pada konsultan. Dan tunjukkan pada saya pengembang membuat perangkat lunak tanpa bug.
CoffeeCode

Jawaban:

107

Berikut daftar softies

Pengembang perangkat lunak - adalah seorang karyawan pada daftar gaji penuh waktu dan melakukan pekerjaan menerapkan persyaratan untuk aplikasi tersebut. Pengembang melewatkan proyek berbeda yang bekerja seperti ketika diarahkan oleh majikan mereka.

Konsultan perangkat lunak - bukan karyawan, dan diminta untuk memberikan saran (konsultasi) tentang bagaimana aplikasi harus diimplementasikan menggunakan pendekatan industri saat ini. Seringkali konsultan memberikan saran teknis tentang cara mengkonfigurasi aplikasi besar (SAP, Oracle dll). Konsultan, menurut pengalaman saya, umumnya bukan programmer.

Kontraktor perangkat lunak - bukan karyawan, dan dibawa untuk memberikan keterampilan dan keahlian dalam pendekatan industri saat ini. Biasanya kontraktor bekerja pada satu proyek dan melihat sampai selesai, pemrograman sesuai kebutuhan. Mereka tidak di bawah arahan majikan mereka, meskipun mereka dapat membantu di bidang lain sebagai sopan santun profesional.

Bagaimana Anda menjadi Konsultan Perangkat Lunak?

Biasanya sebagai hasil dari bekerja untuk konsultasi perangkat lunak yang mempekerjakan Anda setiap hari. Bayangkan Anda bekerja untuk Oracle dan beberapa perusahaan besar membutuhkan bantuan dalam menyiapkan middleware. Anda adalah karyawan tetap yang bekerja berdasarkan kontrak untuk pihak ketiga. Ini tidak selalu terjadi (lihat bagian berikutnya), tetapi ini adalah jalur yang biasa.

Bagaimana Anda menjadi Kontraktor Perangkat Lunak?

Biasanya sebagai hasil dari menciptakan perusahaan Anda sendiri dan membiarkan agen perekrutan tahu bahwa Anda tersedia untuk bekerja (pemrograman, konsultasi, keduanya ...). Agen kemudian mempekerjakan Anda keluar setiap hari, tunduk pada persyaratan kontrak tertentu. Anda bisa langsung, tetapi jauh lebih sulit (peran agen adalah mendaratkan klien, peran Anda adalah memberikan keahlian).

Gary Rowe
sumber
Sial, pertama saya membaca balasan @ FrustratedWithFormsDesigner dan saya pikir saya bisa mengikuti. Sekarang saya membaca jawaban yang bertentangan ini, dan saya tersesat lagi. :) Mau berkelahi habis-habisan? :)
Steven Jeuris
2
@FrustratedWithFormsDesigner benar-benar baik-baik saja, saya hanya menjadi lebih dari segalanya.
Gary Rowe
13
@ Seven Jeuris: Gary telah memberikan sedikit lebih detail antara "konsultan" dan "kontraktor". Dalam pengalaman saya, dua peran sangat sering (tetapi tidak selalu) tumpang tindih dan garis menjadi buram, jadi saya tidak pergi ke tingkat detail.
FrustratedWithFormsDesigner
2
@Kumar Developers membuat konsultan teknis yang baik karena mereka memiliki pengetahuan pemrograman yang diperlukan departemen TI untuk mendapatkan perangkat lunak untuk melakukan apa yang mereka inginkan. Ingat, menjadi konsultan lebih berkaitan dengan sifat hubungan antara Anda dan orang yang membayar Anda.
Gary Rowe
3
Secara teknis definisi tidak sepenuhnya benar karena Anda tidak perlu bekerja sendiri. Kebanyakan konsultan dan kontraktor perangkat lunak yang saya tahu (saya sendiri seorang kontraktor) adalah karyawan di perusahaan (seperti Accenture, IBM, Logica, dll.) Yang menawarkan layanan tersebut.
Spoike
55

"Konsultan Perangkat Lunak" berbeda dari "Pengembang Perangkat Lunak" berdasarkan ketentuan kerja. "Konsultan Perangkat Lunak" dipekerjakan sebagai kontraktor untuk jangka waktu tertentu dan untuk tugas / peran / proyek yang sangat spesifik sedangkan "Pengembang Perangkat Lunak" (yang bukan kontraktor atau konsultan) adalah anggota staf penuh waktu dengan gaji , dan mungkin memiliki banyak peran / proyek dalam perusahaan.

"Konsultan Perangkat Lunak" dapat merujuk pada pengembang / programmer yang dipekerjakan berdasarkan kontrak daripada pengembang / programmer yang dipekerjakan secara penuh waktu. Itu juga bisa merujuk kepada seseorang yang memberikan bimbingan dan manajemen proyek / desain / arsitektur proyek tingkat tinggi, seperti yang disebutkan orang lain, meskipun dalam pengalaman saya, judul "Konsultan Perangkat Lunak" biasanya berakhir menjadi seseorang yang bekerja 60-90% dari waktu sebagai seorang pengembang / programmer dan dipekerjakan pada kontrak daripada penuh waktu

Setiap pengembang dapat menjadi Konsultan dengan bekerja sebagai kontraktor. Untuk melakukan ini biasanya pertanyaannya adalah menjadi kontraktor lepas, atau bekerja dengan perusahaan konsultan.

FrustratedWithFormsDesigner
sumber
2
Yah, saya bekerja untuk startup sebagai kontraktor, bahkan tidak mendapatkan satu sen pun ekstra. Di atas itu bahkan bekerja pada akhir pekan untuk pizza dan coke diet dan itu juga di San Jose. Di sisi lain, pekerja-pekerja "konsultan" saya mendapat bayaran untuk setiap jam mereka bekerja pada akhir pekan atau larut malam. Bagian San Jose adalah untuk menekankan bahwa orang-orang bekerja secara gratis bahkan di Silicon Valley: P
Kumar
10
Dalam hal ini mungkin bahwa "Konsultan" hanya memiliki kontrak yang lebih baik (atau tidak takut menegakkan mereka, atau meminta firma konsultan untuk mendukungnya) daripada "Kontraktor" (Anda). Apakah kontrak Anda menyebutkan bahwa pizza dan coke diet adalah kompensasi yang dapat diterima (dan mengapa Anda tidak setidaknya bertahan untuk Coke biasa )?
FrustratedWithFormsDesigner
1
tidak benar - banyak pengembang juga kontraktor
Steven A. Lowe
@ Sebelas A. Lowe: Saya tidak bermaksud mengatakan bahwa mereka tidak, tetapi saya menggunakan judul OP "Pengembang Perangkat Lunak" dan "Konsultan Perangkat Lunak". Bagaimana / di mana saya menyatakan bahwa pengembang bukan kontraktor?
FrustratedWithFormsDesigner
1
@Frustrated "sedangkan Pengembang adalah anggota staf penuh waktu dengan gaji"
Steven A. Lowe
35

Konsultan diharapkan dapat meningkatkan bisnis tidak hanya mengembangkan beberapa perangkat lunak.

Saya telah menjadi pengembang selama lebih dari 30 tahun. Saya hanya cukup tahu untuk menjadi konsultan selama sepuluh tahun terakhir.

Steven A. Lowe
sumber
1
Saya pikir ini jawaban singkat dan jauh lebih akurat, IMO. Konsultan perangkat lunak akan lebih atau kurang cenderung terhadap bisnis.
Mohsin
22

Saya tidak melihat ada perbedaan antara "konsultan" dan "kontraktor" selain bahwa konsultan itu entah bagaimana menganggap saya berkelas dan berpotensi lebih mahal. :)

Dalam kedua kasus tersebut, saya telah memanggil konsultan / kontraktor "pengembang perangkat lunak" ketika mereka bekerja dalam peran pengembangan, tetapi saya juga berharap bahwa ketika saya mempekerjakan seseorang sebagai "konsultan", mereka akan melakukan beberapa tingkat pendampingan. dari tim karyawan tetap. Saya berharap bahwa ketika saya menyewa seorang konsultan, saya merekrut seseorang yang sudah memiliki pengalaman dalam teknologi yang saya gunakan untuk merekrut mereka, dan sangat mungkin bahwa sebagian besar tim permanen saya sudah mencapai kecepatan pada rincian khusus dari teknologi itu. Jadi saya berharap bahwa tim saya akan memompa konsultan untuk informasi dan konsultan akan mengelola keduanya untuk memberikan jawaban hemat waktu yang cerdas kepada tim dan mendapatkan sejumlah pekerjaan tangan yang dilakukan dengan kecepatan lebih cepat / kualitas yang lebih baik daripada saya yang baru datang- karyawan reguler yang up-to-speed.

Dalam kasus lain, saya telah mempekerjakan konsultan untuk menjadi "konsultasi" secara permanen - yang berarti mereka tidak melakukan pekerjaan apa pun, mereka mengajar tim untuk menjadi tim yang lebih baik atau menjadi lebih baik dengan alat atau teknologi yang diberikan.

Seperti yang dikatakan oleh posting lain, saya tidak berharap bahwa konsultan akan permanen. Saya berharap karyawan tetap akan menjadi permanen, atau setidaknya akan memiliki afiliasi dengan perusahaan yang bertahan melampaui satu proyek atau periode waktu yang singkat.

Jika Anda ingin menjadi konsultan dan menagih yang sesuai, saya katakan Anda perlu membangun resume. Ketika saya meninjau resume konsultan, saya mencari pengalaman yang mendalam tentang cutting tool dan teknologi. Ini bervariasi dari satu domain ke domain lainnya, tetapi saya sedang mencari seseorang yang menerapkan hal-hal kompleks di ujung pendarahan, sehingga mereka telah mencapai kurva pembelajaran pada teknologi yang saya coba terapkan. Sebagian besar konsultan yang saya kenal adalah pecandu. Mereka bekerja keras di siang hari dan kemudian menghabiskan malam mereka berlari lebih jauh ke depan dalam bidang spesialisasi mereka karena mereka tahu bahwa mereka membutuhkan ketrampilan tangan untuk menjual ke pekerjaan berikutnya.

bethlakshmi
sumber
1
Jadi sebagai manajer perekrutan / orang selain pengalaman, apakah Anda juga mencari sertifikasi dan makalah penelitian yang dilakukan oleh konsultan? Bagaimana Anda mewawancarai mereka? AFAIK, seseorang menyewa konsultan ketika mereka tidak memiliki keterampilan dan kemudian bagaimana Anda memeriksa bahwa resume tidak palsu dan orang memang memiliki keterampilan itu?
Kumar
Secara pribadi, saya bukan penggemar kertas dan sertifikasi. Ini bonus jika mereka mendapatkannya, tetapi jika saya mencari seseorang yang tahu sesuatu yang cukup canggih, maka saya tidak berharap ada sertifikasi yang akan membantu, dan tidak semua orang adalah penulis kertas - setelah semua menulis kertas dan menulis kode yang baik adalah hal yang sangat berbeda. Saya biasanya dapat mengatakan bahwa seseorang memberi saya omong kosong jika saya meminta mereka untuk menjelaskan arsitektur menggunakan teknologi yang diberikan dan mereka tidak masuk akal. Saya biasanya memiliki kedalaman yang cukup di area yang saya kelola untuk dapat terus melewati level BS.
bethlakshmi
Entah bagaimana saya melewatkan balasan Anda, tidak yakin mengapa. Bagaimanapun, terima kasih. Tetapi tidak semua organisasi memiliki ahli untuk memilih konsultan. Jadi, apakah Anda seperti "menyewa" seorang konsultan untuk menemukan Anda seorang konsultan? Pertimbangkan ini, sebuah organisasi yang bekerja dalam teknologi MS kode keras membutuhkan ahli untuk Unix, bagaimana mereka memilih konsultan? Apakah itu seperti mempekerjakan yang paling terkenal berdasarkan jejaring sosial / profesional & tidak mengevaluasi keterampilan teknologi?
Kumar
Saya tidak mengatakan saya seorang ahli di bidang ... ketika saya harus pergi jauh ke luar daerah saya, saya masih mengajukan pertanyaan dari konsultan dan memintanya untuk menjelaskan. Saya juga cenderung bertanya kepada jenderal "apa yang menurut Anda 10 hal terbaik yang harus dihindari dalam bidang keahlian Anda". Ini biasanya berbaris ke SESUATU yang saya tahu, atau saya bisa melakukan sedikit riset di forum seperti Stack Overflow dan melihat apakah orang itu pada uang. Kesalahan terbesar yang pernah saya lakukan adalah mempekerjakan seorang pria yang tidak masuk akal ketika dia menjelaskan banyak hal. Saya pikir itu adalah kurangnya pengetahuan saya ... ternyata pria itu tidak masuk akal bagi siapa pun.
bethlakshmi
2
Seorang kontraktor datang untuk melakukan pekerjaan & menyelesaikannya. Seorang konsultan datang untuk memulai pekerjaan & membiarkan Anda menyelesaikannya.
Sean McSomething
17

Sayang sekali pertanyaannya dibingkai apa adanya. Saya pikir pertanyaan yang lebih baik mungkin "Bagaimana 'kontraktor perangkat lunak' berbeda dari 'konsultan perangkat lunak'?" Istilah-istilah inilah yang benar-benar menimbulkan pertanyaan, setidaknya di sini di AS

Istilah 'pengembang perangkat lunak' dapat berlaku di semua jenis pekerjaan, pengembang menjadi jenis peran atau sumber daya yang dilayaninya. Masalah kontraktor / konsultan berkisar pada masalah ketenagakerjaan, dan sekali lagi, saya berbicara mengenai cara kerjanya di sini di AS. Tetapi untuk benar-benar menjawab pertanyaan ini secara definitif (dan Anda akan melihat, bahkan itu sulit dilakukan!), Pertama kami perlu mendefinisikan beberapa istilah dan menjelajahi beberapa sejarah.

Pengembang perangkat lunak, terlepas dari bagaimana mereka dipekerjakan, menciptakan perangkat lunak, dan mungkin melakukan banyak tugas lain yang terkait dengan pembuatan perangkat lunak, biasanya dengan pengecualian peran manajemen, meskipun itu bahkan cukup umum pada beberapa proyek, seperti tim memimpin . Proyek perangkat lunak dan manajer program jarang terlibat dalam kegiatan pembuatan perangkat lunak (selain dari pimpinan tim). Sekali lagi, ini adalah peran .

Mengenai pekerjaan dan pembayaran, ada beberapa jenis (berlaku untuk AS). Jenis pekerjaan yang paling umum adalah reguler atau 'langsung,' di mana pekerja berada di daftar gaji perusahaan yang mengembangkan perangkat lunak. Mereka mengisi W-4 dengan majikan setiap tahun dan menerima W-2 dari majikan itu pada akhir tahun untuk pajak mereka.

Di luar pekerjaan langsung, ada kontraktor, dan (tergantung pada definisi) konsultan. Namun, istilah 'kontraktor' agak menyesatkan. Secara teknis, kontraktor adalah entitas atau orang yang menandatangani kontrak dengan perusahaan klien, dalam hal ini yang mengembangkan perangkat lunak. Tetapi kenyataannya adalah, hampir semua kontraktor di AS bekerja melalui perusahaan kontraktor (juga disebut sebagai 'toko tubuh' dan istilah yang bahkan lebih gratis); mereka tidak 'berkontraksi', secara langsung dengan klien. Kontraktor yang disebut ini sebenarnya mengisi W-4 dengan perusahaan kontrak - bukan klien - setiap tahun dan menerima W-2 dari perusahaan kontrak pada akhir tahun untuk pajak mereka. Mereka dikenakan pajak dengan cara yang sama persis seperti saudara dan saudari mereka yang dipekerjakan secara langsung.

Intinya di sini adalah bahwa 'perusahaan kontraktor' yang benar-benar menandatangani kontrak dengan perusahaan klien, bukan yang disebut kontraktor ('karyawan kontrak'). Karyawan kontrak sebenarnya dipekerjakan oleh perusahaan kontrak, dan perusahaan kontrak adalah pihak dalam kontrak dengan klien. Jadi karyawan kontrak dan langsung yang bekerja pada proyek perangkat lunak pada dasarnya sama dalam hal perpajakan, dan biasanya bekerja di bilik yang berdekatan tanpa status khusus tertentu, satu-satunya perbedaan utama adalah bahwa kontraktor terbatas pada waktu tertentu mereka dapat terus bekerja pada proyek untuk klien itu. Ini karena perusahaan kontraktor tempat mereka bekerja tidak seharusnya menyimpannya di sana lebih lama dari waktu itu atau IRS kami dapat mereklasifikasi mereka sebagai karyawan langsung,

Dalam pengalaman saya sendiri, kontraktor sering diperpanjang oleh tipu daya HR, mengklasifikasikan ulang karyawan kontrak dari, katakanlah, 'kontraktor' menjadi 'temp' atau sejenisnya. Klien yang ingin membuat saya terus melakukannya kadang-kadang. Perusahaan klien harus berhati-hati; IRS dapat mengaudit mereka untuk menentukan hubungan sebenarnya dari kontraktor tersebut. Jika IRS mendapati bahwa klien telah memperlakukan mereka seperti karyawan langsung, membuat mereka tetap berada di lokasi tanpa batas misalnya, klien menjadi bertanggung jawab atas segala manfaat yang tidak diterima oleh karyawan (yang sekarang biasa) sebagai karyawan kontrak. Dan perusahaan kontraktor juga bertanggung jawab. Saya tidak tahu semua akibatnya, tetapi bisa menjadi berantakan.

Oh ya. Apa itu 'konsultan?' Istilah itu agak 'licin' - ada banyak perang yang memperebutkan wilayah suci itu. Dulu, mungkin 40 tahun yang lalu, bahwa 'konsultan' kurang lebih identik dengan 'kontraktor independen,' yang berarti seorang pekerja yang secara langsung melakukan kontrak dengan klien. Artinya, pekerja menandatangani kontrak dengan klien (mungkin yang mengembangkan perangkat lunak, seperti di atas). Pekerja itu TIDAK mengisi W-4 dengan klien dan tidak menerima W-2 dari klien pada akhir tahun. Sebagai gantinya, kontraktor langsung (apa yang sering disebut sebagai 'konsultan' saat itu) menerima 1099 dari klien.

Seiring dengan pengaturan pajak yang sangat berbeda ini, istilah 'konsultan' memiliki aura tertentu tentang hal itu. Konsultan pada umumnya lebih berpengalaman (setidaknya 10 tahun bekerja di lapangan) dan biasanya memiliki beberapa bidang keahlian yang mungkin sulit ditemukan, membuat mereka sangat diinginkan oleh klien, dan klien bersedia membayar $ 500 atau $ 1000 sehari (a jumlah yang sangat murah kemudian) untuk layanan ahli mereka. Konsultan berlari dengan kerumunan elit orang-orang yang terhubung cukup baik, dan itu umumnya sulit untuk masuk ke kelompok-kelompok itu. Keanggotaan diperlukan jika seseorang ingin menjadi konsultan yang sukses. Ada sebuah organisasi, baru-baru ini mati tetapi sedang dihidupkan kembali sekarang, disebut ICCA yang merupakan semacam klub anak laki-laki untuk konsultan komputer. Siapa pun dapat bergabung, dan saya lakukan pada satu titik; diterima dan mendapat pekerjaan adalah cerita yang berbeda.

Ada juga industri khusus, terutama di tempat-tempat seperti distrik keuangan NYC, yang berspesialisasi dalam kontrak perantara untuk para konsultan ini. Tetapi saat itu, untuk mendapatkan pekerjaan dalam perangkat lunak - dan terutama sektor keuangan - seseorang harus terhubung dengan baik (saya tahu karena saya telah mencoba saat itu). Saat ini, broker ini telah ditelan atau kehabisan bisnis oleh perusahaan penempatan besar. Kontrak independen hampir dihancurkan (memang ada, tetapi sektor itu jauh lebih kecil sekarang, hampir tidak ada) oleh serangkaian undang-undang yang perlahan dan pasti menghancurkan kontrak independen seperti itu.

Saat ini, istilah 'konsultan' jarang digunakan dalam bidang pekerjaan pengembangan perangkat lunak. Setidaknya, saya jarang mendengarnya. Kadang-kadang pengembang perangkat lunak kontrak disebut sebagai konsultan, tetapi hampir tidak ada perbedaan selain, mungkin, beberapa upaya untuk menyanjung atau memuji beberapa kontraktor tertentu untuk keahlian mereka dalam melemparkan kembali ke tiem sebelumnya ketika istilah itu berarti sesuatu yang istimewa .

Saya harus menyatakan bahwa masih ada manajer proyek perangkat lunak yang disebut "konsultan manajemen perangkat lunak," tetapi hampir semuanya juga mengarahkan karyawan ke beberapa perusahaan kontraktor yang melakukan tujuan yang sama dengan karyawan kontrak manajemen ini seperti perusahaan yang menyediakan W-4 untuk karyawan kontrak pengembang perangkat lunak tersebut. Dan, seperti yang Anda bayangkan, kadang-kadang mereka adalah perusahaan kontrak yang sama. Beberapa klien ingin berurusan dengan satu sumber pekerja untuk pengembang dan manajer yang mengerjakan proyek.

Konsultasi perangkat lunak asli dan independen di AS sebagian besar mati karena perubahan dalam undang-undang federal dan lanskap yang berubah dari perusahaan Amerika. Ketika perusahaan (klien konsultan potensial) semakin besar, departemen SDM mereka menjadi lebih terpusat secara brutal, efisien secara sombong, dan secara teknologi kotak hitam. Hampir tidak mungkin akhir-akhir ini untuk menghubungi manajer perekrutan untuk membahas peluang kerja dalam bentuk apa pun, langsung, atau kontrak. Sebagian dari ini adalah kerahasiaan perusahaan dan perlindungan karyawan, tetapi banyak dari ini adalah kecenderungan untuk memastikan bahwa sebanyak mungkin pekerja adalah karyawan langsung, atau setidaknya bekerja melalui perusahaan kontraktor.

Alternatif untuk skenario ini, mirip dengan waktu sebelumnya sekitar 40 tahun yang lalu, sangat berbeda. Saat itu, lebih sulit bagi pengusaha untuk mengontrol pekerjaan karyawan yang dikontraknya, terutama tipe konsultan. Kontrol terhadap pekerja semakin menjadi masalah utama ketenagakerjaan di AS untuk memastikan peningkatan produktivitas yang, pada gilirannya, penting bagi persaingan dengan negara-negara seperti India dan Vietnam, yang para pekerjanya bahkan lebih terbiasa dengan tuntutan produktivitas yang semakin meningkat.

Kunci untuk memahami semua ini adalah memahami bahwa kontraktor independen tidak dapat diberi tahu secara pasti bagaimana atau kapan melakukan pekerjaan mereka. Mereka biasanya harus menyediakan alat sendiri. Mereka harus mematuhi sekitar 20 jenis kendala ini agar IRS mengakui mereka sebagai kontraktor independen yang sah. Kalau tidak, masalah-masalah hukum yang saya sebut di atas masuk, bersama dengan potensi tuntutan hukum antara karyawan kontrak dan perusahaan kontrak mereka untuk tunjangan balik yang kemudian secara hukum akan menjadi hak mereka.

Maaf untuk penjelasan yang bertele-tele, tetapi ini benar-benar kompleks. Saya seorang pengembang perangkat lunak yang telah bekerja langsung untuk perusahaan dan melalui perusahaan kontrak. Saya telah berkali-kali dianggap akan "indy" tetapi itu telah menjadi jalan yang sangat berbahaya (dan menakutkan!) Untuk mengikuti dalam beberapa dekade terakhir. Dan korporasi, yang memanfaatkan dan meningkatkan pengaruh mereka dalam pemerintahan, terus memperketat pengaturan ini. Konsultan Perangkat Lunak Amerika sudah mati; setiap korban yang tersisa menderita napas terakhir mereka.

Phelonius
sumber
Saya pikir Anda membingungkan peran sebenarnya yang dapat dilakukan orang-orang dengan birokrasi pemerintah di sekitar itu
Yurii
Saya tidak yakin apa yang Anda maksud. Komentar Anda terdengar sangat umum dan sepertinya hanya berkaitan dengan pekerjaan pemerintah. Saya berbicara tentang sektor swasta juga.
Phelonius
@Phelonius, saya menemukan respons Anda menarik dan ada seorang pria yang menulis blog yang tampaknya tidak setuju dengan Anda: daedtech.com/reader-question-round-up-video-consulting-edition . Saya selalu memahaminya sama seperti Anda.
Daniel
12

Cara menjadi konsultan perangkat lunak:

  1. Pergi ke toko salinan dan cetak sekitar 100 kartu nama dengan nama Anda, nomor telepon Anda, alamat surat Anda dan judul "Konsultan Perangkat Lunak".
  2. Misi tercapai: Anda sekarang menjadi konsultan perangkat lunak.
Ingo
sumber
Yang saya kumpulkan di sini adalah sepertinya tidak ada konsensus tentang apa itu konsultan perangkat lunak, namun ada seorang pria dengan blog yang merasa cukup yakin: daedtech.com/hypothetical-consulting-gig . Saya pribadi tidak bisa mengatakan, saya sebenarnya tidak pernah tahu ada perbedaan sampai saya mulai berdialog dengannya.
Daniel
4

Pemahaman saya tentang "konsultan" adalah seseorang yang melakukan analisis bisnis (pengumpulan persyaratan) dan setidaknya beberapa desain / pengembangan perangkat lunak, meskipun mereka tidak terlalu jauh ke dalam parit sebagai pengembang perangkat lunak penuh waktu.

TKI, konsultan memakai beberapa topi, sedangkan pengembang memakai satu topi.

John Bode
sumber
1

Pengalaman saya tentang peran konsultan berbeda dari tema umum sejauh ini.

Penggunaan lain dari istilah ini, mungkin hanya umum di Inggris, adalah insinyur senior dan berpengalaman yang memiliki kemampuan terbukti untuk memahami suatu sistem, berkomunikasi tentang hal itu, dan mendiskusikan pertukaran implementasi alternatif.

Yang terbaik dari ini dapat memberikan input tingkat tinggi pada sistem yang belum pernah mereka temui sebelumnya.

Konsultan eksternal, didatangkan untuk tujuan tertentu, kadang-kadang menunjukkan beberapa keterampilan ini - tetapi biasanya dialami (jika itu) dengan cara yang jauh lebih sempit, lebih terfokus.

itj
sumber
0

Saya kira, Anda harus menjadi pengembang perangkat lunak kickass atau setidaknya yang baik, untuk memberikan saran kepada orang lain tentang cara mengembangkan perangkat lunak.

Sederhananya, Konsultan S / W adalah Pengembang S / W dengan pengalaman yang telah terbukti.

Lihat saja ke masa lalu dalam kehidupan Anda sendiri - ketika Anda mulai mengemudi, atau mencapai usia untuk mendapatkan SIM, apakah Anda bertanya hal-hal tentang mengemudi dan aplikasi SIM dari seseorang yang lebih muda dari Anda atau seseorang yang lebih tua yang memiliki SIM dan tahu mengemudi?

Juga, konsultan sering melakukan pekerjaan untuk Anda - bagian yang berkembang, selain hal-hal lain yang ada di sekitar penciptaan produk perangkat lunak, dari awal hingga selesai. Setidaknya organisasi besar melakukannya, mereka menangani setiap aspek dari penciptaan produk untuk Anda. Anda hanya perlu memberi tahu mereka apa yang Anda inginkan, bagaimana Anda ingin itu dilakukan, apa hal-hal penting itu, tenggat waktu, dokumentasi, dll.

TCS muncul di pikiran. Layanan Konsultasi Tata. Jangan salah, mereka adalah salah satu perusahaan layanan TI India yang sangat cerdas, cabang dari kelompok industri Tata, di bawah Ratan Tata.

Karya-karya terkenal TCS - digitaisasi sistem aplikasi paspor, UID, dan karya-karya besar pemerintah lainnya.

bad_keypoints
sumber
-1

Konsultan lebih dibayar untuk setiap jam mereka bekerja.

Tetapi sebagai pengembang tetap penuh waktu di perusahaan Anda, Anda mendapatkan gaji setiap bulan. Pekerjaan Anda "lebih aman".

Kaum muda suka tantangan dan suka bekerja sebagai konsultan. Ini bagus jika Anda suka melihat wajah-wajah baru, memiliki lebih banyak responsabilitas dan kemandirian.

Saya kira setelah menikah dan anak-anak Anda lebih suka "keamanan" daripada "petualangan". Anda ingin tahu apa yang akan terjadi minggu depan, dll.

Saya tidak yakin bayarannya adalah poin terpenting di sini. Bekerja sendiri memiliki banyak keuntungan.

Anda tidak dapat membeli kebahagiaan dengan uang, dan kadang-kadang saya lebih suka mendapatkan $ 500 lebih sedikit setiap bulan (apalagi jika Anda bekerja di rumah Anda tidak harus membayar untuk transportasi misalnya) daripada bekerja pada proyek-proyek buruk, di 10- sibuk lingkungan orang-per-kamar dengan penundaan dan segalanya ...

Ini sama dengan bekerja sebagai karyawan atau menciptakan bisnis Anda sendiri. (hampir tidak ada investasi untuk dilakukan sebagai pengembang perangkat lunak sendiri)

tiktak
sumber
3
Tergantung pada perusahaan, karyawan penuh waktu juga mendapatkan manfaat seperti asuransi kesehatan dan asuransi gigi melalui rencana perusahaan. Mereka juga dapat memperoleh pensiun dan "karyawan saja!" tunjangan. Kontraktor dan konsultan tidak pernah mendapatkan itu (sejauh yang saya lihat), dan jika mereka menginginkannya maka mereka membelinya sendiri.
FrustratedWithFormsDesigner
3
@ user25382 Tidak bisa tidak setuju lagi - Saya seorang kontraktor dan saya sudah menikah dengan anak-anak dan suka petualangan yang sedang berlangsung yaitu pengembangan perangkat lunak kontrak. Saya menganggap risiko perangkat lunak kontrak sama dengan risiko pekerja permanen.
Gary Rowe
3
@Gary Rowe Saya benar-benar menganggap risiko perangkat lunak kontrak lebih rendah daripada pekerja permanen.
Gratzy
1
@ Gary Rowe ya tepatnya. Selain itu Anda dipaksa untuk menjaga keterampilan wawancara / penjualan Anda tajam. Saya juga melihat perusahaan mempertahankan kontraktor mereka dan melepaskan staf penuh waktu mereka, serta membawa kontraktor sebelum mempekerjakan staf penuh waktu.
Gratzy
2
Anda tampaknya mencampur konsultan dengan kontraktor. IMO, itu adalah hal-hal yang sangat berbeda dalam hal keamanan pekerjaan. Sebagian besar, jika tidak semua konsultan adalah karyawan penuh waktu dengan jumlah keamanan kerja normal.
Duncan Jones
-1

Saya merasa menarik beberapa jawaban mulai " Seorang konsultan perangkat lunak bukan karyawan ... " - mereka adalah karyawan di suatu tempat! Dan khususnya, OP tertarik pada bagaimana menjadi konsultan, yang tentunya merupakan sesuatu yang harus disajikan dari perspektif karyawan.

Saya bekerja di bidang konsultasi dan saya akan menyarankan karakteristik utama yang diperlukan untuk berhasil adalah menjadi sangat ramah. Ini berasal dari kebutuhan konstan untuk berhubungan dengan pelanggan. Siapa pun yang merupakan "konsultan perangkat lunak" tetapi tidak terlibat langsung dengan pelanggan hampir setiap hari hanyalah pengembang perangkat lunak.

Dalam pengalaman saya, konsultan perangkat lunak juga programmer. Namun, kadang-kadang mereka tidak cukup berbakat seperti rekan-rekan pengembang perangkat lunak mereka - kebanyakan karena mereka harus mengasah keterampilan lain juga, termasuk presentasi dan penulisan proposal. Tentu saja, ini bervariasi antar konsultan.

Saya juga mempekerjakan konsultan yang sebelumnya adalah pengembang perangkat lunak. Setelah satu atau dua wawancara, saya dapat dengan mudah memeriksa bakat pengembangan perangkat lunak mereka hingga awal. Saya kemudian harus fokus pada apakah mereka cukup ramah (bahkan cukup rapi) untuk mewakili perusahaan di depan pelanggan. Untuk batas tertentu, Anda perlu terlihat baik dalam setelan jas, sedangkal kedengarannya. Anda harus dapat menyajikan dengan percaya diri di depan pelanggan dan menjawab pertanyaan canggung. Ini adalah keterampilan yang hanya dimiliki oleh beberapa pengembang perangkat lunak.

Akhirnya, saya ingin menambahkan bahwa saya menyukai pekerjaan saya sebagai konsultan perangkat lunak. Itu bukan karena membayar dengan baik, meskipun saya tidak akan mengeluh tentang itu. Itu karena saya terlibat dalam banyak proyek pelanggan dengan berbagai masalah untuk dipecahkan dan teknologi untuk digunakan. Bagi saya, itu akan selalu berhasil pada rilis berikutnya ...

Duncan Jones
sumber
-1

Pengembang atau Kontraktor - Anda mencari posisi pengembangan perangkat lunak terbuka (tanpa tanggal akhir) atau kontrak (tanggal akhir yang ditentukan).

Konsultan - Anda membuat diri Anda dikenal, dan perusahaan meminta layanan pengembangan perangkat lunak Anda, biasanya di bawah kontrak.

Yang lainnya adalah tambahan berdasarkan mekanisme di atas.

Mafuba
sumber
-1

Saya pikir kalian salah paham. Membedakan antara konsultan perangkat lunak yang memiliki perusahaan sendiri dan secara individual berkonsultasi dengan konsultan perangkat lunak yang bekerja untuk Big 4. Konsultan memiliki lebih banyak keterampilan bisnis / fokus manajemen hubungan dan pengembangan keahlian yang terbatas. Pengembang perangkat lunak sebagian besar adalah tangan langsung, teknis hardcore dan selama periode waktu keahlian keras mereka menjadi lebih kuat daripada konsultan perangkat lunak. Seorang konsultan harus membagi perhatiannya antara bisnis dan pekerjaan teknis, sehingga keterampilannya lebih cenderung ke arah bisnis seiring dengan meningkatnya senioritas. Jika itu adalah konsultan perangkat lunak yang beroperasi secara individual, maka itu adalah seseorang yang terbukti hebat dan mampu memberikan saran dan layanan dengan harga tinggi. Konsultan perangkat lunak yang bekerja di tempat-tempat seperti perusahaan konsultan Big 4 lebih mirip jack dari semua perdagangan. Sebuah perusahaan seperti Google atau Amazon atau Apple jarang akan menyentuh orang-orang seperti ini setelah berkonsultasi dengan mereka kecuali mereka mempertahankan keterampilan teknis mereka di luar pekerjaan.

joustRanger
sumber
5
posting ini agak sulit dibaca (dinding teks). Maukah Anda mengeditnya menjadi bentuk yang lebih baik?
nyamuk
-2

Dalam praktiknya, karyawan tetap dapat dipecat kapan saja, kapan saja, kapan saja. Dalam hal ini, karyawan tetap tidak lebih baik daripada kontraktor. Dan memang, "karyawan tetap" hanyalah kontraktor tanpa kontrak yang jelas, yang lebih buruk daripada kontraktor formal.

Hiu
sumber
3
Tergantung pada negara tempat Anda bekerja. Di Inggris, seorang kontraktor dapat dilepaskan dengan sangat mudah, sedangkan hanya pemecatan permanen yang dibangun dengan hati-hati akan menghindari pengadilan ketenagakerjaan.
Duncan Jones
-2

Saya tahu ada beberapa perusahaan yang menyebut diri mereka sebagai perusahaan konsultan tetapi dari apa yang saya pahami mereka tidak melakukan banyak konsultasi dalam pengertian tradisional.

Satu-satunya perbedaan tampaknya adalah bahwa mereka hanya mempekerjakan pengembang yang berpengalaman dan dikontrakkan ke perusahaan besar untuk melakukan pekerjaan yang mereka sendiri bisa lakukan sendiri, tetapi mudah-mudahan dengan standar yang lebih tinggi.

ealgestorm
sumber