Saya telah berada di posisi yang sama dengan Anda, dan saya memilih jalan 'perguruan tinggi kacau' yang Anda bicarakan. Saya menyukai pengembangan perangkat lunak, hobi C ++ di atas kursus pemrograman HS dasar, dan impian. Sekarang saya adalah pengembang profesional, jadi saya akan memberi Anda pengalaman saya.
Setelah kuliah selama 1 tahun (saya memiliki beasiswa penuh untuk teater teknis), saya menemukan bahwa saya lebih menyukai perangkat lunak daripada membangun gedung.
Tahun 1- Saya memulai 'hal saya sendiri' yang terdiri dari dukungan desktop untuk membayar sewa, dan pengembangan. Mengembangkan apa pun yang saya bisa hasilkan, untuk siapa pun yang menginginkannya, dengan harga yang sangat murah. Melihat ke belakang saya mungkin melakukan aplikasi $ 20.000 untuk $ 1.000. Memulai sendiri benar-benar menyebalkan karena meskipun Anda memiliki pengalaman untuk mengetahui itu adalah aplikasi $ 20K, Anda tidak memiliki kredibilitas untuk memintanya. Dan yang terburuk, saya tidak tahu apa yang tidak saya ketahui, dan tidak ada pengembang lain di sekitar saya. Saya membuat aplikasi yang merupakan mimpi buruk pemeliharaan. Saya tidak memiliki keahlian dalam arsitektur atau pola desain, jadi pada dasarnya saya membuat hal-hal yang meledak dan melakukan dukungan jaringan untuk membayar tagihan. Banyak Taco Bell, dicampur dengan "well, setidaknya saya tidak bekerja untuk pria itu". Saya punya beberapa impian aplikasi untuk ditulis dan keluar ke dunia,
Tahun 2 - Menjadi pengembang yang sedikit lebih baik dengan mempelajari apa yang tidak boleh dilakukan dan menonton hal-hal meledak di wajah saya. Nyaris tidak mendapatkan dukungan desktop, server pembelajaran, dan pembuatan situs web. Pasti lebih mudah daripada ini bekerja untuk pria itu, tapi saya tidak punya portofolio nyata jadi, tekan terus.
Tahun ke 3- Mulai memahami ini. Ketika saya menekan File> New Project, saya punya ide yang kabur tentang ke mana saya ingin pergi dan bagaimana membangun sesuatu. Masih memilih arsitektur yang salah, layanan web tampak agak keren, jadi mengapa tidak membangun SEMUA dengan itu? Perlu aplikasi desktop kalkulator? Saya akan membangun layanan web! Mulai menjemput beberapa klien dan menjadi orang IT dan beberapa proyek perangkat lunak di sepanjang jalan. Satu hal yang saya lakukan adalah membuat layanan Pencadangan di Luar Kantor menggunakan Layanan Web, jadi impian saya adalah menjadi 'Mozy' sementara semua orang masih menukar kaset. Broadband hanya menjadi hal yang biasa jadi saya berada di depan kurva, dan ini akan menjadi ide jutaan dolar saya. Tetapi layanan memiliki masalah (karena kurangnya keterampilan arsitektur),
Tahun 4 - Akhirnya, seorang pelanggan percaya pada saya untuk proyek jangka panjang. Saya berhasil melakukannya tanpa mengacau; kode tidak bagus tetapi berfungsi. Mulai terjebak pada tagihan, saya mulai bekerja dengan beberapa pengembang lain (berpura-pura sampai Anda membuatnya, kan?) Dan bahkan menjawab beberapa pertanyaan Exchange Expert. Oh ya.
Tahun 5 - Jika Anda belum menyadarinya sekarang, mimpi-mimpi di Tahun 1 itu masih belum ditulis, jadi itu mulai menjadi sedikit menyedihkan. Saya memiliki portofolio barang yang berhasil saya tulis dengan baik, mendapatkan momentum yang layak, dan basis klien yang terhormat. Masih belum benar-benar tahu apa yang tidak saya ketahui, dan mencapai titik impas.
Tahun 5 - 8 - Saya akan menggabungkan ini karena ini lebih dari sama "melakukan proyek, belajar sedikit pada masing-masing, membawa pengalaman itu ke yang berikutnya". Hari ini di pertengahan Tahun 8, dan baru satu atau dua tahun terakhir saya menjadi pengembang yang baik. Mimpi-mimpi itu di Tahun 1 telah diciptakan berkali-kali oleh orang lain. Jika Anda tidak menebak, saya tidak membuat Mozy.
Sepanjang jalan saya punya mimpi baru dan ide-ide baru, dan ada yang bagus, ada yang mengerikan. Saya sekarang memiliki keterampilan untuk mewujudkannya, dan beberapa di antaranya terjadi, dan ini mengasyikkan. Namun, saya punya perasaan jika saya akan melakukan hal-hal berbeda saya bisa mempersingkat perjalanan ini sedikit.
Saya tidak dapat berbicara tentang betapa berbedanya perguruan tinggi mengubah perjalanan ini; Saya akan meninggalkan itu kepada orang lain di utas ini. Tetapi nasihat yang akan saya berikan:
- Anda harus bekerja dengan pengembang lain. Saya tidak menyadari betapa pentingnya hal ini. Anda tidak tahu apa yang tidak Anda ketahui sampai Anda melihat kode orang lain atau mendapatkan ulasan kode yang mengerikan.
- Gagal sebelum Anda memiliki tanggung jawab utama. Jika Anda benar-benar ingin keluar sendiri, cobalah untuk melakukannya sebelum Anda menikah, memiliki pembayaran rumah, anak-anak, dll. Anda akan gagal dan Anda akan gagal berkali-kali. Biasakan dan hargai karena ini adalah pengalaman terbaik yang pernah ada. Tetapi ketika aplikasi pembunuh yang baru saja Anda habiskan semua waktu dan uang Anda tidak memiliki satu pelanggan, itu jauh lebih mudah untuk pulih ketika itu hanya Anda.
- Sama sekali tidak ada yang salah dengan bootstrap. Jika Anda memiliki keterampilan jaringan, bekerja di Pusat Operasi Jaringan atau help desk (sesuatu dalam bidang TI), dan bekerja untuk menjadi pengembang yang lebih baik di luar jam kerja dan di akhir pekan. Buat koneksi dengan orang-orang di pekerjaan nyata. Anda akan membutuhkannya nanti.
- Pastikan 125% Anda MENYUKAI pengembangan perangkat lunak. Semangat untuk perangkat lunak datang sebelum bagian 'jutawan', bukan sebaliknya. Jika Anda tidak memiliki hasrat untuk ini, atau hati Anda tidak mulai berdetak lebih cepat ketika Anda menekan Proyek Baru, lakukan sesuatu yang lain dan simpan ini sebagai hobi.
Saya yakin saya bisa melanjutkan, tetapi lucunya saya melihat pertanyaan ini saat mengerjakan salah satu mimpi itu dan harus menjawab yang ini. :) Semoga berhasil.