Apakah saya menipu diri sendiri? Transisi analis bisnis ke programmer

11

Pekerjaan saat ini: Bekerja sebagai analis bisnis utama untuk sebuah perusahaan Big 4, memimpin tim pengembang dan penguji yang bekerja pada proyek re-platforming skala besar (4 pengembang di darat, 4 pengembang di darat, beberapa penguji darat / lepas pantai). Juga bekerja dalam kapasitas yang sama pada proyek skala kecil lainnya.

Luasnya peran saya: Mengumpulkan / menulis persyaratan, membuat spesifikasi fungsional, merancang UI (pada dasarnya memetakan semua aspek front-end sistem), bekerja sama dengan para pengembang untuk mengkomunikasikan / mengklarifikasi persyaratan dan menghasilkan solusi ketika kita menghadapi hambatan , menulis kasus pengujian (dan melakukan banyak pengujian), bekerja dengan manajemen senior dan pemangku kepentingan utama, mengelola penguji beta, membuat panduan pengguna dan memimpin sesi pelatihan, memberikan dukungan teknis utama.

Saya juga menulis beberapa makro di Excel menggunakan VBA (beberapa makro saya sekarang digunakan di seluruh perusahaan, jadi mungkin ada sekitar 1000 orang yang menggunakan mereka) dan menggunakan SQL setiap hari, baik pada file-file kompak SQL program bergantung pada, data SQL Server kami dan semua database Access yang saya buat. Para pengembang merasa bahwa saya cukup baik dalam peran ini karena saya mengerti banyak tentang pemrograman, keterbatasan sistem yang melekat, struktur database, dll. Jadi lebih mudah bagi saya untuk mengomunikasikan ide-ide dan menghasilkan saran ketika kita menghadapi masalah.

Yang benar-benar menarik minat saya adalah mengembangkan perangkat lunak. Saya melakukan pemrograman dalam jumlah yang cukup di VBA dan ingin belajar C # untuk sementara waktu (tim pengembang menggunakan C # - Saya meninjau kode sesekali untuk kepentingan saya sendiri tetapi belum memiliki pengalaman praktis menggunakannya). Saya tertarik tidak hanya pada proses bisnis tetapi juga sisi teknis, sehingga peran BA tradisional tidak benar-benar membangkitkan selera saya untuk hal-hal yang ingin saya lakukan. Saat ini saya memiliki beberapa proyek kecil yang manajer berikan kepada saya dan saya menemukan cara baru untuk melakukannya (seperti membangun aplikasi Access kustom), jadi ada sedikit di sana-sini untuk membuat saya tetap tertarik.

Pertanyaan saya adalah ini: apa yang ingin saya lakukan adalah membuat aplikasi Excel atau Access khusus untuk bisnis kecil sebagai bisnis freelance (bekerja sebagai one-man shop; mungkin memiliki kontraktor sesekali tergantung pada kompleksitas proyek). Ini jelas akan dimulai sebagai usaha paruh waktu sementara saya memiliki pekerjaan harian, tetapi akhirnya menjadi pekerjaan penuh waktu. Apakah saya menipu diri sendiri dengan berpikir bahwa saya dapat beralih dari BA / programmer VBA paruh waktu ke membuat bisnis paruh waktu freelance (di mana saya akan memulai hanya dengan menulis aplikasi Excel / Access khusus di VBA)? Atau apakah jenis hal ini biasanya tidak dicoba sampai seseorang memperoleh pengalaman pemrograman penuh waktu bertahun-tahun? Dan apakah ada pasar untuk jenis aplikasi ini di antara bisnis kecil (dan mungkin bisnis menengah)?

Ryan
sumber
3
Anda sekarang mungkin berada di puncak karier Anda. Anda dapat melakukan pekerjaan yang sama dengan keterampilan yang sama dalam 5 tahun tanpa membaca buku. Jika Anda seorang programmer, Anda akan mulai dari bawah tangga dan dalam waktu 5 tahun, bahkan mungkin tidak ada tangga !!! Jangan gabungkan hobi dengan karier. Tentu saja Anda bisa menjadi programmer tetapi apa yang dilakukan kebanyakan programmer rata-rata setelah 10 tahun? Bertahan sebagai programmer di pasar saat ini dan bergerak naik sangat sulit bagi orang kebanyakan karena kompetisi yang tinggi dan tantangan teknologi yang berkelanjutan.
NoChance
Saya setuju bahwa sebagai analis bisnis dan pelaku bisnis, saya memiliki kemampuan untuk terus naik ke posisi yang lebih tinggi. Masalahnya adalah semakin tinggi Anda melangkah, umumnya semakin jauh dari teknologi dan implementasi Anda. Saya telah mewawancarai beberapa perusahaan konsultan untuk posisi konsultasi manajemen di bidang teknologi, tetapi jenis peran ini tidak begitu menarik bagi saya. Tujuan saya bukan untuk menjadi programmer murni; sebenarnya saya tidak tertarik untuk bekerja sebagai seorang dev untuk dipekerjakan sebagai seorang karyawan, melainkan memiliki sebuah toko konsultan kecil di mana saya dapat menangani sisi bisnis dan dev.
Ryan
"toko konsultasi kecil tempat aku bisa menangani bisnis dan sisi dev" kedengarannya terlalu banyak risiko bagiku. Anda lihat, pasar penuh dengan solusi yang tersedia dan begitu banyak perusahaan dan kontraktor yang siap membangun sistem dengan harga $ 200 atau kurang. Saya rasa 'kecil' tidak akan bertahan lama mengingat ekonomi dan laju perubahan teknologi yang cepat kecuali Anda memiliki strategi untuk menarik pelanggan dan fokus pada teknologi yang lambat berubah.
NoChance
7
@EmmadKareem, "jangan gabungkan hobi dengan karier" ... maksud Anda: pastikan bahwa hampir seluruh hidup Anda dihabiskan untuk melakukan sesuatu yang tidak Anda sukai dan sekitar 5% melakukan apa yang Anda suka ... terdengar seperti rencana hebat untuk kebahagiaan (tetapi harus diakui sebagai yang umum)
JoelFan
4
@EmmadKareem, saya pikir ada banyak programmer yang telah bekerja 10, 20 tahun atau lebih dan senang dengan karir mereka
JoelFan

Jawaban:

15

Tidak, Anda tidak menipu diri sendiri, itu bisa dilakukan! Salah satu dari orang-orang di sini melakukan itu, meskipun saya tidak tahu detailnya tetapi saya pikir dia mulai sebagai penjamin emisi, menjadi BA untuk penjaminan pengembangan perangkat lunak antar, kemudian entah bagaimana beralih ke pengembangan penuh waktu. Saya kira dia sudah memiliki latar belakang teknis, seperti Anda.

Ini mungkin bekerja lebih baik jika Anda mencoba melakukannya terlebih dahulu dengan majikan Anda saat ini daripada pergi sendirian. Anda akan memiliki lebih banyak dukungan dan bantuan. Mungkin berbicara dengan manajer Anda dan tanyakan bagaimana Anda bisa beralih ke peran pengembangan dalam organisasi, mungkin pada tim yang sama untuk memulai. Dengan begitu Anda sudah mengenal semua orang dan mereka mengenal Anda dan apa yang sudah Anda mampu dan dapat membantu melatih Anda lebih jauh. Jika Anda benar- benar sangat beruntung, perusahaan Anda akan memiliki anggaran untuk mengirim Anda ke kursus untuk mengejar ketinggalan dengan lebih cepat.

FrustratedWithFormsDesigner
sumber
2
Saya hanya menggemakan bahwa hal itu pasti dapat dilakukan - pada posisi sebelumnya, saya bekerja dengan kontraktor yang melakukan hal itu. Dia mulai membuat aplikasi Access untuk sebuah perusahaan dari peran non-dev, kemudian menjadi konsultan luar untuk mereka, dan akhirnya memutarnya ke dalam bisnisnya sendiri dan tampaknya cukup bagus.
bunglestink
4

VBA dan Access adalah bagian bawah tangga pemrograman. Jika saya jadi Anda, saya akan menembak lebih tinggi karena Anda memiliki keterampilan SQL. Pertimbangkan mempelajari Layanan Pelaporan SQL Server dan membuat laporan atau SSIS dan melakukan pemrosesan ETL. Itu adalah keterampilan dalam permintaan yang cukup tinggi saat ini dan Anda berada di posisi yang tepat untuk melakukannya karena mereka relatif mudah untuk masuk ke dalam lingkungan perusahaan terutama jika Anda tidak memiliki orang lain yang saat ini menangani peran-peran tersebut untuk perusahaan Anda. Saya akan melihat pengalaman analis bisnis sebagai nilai tambah yang besar bagi penulis laporan.

HLGEM
sumber
2

Itu bisa dilakukan. Ini tidak akan mudah, terutama jika Anda ingin melakukannya dengan baik, karena pengembangan perangkat lunak adalah disiplin teknik dengan masalah dan perangkap yang tidak jelas, Anda harus belajar untuk mengenali dan menghindari. Itu akan memakan waktu beberapa tahun untuk belajar dan berlatih secara serius, tetapi jika Anda dapat memahami konsep-konsepnya, Anda pasti dapat menjadi seorang programmer bahkan jika latar belakang Anda berada dalam sesuatu yang berbeda.

Mason Wheeler
sumber
Adakah program studi yang direkomendasikan? Saya lebih suka belajar sendiri, jadi saat ini saya sedang berlangganan beberapa MIT OpenCourseware (Intro to Comp Sci) yang menggunakan Python sebagai bahasa pengajarnya, terutama agar saya bisa memahami beberapa teori pemrograman yang solid dan berpikir lebih jauh tentang baris seorang programmer. Juga terus memperluas pengetahuan Excel / Access / VBA saya melalui proyek aktual di tempat kerja.
Ryan
@Ryan Anda dalam khayalan tentang satu hal: tidak ada teori pemrograman yang solid. Pemrograman adalah kerajinan yang sangat tidak matang (kerajinan adalah kata yang tepat!) - itu benar-benar terlalu muda. Pemrogram membaca banyak buku, tetapi revolusi dalam bidang ini terjadi secara overmonth. Yang berarti sikap belajar adalah satu-satunya prasyarat :)
K.Steff
1
@Ryan: Saya kebanyakan belajar sendiri. "Kursus studi" saya adalah "program ini payah. Saya bisa melakukan ini, dan melakukannya lebih baik daripada yang penulis lakukan. Jadi mari kita lihat, saya punya kompiler, sekarang bagaimana saya mulai mengimplementasikan fitur?"
Mason Wheeler
2

Apakah akan memakan waktu bertahun-tahun atau sebagian besar tergantung pada Anda, jadwal Anda, tetapi yang paling penting, tingkat minat Anda yang cenderung terkait dengan bakat. Jika Anda kebetulan tinggal atau bekerja di kota dan memiliki pilihan komuter massal, ambil dan gunakan waktu perjalanan bawaan untuk membaca buku-buku teknologi. Apa pun yang menarik minat Anda.

Sejauh keberanian berpikir Anda bisa, jangan pikirkan itu. Memutuskan bahwa Anda mungkin bisa menangani <masukkan tumpukan kerumitan yang tidak diketahui di sini> adalah apa yang para pengembang lakukan. Itu bukan arogansi, hanya mengambil langkah pertama.

Sombong di tanah pengembang menyebut diri Anda seorang pengembang profesional ketika Anda memiliki satu solusi untuk semuanya dan Anda belum mempelajari hal baru sejak kuliah. Itulah perkembangannya. Ketika Anda berhenti belajar karier Anda mulai menurun, maka minat adalah semacam kuncinya. Sepertinya Anda memilikinya.

Jadi lakukanlah.

Anda sudah menangkap target Anda. Sisanya adalah memecahkan masalah-masalah besar yang menakutkan menjadi masalah-masalah kecil yang tidak terlalu menakutkan. Ulangi ad nauseum dan Anda akan menjadi pengembang penuh waktu yang dibayar yang berharap ada masalah yang lebih besar / menakutkan daripada dulu lebih cepat dari yang Anda kira.

Erik Reppen
sumber
Pengamatan sisi: kesombongan membantu pada tahap awal. Jika saya tahu pemrograman apa sebenarnya ketika saya mulai, saya mungkin akan menyerah dua jam setelah 'hello world'.
K.Steff
1

Saya akan mengatakan (jika Anda ingin memulai sesuatu) pergi dengan SICP - Struktur dan Interpretasi Program Komputer. Saya harus menautkannya, tetapi ini lebih dari sekadar buku; saat ini Anda juga dapat menemukan orang lain untuk belajar kursus dengan online. Ini buku yang sangat sulit - menyelesaikan semua latihan adalah sesuatu yang tidak bisa dilakukan sebagian besar pengembang (sayangnya), tetapi ini adalah buku terbaik yang tersedia. MIT OCW juga bagus, tapi IMHO itu versi SICP yang dipermudah untuk pemrograman. Python dirancang untuk menyembunyikan kompleksitas, daripada membuat Anda menikmatinya dengan cara yang sakit (seperti yang dilakukan SICP).

Juga, Anda perlu membedakan antara pemrograman sebagai profesi, dan pemrograman sebagai keterampilan. Satu membutuhkan dedikasi untuk hal-hal seperti kode yang indah, bersih dan dapat diperluas, sementara yang lain tidak memerlukan apa pun selain keterampilan algoritmik (yang sebenarnya cukup banyak, sebenarnya). 'Diktator yang baik hati' dari Python, Guido van Rossum, berpendapat bahwa pemrograman akan menjadi keterampilan penting di tahun-tahun mendatang, tetapi keterampilan pengembangan perangkat lunak tidak akan, dalam hal apapun. Sebagian besar non-pengembang menulis kode untuk membuangnya (pengembang juga sering melakukan ini). Masalahnya pemrograman sebagai karier mencakup lebih banyak hal daripada pemrograman dan penting untuk meluruskan prioritas Anda.

Paling penting: Pastikan untuk menyukai pemrograman, bukan hanya menyukainya. Ini lebih dari 9 hingga 5 pekerjaan, ini untuk merangkul filosofi pembelajaran konstan : sebagian besar insinyur dilatih selama BS atau MSc mereka dan tidak melihat perubahan signifikan dalam bidang keahlian mereka. Karier seumur hidup dalam pemrograman akan membuat Anda melihat setidaknya 10 perubahan paradigma (bukan hanya bahasa, tetapi alat, DB, dll), sehingga Anda lebih siap (dan mau) untuk menerima ini.

K.Steff
sumber
+1 untuk "filsafat pembelajaran konstan". Pemrograman sebagian besar tentang belajar dan meningkatkan setiap hari. Jika Anda suka melakukan 2 hal itu, maka Anda mungkin akan memiliki pengalaman yang baik dan berhasil.
B Seven
1

Saya pikir Anda berada dalam posisi yang baik untuk melakukan ini.

Sebagian besar karir saya, saya telah sangat tertanam dalam sisi teknis hal, namun, selama bertahun-tahun mengamati banyak proyek berhasil atau gagal saya sampai pada kesimpulan: -

Jika Anda tidak memahami pengguna bisnis Anda dan persyaratan mereka, proyek Anda akan gagal.

Saya belum pernah melihat pengecualian untuk aturan ini dan tidak ada jumlah uang, perangkat keras atau kejeniusan pemrograman yang tampaknya membuat perbedaan. Proyek sebenarnya dengan pemahaman yang baik tentang persyaratan dapat gagal karena perangkat keras, perangkat lunak yang dipilih dengan buruk, kurangnya anggaran atau kurangnya keterampilan - tetapi sebagian besar proyek-proyek ini dapat atau bisa diselamatkan.

Jadi landasan Anda yang baik dalam BA dan persyaratan akan memberi Anda perspektif yang mungkin tidak dimiliki oleh beberapa perguruan tinggi teknologi Anda yang lebih berbakat, sisanya yang dapat Anda pelajari.

James Anderson
sumber