Saya lulus dengan gelar Ilmu Komputer tetapi saya melihat situs web seperti Stack Overflow dan mesin pencari seperti Google dan tidak tahu di mana saya bahkan mulai menulis sesuatu seperti itu. Selama satu musim panas saya memang memiliki kesempatan untuk bekerja sebagai pengembang iPhone, tetapi saya merasa seperti saya kebanyakan menempelkan perpustakaan yang ditulis orang lain dengan sedikit pemahaman tentang mekanisme yang terjadi di bawah tenda.
Saya mencoba meningkatkan pengetahuan saya dengan mempelajari algoritma, tetapi ini adalah proses yang panjang dan menyakitkan. Saya menemukan algoritma sulit dan pada tingkat saya belajar satu dekade akan berlalu sebelum saya akan menguasai materi dalam buku ini. Mengingat situasi saya saat ini, saya telah menghabiskan satu bulan mencari kerja tetapi keterampilan saya (C, Python, Objective-C) relatif dangkal dan tidak begitu diinginkan di pasar lokal, di mana C #, Java, dan pengembangan web jauh lebih tinggi permintaan. Itu bukan untuk mengatakan bahwa peluang C dan Python tidak ada tetapi mereka cenderung menuntut 3+ tahun pengalaman yang tidak saya miliki. IPK saya OK (3.0) tetapi tidak cukup tinggi untuk diterapkan pada perusahaan besar seperti IBM atau pengembalian untuk studi pascasarjana.
Pada dasarnya saya lulus dengan gelar Ilmu Komputer tetapi saya tidak merasa seperti saya telah belajar cara memprogram. Saya berpikir bahwa bergabung dengan sebuah perusahaan dan pemrograman penuh waktu akan memberi saya kesempatan untuk mengembangkan keterampilan saya dan belajar dari mereka yang lebih berpengalaman daripada saya sendiri, tetapi saya berjuang untuk mencari pekerjaan dan mulai merasa benar-benar frustrasi.
Saya akan menggunakan jaring saya lebih lebar dan melihat ke luar kota tempat saya dibesarkan, tetapi apa yang orang lain dalam situasi serupa coba lakukan? Saya sudah bekerja keras tetapi tidak memiliki kepercayaan diri untuk keluar sendiri dan menulis aplikasi sendiri. (Yaitu, menjadi pengembang indie di pasar aplikasi iPhone.) Jika tidak ada yang muncul, saya perlu mempertimbangkan untuk meningkatkan dan mempelajari keterampilan yang lebih populer atau mencoba sesuatu yang sedikit terkait seperti IT, tetapi mengingat semua upaya yang saya lakukan yang terasa seperti copping out.
Sementara saya mengerti mengapa Anda merasa ini bukan "pemrograman nyata", kenyataannya adalah pekerjaan integrasi membentuk persentase signifikan dari beban kerja khas untuk seorang programmer perusahaan. Pengalaman Anda mungkin sedikit lebih berharga daripada yang Anda pikirkan :)
sumber
Pertama, terima kasih atas pertanyaan yang sangat jujur. Ada sejumlah cara untuk mengatasi masalah yang dihadapi. Berikut adalah beberapa tips, yang saya anggap sangat membantu bagi saya di masa lalu dan masih terus menggunakannya untuk memperluas pengetahuan saya.
Pelajari, Pelajari, dan Belajar lagi. Ini mungkin tip paling penting yang bisa saya berikan kepada Anda. Jangan pernah berhenti belajar . Mengetahui satu bahasa itu baik, mengetahui banyak bahasa bahkan lebih baik. Memiliki pengetahuan bahasa lain akan membuat Anda menjadi programmer yang lebih baik dan akan membuatnya lebih mudah untuk menangani tugas-tugas tertentu dan akan membantu Anda memperoleh pengetahuan yang lebih baik tentang struktur data umum.
Mulai dari yang kecil .
Mulai proyek hobi di waktu luang Anda. Jangan lakukan sesuatu yang bisa Anda lakukan dengan cukup mudah. Ambil sebuah proyek di mana Anda tidak tahu harus mulai dari mana. Lemparkan diri Anda ke ujung yang dalam. Manfaat dari ini adalah bahwa Anda akan mempelajari hal-hal yang tidak pernah Anda ketahui ada dan ketika Anda menyelesaikannya, Anda akan merasakan kebanggaan dan kepuasan yang luar biasa. Inilah yang membuat saya terus maju.
Miliki hasrat yang tulus untuk apa yang Anda lakukan. Meskipun orang akan tidak setuju dengan saya tentang hal ini. Saya tidak percaya Anda bisa unggul dalam bidang ini jika Anda hanya menganggapnya sebagai pekerjaan 9-5. Harus ada hasrat untuk melakukannya.
Bantu orang lain di SO! Cara terbaik untuk memahami adalah mencoba mengajarkannya kepada orang lain.
Pelajari program orang lain dan coba cari tahu cara kerjanya, kemudian terapkan teknik serupa di program Anda sendiri. Cobalah untuk membacanya dan mendapatkan pemahaman tentang itu, kemudian lakukan sendiri berdasarkan pemahaman itu, daripada menyalin dan menempel.
Terus lakukan itu . Kadang-kadang hal itu bisa sangat membuat frustrasi, tetapi sangat bermanfaat ketika selesai. Jika Anda tidak memahami sesuatu, istirahatlah, jernihkan pikiran Anda dan coba lagi. Tanya kami di SO! Kami adalah sekelompok yang bersedia :)
Jangan pernah berhenti mempelajari teknologi baru.
Baca beberapa buku. Saya mengerti sebagai seorang siswa, Anda akan melakukan banyak membaca. Berikut adalah beberapa buku praktis yang mungkin berguna bagi Anda ... semoga - Programmer Pragmatik: Dari Journeyman hingga Master - Kode Lengkap: Buku Pegangan Praktis untuk Pembangunan Perangkat Lunak
sumber
Mulai proyek pribadi. Masalahnya dengan sekolah adalah hal paling rumit yang Anda lakukan di sana adalah proyek yang memakan waktu 15 minggu hingga setahun dan melibatkan beberapa orang lain. Domain masalahnya dipahami dengan baik (dosen Anda tidak memberikan tugas apa pun yang tidak sesuai dengan semester Anda.) Ini bukan kemewahan yang diberikan dunia nyata.
Jika Anda harus melakukan sesuatu yang besar, mulai dari awal hingga akhir, yang bisa membuat Anda bersemangat, otak Anda akan mulai menyelimuti prosesnya. Selama ini hanya karier dan Anda tidak memiliki cinta untuk itu, Anda masih akan merasa seperti belum berhasil.
sumber
sumber
Saya tidak dapat membantu dengan situasi pekerjaan Anda, tetapi saya harap saya dapat membantu Anda mengembangkan keterampilan Anda dan juga memasukkan perasaan Anda tentang keterampilan Anda sendiri ke dalam perspektif.
Mungkin saja instruktur Anda merasa malu. Mungkin juga perasaan Anda tentang tidak mengetahui cara memprogram adalah alami dan sesuai untuk tahap kehidupan dan pendidikan Anda ini. Berikut adalah beberapa ide yang dapat membantu:
Banyak majikan tidak peduli apa program yang ada di transkrip Anda atau bahkan apa IPK Anda. Sebaliknya mereka ingin tahu apa yang dapat Anda lakukan, dan terutama apa yang telah Anda bangun. Untuk pekerjaan yang baik, apa yang Anda buat lebih penting daripada teknologi (C, C #, apa pun yang Anda miliki) di resume Anda.
Jika Anda tidak mendapatkan kesempatan untuk membangun sejumlah proyek menarik selama masa pendidikan Anda, maluilah instruktur Anda. Tetapi Anda dapat membangun proyek itu sekarang. Telusuri situs web untuk masalah yang menarik. Siswa semester dua kami baru saja menyelesaikan "Pencarian Lagu" —kami menarik sejumlah besar lirik untuk situs web, mereka membuat indeks terbalik, Anda memasukkannya kata kunci dan itu menunjukkan Anda lirik yang mengandung kata-kata itu, dalam konteks. Ini bukan Google tetapi dibuat dengan prinsip yang sama dengan struktur data yang serupa, dan Anda dapat mulai membangunnya sekarang.
Mungkin Anda belum bekerja keras untuk masalah yang tepat? Ada baiknya mencari masalah itu
Jika Anda mengatasi masalah semacam ini, Anda belajar membuat pilihan, hidup dengan konsekuensinya, dan jika semuanya tidak berhasil, untuk kembali dan meninjau kembali pilihan Anda. Anda akan belajar lebih banyak dari kegagalan Anda daripada dari kesuksesan Anda, tetapi Anda akan mendapatkan lebih banyak kepercayaan dari kesuksesan Anda daripada kegagalan Anda.
Masalah bagus — dengan properti seperti yang saya sebutkan di atas — seperti emas, kecuali jika Anda mendapat masalah baik dari orang lain, mereka tidak kehilangan apa-apa. Telusuri web untuk mencari masalah yang baik, dan berlatih, berlatih, berlatih. Jika masalah Euler adalah di mana Anda harus memulai, baiklah mereka baik-baik saja untuk pemula. Tetapi segera Anda akan ingin membangun proyek-proyek kecil atau menengah yang Anda pikir sangat keren . Jika Anda bersemangat tentang sesuatu yang Anda buat, itu akan mengesankan calon majikan. Jika Anda tidak bersemangat, sulit untuk mempekerjakan Anda.
Peter Norvig melaporkan bahwa perlu sepuluh tahun untuk menjadi seorang ahli . Tentu saja Anda tidak merasa seperti seorang ahli setelah mendapatkan gelar Anda. Saya akan memberitahu Anda tentang sebuah rahasia kecil: Sebagian besar anggota fakultas Harvard (saya adalah satu selama delapan tahun) merasa seolah-olah mereka tidak benar-benar termasuk di Harvard, mereka tidak cukup tahu, dan pasti ada beberapa kesalahan yang mereka dipekerjakan. Perasaan semacam ini sangat, sangat umum bagi orang yang melakukan transisi dari sekolah ke tempat kerja, atau dari satu jenis pekerjaan ke pekerjaan lainnya. Begitu umum ada nama untuk itu: "sindrom penipu."
Meskipun Anda memiliki gelar Anda, universitas Anda masih akan berbicara dengan Anda. Jika Anda memiliki profesor yang sangat baik, mereka mungkin masih peduli dengan Anda. Mereka tentu peduli bahwa salah satu siswa mereka telah lulus dengan nilai B rata-rata dan merasa dia belum menguasai keterampilan dasar perdagangannya. Jadi, cari satu atau dua profesor yang paling bersemangat dan paling simpatik dari program Anda, dan dapatkan bantuan untuk menemukan masalah yang baik. Kemudian tempatkan diri Anda bertanggung jawab atas keterampilan Anda, pengetahuan Anda, dan perasaan Anda tentang mereka. Bangun sesuatu yang kecil setiap hari, dan jangan buang waktu Anda yang berharga untuk hal-hal yang tidak terlalu keren. Akhirnya, saya berjanji, Anda akan menangkap kembali rasa senang tentang pemrograman, dan setelah itu, Anda akan dapat membangun kepercayaan diri sendiri.
sumber
Ada adegan di Law & Order lama di mana seorang DA mengeluh bahwa dia tidak belajar apa-apa tentang bagaimana melakukan pekerjaannya di sekolah hukum, bahwa dia tidak belajar apa-apa tentang dunia nyata. Profesor yang kepadanya dia mengeluh menjawab, "Ini sekolah hukum, bukan sekolah pengacara."
Hal yang sama berlaku untuk ilmu komputer. Mungkin Anda tidak belajar bagaimana berkontribusi langsung ke beberapa proyek yang Anda lihat online, tetapi Anda mungkin mengembangkan fondasi yang Anda butuhkan untuk berhasil dalam jangka panjang.
Pertama, dapatkan pekerjaan, pekerjaan apa saja. Menjadi mandiri. Khususnya dalam perekonomian saat ini, saya tidak akan pernah menyalahkan kandidat untuk bekerja di toko buku atau apa pun sementara mereka mencari pekerjaan yang lebih tepat. Saya punya pertanyaan untuk orang-orang yang duduk diam melakukan apa-apa.
Temukan proyek, proyek apa saja. Ada banyak proyek yang berlaku di github.com misalnya.
Kabar baiknya adalah bahwa jauh lebih cepat daripada yang Anda pikirkan, tidak ada yang akan peduli di mana Anda pergi ke sekolah, apa IPK Anda, atau apa pun seperti itu.
Tetap bertahan! Mungkin sulit, tetapi suatu hari Anda akan senang dengan pengalaman itu.
sumber
Sudahkah Anda melihat ProjectEuler ? Saya belajar sendiri Python dengan melakukan masalah di situs itu. :] Jika Anda setelah mempelajari Java atau C #, Anda dapat mencobanya. Juga, saya sarankan Anda mencoba pemrograman GUI juga.
Sunting:
Berikut ini adalah topik hebat tentang SO untuk banyak tautan yang dapat Anda lihat untuk praktik pengkodean:
https://stackoverflow.com/questions/662283/websites-like-projecteuler-net
sumber
Saya menduga dari nama pengguna Anda bahwa Anda seorang wanita ... Jika tidak, jangan abaikan ini, atau sesuaikan dengan sudut pandang Anda sendiri.
Dalam pengalaman saya, wanita yang lulus dari perguruan tinggi dalam ilmu komputer menganggap diri mereka jauh lebih tidak kompeten daripada rekan-rekan pria mereka dengan keterampilan yang sama. Orang mungkin mengatakan bahwa perempuan (atau, tepatnya, perempuan yang saya kenal) lebih jujur dibandingkan dengan kekurangan mereka sendiri, tetapi pada akhirnya, mereka lebih sulit menjual diri kepada majikan.
(Aku menghabiskan sebagian besar sekolah pascasarjana dengan perasaan gagal total dibandingkan teman-teman sebayaku, dan akhirnya lulus dari kelasku.)
Jadi saran saya adalah tetap jujur pada diri sendiri dan terus bekerja keras untuk mengembangkan keterampilan Anda. Tetapi jangan meremehkan apa yang Anda tahu ketika mencari pekerjaan, dan jangan menahan diri dari melamar pekerjaan "mencapai".
Ditambahkan sebagai renungan:
sumber
Banyak orang mengatakan bahwa Anda harus memulai proyek pribadi. Menurut pendapat saya, ini adalah saran terbaik di sini. Saya akan menambahkan beberapa hal yang tidak saya lihat ketika saya membaca jawaban yang lain ...
Pilih sesuatu di daerah yang Anda bergairah tentang . Tempat terbaik untuk menemukan ini mungkin dalam minat Anda di luar ilmu komputer. Itu bisa berupa nirlaba tempat Anda terlibat, hobi yang Anda sukai, olahraga yang Anda lakukan.
Temukan kolaborator . Pengodean sendiri itu sulit, jadi hal lain yang akan sangat membantu adalah jika Anda menemukan seorang teman untuk berkolaborasi dengan Anda dalam proyek ini. Ini membuatnya jauh lebih menyenangkan dan membuat Anda tetap termotivasi. Dalam posting blog terbarunya, Jeff Attwood berbicara tentang hal ini dalam pengalamannya membangun SO. http://www.codinghorror.com/blog/2010/05/on-working-remotely.html
Pilih sesuatu yang sederhana (awalnya) . Proyek yang ideal akan dimulai dengan sesuatu yang kecil. Jika tujuan keluar dari gerbang terlalu ambisius maka itu akan menjadi terlalu menakutkan. Setelah melakukan pengembangan untuk PC, telepon, sistem tertanam dan web, saya akan mengatakan bahwa web adalah tempat terbaik untuk mencari sesuatu yang dapat dicapai yang dapat segera mulai digunakan orang lain.
Jika proyek ini adalah kerja cinta yang Anda kerjakan dengan senang hati jauh ke dalam malam, dan kemudian melompat dari tempat tidur keesokan paginya untuk kembali ke sana, maka hal-hal baik akan mengikuti. Anda akan belajar, kepercayaan diri akan tumbuh. Dan begitu Anda memiliki sesuatu di luar sana yang dapat dilihat orang, itu menjadi awal dari portofolio Anda. Tidak ada yang mengesankan programmer dan manajer yang (layak) mempekerjakan selain sesuatu yang nyata.
sumber
Beberapa komentar, dari sudut pandang seseorang yang telah menjadi pengembang selama 20+ tahun:
Mereka adalah produk tim, sebagian besar dibangun di perpustakaan dan infrastruktur (.net, java, asp.net, dll) yang diproduksi oleh tim lain, dan didukung oleh pengalaman dan sumber daya. Bahwa Anda, secara individu, tidak tahu harus mulai dari mana untuk melakukan hal yang sama benar-benar dapat dimengerti. Jangan khawatir tentang ini.
Banyak pekerjaan pengembangan sekarang seperti itu, saya khawatir. Tetapi ada banyak ruang untuk melakukan pekerjaan menarik 'di atas' perpustakaan itu. Dan jangan khawatir tentang kesulitan menemukan algoritme - Anda hampir pasti tidak perlu menerapkan quicksort, daftar tertaut, atau apa pun selama karier Anda. Untuk itulah perpustakaan digunakan.
Mengetahui cara memprogram, dan mengetahui cara berfungsi sebagai pengembang profesional adalah dua hal yang sangat berbeda. Anda hanya perlu beberapa pengalaman, lebih disukai bekerja dengan pengembang lain di sistem dunia nyata. Cobalah untuk menambahkan C # atau Java ke perangkat Anda - tidak ada banyak perbedaan di antara mereka sehingga pengetahuan dapat ditransfer. Berhati-hatilah untuk tidak terlalu terspesialisasi. Anda mungkin harus menerima bahwa Anda tidak akan segera mendapatkan banyak uang, jadi jaga agar biaya pribadi tetap rendah untuk sementara waktu jika Anda bisa.
Mulailah bekerja pada proyek yang Anda sebutkan, tetapi selain meningkatkan pengetahuan pemrograman Anda, coba gunakan itu adalah cara untuk mendapatkan pengalaman keterampilan terkait seperti kontrol versi, pengujian unit dan integrasi, dan bahkan menulis dokumentasi sederhana. Keterampilan-keterampilan semacam inilah yang membedakan pengembang dari seorang programmer, dan merupakan karya yang bagus untuk calon pemberi kerja. Ada banyak alat gratis yang tersedia (edisi ekspres dari Visual Studio, github, nunit, aplikasi Google) yang dapat membantu.
Dari apa yang Anda tulis, kedengarannya seperti gelar CS Anda telah mengajari Anda cara berpikir tentang masalah teknis. Anda juga tampaknya memiliki tingkat pengetahuan diri yang baik, termasuk tentang batasan dan pengalaman teknis Anda saat ini. Gunakan ini sebagai keuntungan. Sekarang bukan waktu yang tepat untuk memasuki pasar kerja, tetapi jika Anda bekerja keras, Anda akan baik-baik saja. Jangan khawatir, belajar, dapatkan pengalaman, tetap up-to-date, coba lakukan hal-hal yang Anda sukai.
Semoga berhasil!
sumber
Pemrograman tidak semua tentang pemahaman Anda tentang algoritma atau IPK Anda selama kuliah. Pemrograman adalah tentang memiliki kemampuan untuk berpikir di luar kotak, keinginan dan kemauan untuk belajar dan yang paling penting, kreativitas.
Pada catatan pribadi, saya baru saja lulus kuliah Mei lalu dan memiliki IPK yang buruk. Saya lebih fokus pada kehidupan sosial saya daripada akademisi dan saya membayar harganya.
Namun, selama wawancara kerja baru-baru ini di luar perguruan tinggi, ( yang membutuhkan waktu kurang dari setahun untuk mendarat ), saya memamerkan kreativitas, hasrat saya untuk belajar dan keterampilan analitis, yang telah membantu saya mendapatkan pekerjaan.
sumber
Catatan: Saya berharap posting ini akan diturunkan. Ini bukan jawaban untuk poster asli tetapi pengamatan pada sebagian besar komentar yang saya baca di atas.
Jawaban yang saya baca di atas benar-benar membuat saya takut. Tampaknya ada perasaan yang hampir universal bahwa derajat comp.sci tidak berguna atau tidak relevan, atau tidak mengajarkan apa pun kepada Anda. Apakah derajat comp.sci benar-benar menjadi seburuk itu, atau apakah ini semua hanya hawa panas dari pengembang tanpa gelar yang berusaha membenarkan kekurangan mereka?
Serius orang, apa yang mereka ajarkan di universitas saat ini? Ketika Anda melakukan gelar CS (setidaknya ketika saya masih mahasiswa) pada saat Anda lulus, Anda akan memiliki pemahaman yang baik tentang desain kompiler, comp. kompleksitas, metode formal dan logika, kebun binatang seluruh struktur data dan algoritma, riset operasi dasar (LP dll), basis data, kranografi dan keamanan, algoritma penjadwalan, protokol jaringan, pengembangan internet, desain OS dan kernel, algoritma paralel dan struktur data, algoritma numerik dan banyak lagi. Keseluruhan banyak biasanya diisi oleh proyek pemrograman besar yang merupakan bagian dari disertasi akhir. Jangan bilang bahwa lulusan comp.sci tidak mendapatkan cukup program latihan.
Saya juga menghargai kenyataan bahwa beberapa derajat comp.sci yang lebih tradisional menghilangkan beberapa aspek dari siklus pengembangan perangkat lunak, Anda mungkin tidak akan mendengar banyak pembicaraan tentang TDD, pengujian unit. Tapi mari kita jujur secara brutal: itu bukan ilmu roket, kan? Anda juga tidak akan mendengar tentang SCRUM atau analisis titik fungsi. Mengajar kursus terperinci tentang masalah-masalah dasar seperti itu akan sangat berlebihan, meskipun banyak gelar saat ini memiliki kursus tentang desain sistem di mana mereka memberikan siswa gagasan tentang bagaimana hal-hal ini bekerja.
Memang, Anda mungkin tidak menjadi ahli dalam .NET, PHP atau standar industri lainnya saat ini tetapi itu tidak relevan. Dalam 5-10 tahun waktu bahasa pilihan akan berubah. Hanya karena Anda belajar mengemudi di Peugeot bukan berarti Anda tidak seharusnya bisa mengendarai Fiat, dan hal yang sama berlaku untuk bahasa pemrograman. Perlu latihan beberapa bulan dengan beberapa buku bagus untuk bisa bekerja dalam bahasa apa pun.
Tentunya jika ada yang membuang-buang waktu ini "sertifikasi" mahal ini yang pada dasarnya melibatkan duduk untuk ujian pilihan ganda elektronik dan bertanya tentang hal-hal kecil (biasanya tidak berguna) dari arsitektur atau bahasa tertentu. Mereka cenderung mengukur kompetensi programmer dengan pengetahuannya tentang kasus pemrograman patologis tertentu.
Saya telah bekerja di industri TI di berbagai perusahaan dan saya juga terlibat dalam proses wawancara untuk pengembang perangkat lunak lain. Kami memang mengajukan beberapa pertanyaan fizzbuzz yang biasa, tetapi ada yang ditujukan terutama pada orang-orang tanpa pelatihan formal atau peserta pelatihan. Saya belum pernah bertemu lulusan comp.sci yang tidak mampu menjawab pertanyaan pemrograman dasar dan tidak begitu mendasar.
Catatan Saya tinggal di Eropa dan hanya tahu tentang gelar universitas Eropa. Namun saya cukup yakin bahwa standar universitas di AS jauh lebih tinggi daripada di Uni Eropa.
sumber
Kerendahan hati Anda akan melayani Anda dengan baik. The Pikiran Pemula ini bermanfaat untuk semua jenis pembelajaran, tidak peduli berapa banyak pendidikan dan pengalaman yang kita miliki.
Bekerja melalui latihan, seperti yang disarankan orang lain - di Project Euler dan di tempat lain.
Cari solusi untuk membantu orang lain di SO. Latihan memahami pertanyaan, menentukan apa yang Anda tahu dapat diterapkan, dan akhirnya mengartikulasikan jawaban akan membantu membangun kepercayaan diri Anda, saat latihan membangun keterampilan Anda.
Tetap dengan itu; kamu akan baik-baik saja.
sumber
Lulus dengan gelar sarjana sains tidak lebih membuat Anda seorang programmer yang hebat daripada lulus dari program musik membuat Anda menjadi musisi yang hebat.
Tidak ada pengganti untuk latihan, latihan, latihan dan pengalaman. Program 8 jam sehari dan dalam 5 tahun Anda mungkin memiliki pemahaman yang kurang saat ini.
sumber
Pertanyaan yang jujur, jawaban yang bagus - Aku akan berpadu sebentar :)
Jawabannya sejauh ini membuat saya sedikit tertawa - mereka berpotensi merayakan keagungan kita sendiri secara ironis. Saya datang ke SO karena dokumentasi dan bug dalam kerangka kerja yang buruk. Jelas ada emas lain di sini tetapi layak untuk mempertahankan kerendahan hati Anda, bahkan jika Anda benar-benar menjadi dev yang hebat - dan saya katakan itu dari perspektif kesombongan pribadi sejarah (?).
Ingatlah bahwa Anda mungkin tidak (mungkin tidak) dipekerjakan oleh teknisi, tetapi orang-orang dan manajer SDM yang lebih baik akan menggunakan teknisi untuk menilai Anda.
Pengusaha memiliki rencana untuk karyawan mereka, coba dan rasakan rencana itu sepanjang jalan dan masukkan diri Anda ke dalamnya dengan hormat, mungkin memberikannya sedikit perubahan dan peningkatan pribadi. Kesulitan dan peluang dapat muncul ketika majikan tidak benar-benar memiliki rencana khusus - mengajukan pertanyaan yang bagus dan membantu mereka menentukan rencana dapat benar-benar membuat Anda bertahan dalam situasi ini.
Para pebisnis dapat (secara sah) paranoid tentang para dev yang melindungi mereka karena kita sering harus mengelola persepsi mereka sedikit untuk membantu mereka dengan keputusan yang tidak mereka pahami - dan saya mengatakan bahwa, dengan lidah di pipi, untuk menunjukkan kepada Anda perspektif TIDAK untuk memiliki atau mengembangkan rekan kerja non-teknologi Anda. Saya dengan rendah hati berpikir bahwa memahami bahwa ini sering merupakan inti dari hubungan antara teknologi dan non-teknologi adalah penting - dan sulit untuk dihindari, apa yang kita lakukan adalah tumpul.
Menjadi profesional, berpikiran terbuka, dan penuh hormat memang mendapatkan pekerjaan - jika Anda tidak tahu apa itu profesional, saya yakin ada tempat untuk menyelesaikannya di web - Saya berharap seseorang telah menunjukkan hal itu kepada saya ketika saya mulai. :)
Hal terakhir yang akan saya katakan adalah bahwa, ketika Anda menjadi lebih baik dalam pengembangan dan arsitektur, dan Anda sudah terdengar seperti Anda telah melangkah ke jalan ini, Anda mungkin menemukan kode profesional Anda dapat menjadi sangat tidak memuaskan, bahkan jika itu adalah solusi yang tepat.
Saya tidak yakin apa solusinya di sana, tetapi cobalah mencari jalan keluar dan jangan terlalu terlibat secara emosional dalam pekerjaan Anda, itu akan membantu Anda mengatur kecepatan diri sendiri dan menjalani kehidupan yang lebih baik - terutama berhati-hati saat mencoba melakukan upaya ekstra untuk membuat sesuatu yang "benar" - sering kali Anda akan menciptakan kerumitan bagi rekan kerja Anda dan Anda hampir tidak akan pernah bisa memasukkan jumlah waktu yang Anda butuhkan untuk menyadarinya dalam jangka waktu proyek Anda. Gejala dari hal ini adalah "menjadi gelap" - ketika Anda tidak ingin menjelaskan apa yang ingin Anda lakukan kepada siapa pun. Banyak dev terbaik dapat menjelaskan esensi apa yang mereka lakukan kepada orang awam - ini adalah keterampilan yang bagus untuk dipelajari dan saya merasa hal itu membebaskan secara intelektual untuk berlatih.
Heh, dan ketika memperkirakan, untuk mulai dengan, membagi tugas Anda menjadi bit, totalkan waktu dan kemudian gandakan (itu disebut, membagi, menaklukkan, berbaris rumah;)
Semoga berhasil! Saya meninggalkan sekolah dengan harapan menjadi instruktur ski dan akhirnya menjadi pemimpin dev. Saya yakin Anda akan melakukannya dengan baik apa pun yang akhirnya Anda lakukan juga.
sumber
Ya, itu cukup normal - sebagian besar sekolah, bahkan yang bergengsi, melakukan pekerjaan yang bagus untuk mengajar ilmu komputer dan pekerjaan yang mengerikan dalam pengembangan perangkat lunak pengajaran. Ini perlahan menjadi lebih baik, tetapi masih memiliki jalan panjang.
Bagaimanapun, sepertinya Anda melakukan sebagian besar hal yang benar:
sumber
Pertanyaan yang sangat bagus. Saya yakin ada banyak orang yang mengalami apa yang telah Anda jelaskan di semua lapisan masyarakat dan pasar kerja.
Pertama - jangan khawatir tentang hal-hal yang di luar kendali Anda. Anda tidak boleh stres atau bahkan berpikir tentang sekolah, apa yang Anda pelajari atau tidak pelajari atau seberapa baik Anda melakukannya secara akademis.
Kedua - mengkhususkan diri. Akan selalu ada permintaan bagi orang-orang yang benar-benar pandai dalam apa yang mereka lakukan bahkan jika apa yang mereka lakukan tidak jelas. Anda perlu memilih bahasa pemrograman favorit Anda dan memutuskan untuk benar-benar menguasai bahasa itu dan “menjadikannya milik Anda.” Anda sudah memiliki banyak nasihat bagus tentang cara meningkatkan keterampilan pemrograman tetapi pada akhirnya tidak ada yang sebanding dengan menemukan buku berwibawa tentang subjek dan mengunci diri di kamar Anda selama beberapa hari sementara Anda tidak melakukan apa pun kecuali membaca setiap halaman dan menulis setiap contoh yang diberikan buku itu.
Ketiga - iklankan diri Anda. Dalam sejarah ilmu komputer ini langkah ini tidak pernah semudah sekarang ini. Jawaban yang Anda berikan dan pertanyaan yang Anda ajukan pada SO adalah resume Anda. Gunakan itu sendiri untuk menjadi otoritas terkemuka di SO untuk bahasa yang Anda putuskan untuk kuasai. Bertanggung jawab atas segala pertanyaan yang datang melalui server ini dengan tag Anda di atasnya, bahkan jika itu berarti jam penelitian yang luas dan datang dengan jawaban terlambat. Cari arsip dan bacalah setiap pertanyaan yang pernah diajukan pada SO tentang topik Anda. Perbaiki informasi yang salah, berikan jawaban dan variasi Anda sendiri untuk jawaban, dan gabungkan beberapa jawaban yang ada menjadi satu jawaban yang lebih baik. Mengalami SO dengan aliran komentar, jawaban, dan suntingan Anda yang tak ada habisnya, harus menjadi raison d'etre Anda (ditambah kesenangan karena Anda mendapatkan poin reputasi).
Keempat - bekerja pada citra publik Anda. Percaya diri sangat penting untuk mendapatkan pekerjaan terbaik. Perusahaan menginginkan orang-orang yang merupakan rekan kerja, kolaborator, dan komunikator hebat. Jika Anda berpikir ini mungkin menjadi masalah, beri tahu teman-teman Anda bahwa Anda membutuhkan mereka untuk meningkatkan ego Anda dan menghujani Anda dengan pelengkap tanpa henti kemudian pergi ke perpustakaan setempat dan mengambil salah satunya .
sumber
Oke, jadi lihat berita hacker ini dan saya seperti "HOLY CRAP ITULAH AKU !!"
Jadi saya lulus Desember lalu dengan gelar CS dan merasa bahwa entah bagaimana saya berhasil lulus kelas dan mendapatkan gelar tanpa benar-benar mendapatkan itu. Rasanya seperti semua teman sekelas saya memiliki keterampilan pengkodean yang luar biasa, dan yang bisa saya lakukan hanyalah membuat program dasar Java. Mempelajari cara membuat kode dan menjadi pembuat kode yang baik hanya membutuhkan banyak waktu. Ada begitu banyak hal untuk dipelajari dan saran saya adalah untuk mengambil sedikit waktu. Anda akan belajar banyak hal saat melangkah. Seperti semua orang sedih, cara terbaik untuk belajar adalah dengan melakukan terutama dengan coding. Belum lagi ada begitu banyak tentang membangun aplikasi yang mereka bahkan tidak repot-repot bercerita tentang di sekolah. Jangan merasa buruk, ketahuilah bahwa ada banyak hal di luar sana untuk Anda pelajari, dan sadari bahwa akan butuh waktu untuk mempelajarinya.
Saya pikir Anda harus melihat melewati kota tempat Anda tumbuh dewasa. Ada banyak perusahaan di luar sana yang mempekerjakan lulusan CS, dan tidak semua dari mereka mengharuskan atau mengharapkan Anda untuk menjadi programmer hebat di luar sekolah. Ada banyak wawancara saya pergi di mana saya tidak ditanyai pertanyaan pengkodean (ada juga banyak yang meminta saya untuk menyelesaikan algoritma dan kode). Terapkan di perusahaan yang lebih mementingkan kemampuan Anda untuk belajar daripada apa yang sudah Anda ketahui (dalam pengalaman saya, perusahaan yang lebih besar lebih peduli tentang ini karena tidak akan terlalu memengaruhi mereka jika Anda tidak dapat langsung mengeluarkan kode).
Saya tidak tahu apakah pengkodean adalah sesuatu yang ingin Anda lakukan dan kejar, tetapi ada juga banyak pekerjaan yang non teknis yang memerlukan latar belakang teknis. Anda dapat melihat opsi-opsi itu.
Saya tidak akan fokus mempelajari seluk beluk satu bahasa seperti C # atau Java dan fokus pada prinsip-prinsip pemrograman. Anda harus dapat mentransfer keterampilan pengkodean yang baik dan menerapkannya dalam bahasa apa pun (ini penting untuk umur panjang dalam karir Anda .. Java tidak akan panas selamanya). Di sisi lain, mengetahui "keterampilan panas" dapat membantu mendapatkan pekerjaan. Keterampilan wawancara benar-benar penting. Ikuti setiap wawancara yang Anda dapatkan, meskipun itu hanya untuk latihan.
Bagaimanapun juga jangan berpikir perusahaan besar seperti IBM berada di luar jangkauan Anda. Saya merasakan hal yang sama seperti Anda beberapa bulan yang lalu, dan saya bekerja di IBM sekarang. IPK saya juga tidak terlalu bagus. Saya masih payah dalam pemrograman tetapi saya tahu saya akan menjadi lebih baik dengan waktu. Yakinlah dengan kemampuan Anda untuk belajar!
sumber
Wow, alangkah banyaknya jawabannya sebelum ini.
Bagaimana dengan tanggapan yang sama sekali berbeda ...
Mari kita membingkai ulang masalah Anda dalam hal menjadi manusia.
"Saya sudah lulus kelas konsepsi dan baru saja akan lahir. Ibuku akan dimahkotai dan aku akan dikirim besok pagi. Tapi ketika aku melihat atlet seperti Usain Bolt, aku berpikir" bagaimana aku bisa berlari seperti itu? cepat?".
Tetapi di sinilah Anda, Anda adalah manusia yang sepenuhnya matang, Anda telah lulus sekolah, Anda dapat berjalan, berbicara, dan jika Anda telah menyelesaikan kursus komputer, Anda cukup cerdas untuk melakukan booting. Tidak perlu malu.
Sekarang, apakah Usain Bolt lahir dan kemudian tiba-tiba mulai menempatkan waktu gila di trek, atau apakah itu sejumlah besar melanjutkan hidup, mencari tahu apa yang dia minati, diikuti oleh sejumlah besar aplikasi dan kemudian tiba-tiba " Bam! " dia ada di sana.
Lebih mungkin yang terakhir. Jadi, jangan menyusahkan diri sendiri karena tidak tahu apa yang seharusnya Anda lakukan. Butuh waktu untuk menentukan apa yang tepat untuk Anda. Itu untuk Anda , bukan apa yang dipikirkan orang tua Anda, bukan apa yang teman-teman Anda pikirkan. Apa yang tepat untukmu ? Apa yang menyalakan api Anda ? Apa yang membuat Anda berpikir * ya ini keren "bahkan ketika semua orang berpikir itu adalah celana.
Bukan tidak biasa untuk memulai (dan / atau) meninggalkan gelar Anda tanpa tahu apa yang ingin Anda lakukan.
Bagi saya, saya baik di sekolah di tingkat O (kualifikasi UK) tetapi saya tidak bisa peduli tentang tingkat A (diperlukan untuk masuk ke Universitas untuk melakukan gelar). Jadi saya pergi ke tempat yang lebih rendah untuk meraih gelar saya (dan sebagai hasilnya bukan gelar yang saya inginkan). Tapi saya bertahan (masih tidak tahu apa yang saya inginkan sebagai karier) dan belajar banyak tentang elektronik dan hal-hal yang kebanyakan orang tidak pernah pelajari. Selama ini saya lepas sebagai penulis game komputer.
Hasil akhirnya? Setelah mendapatkan gelar saya (dengan pujian) saya masuk ke pekerjaan dengan wawancara kerja dengan gaji yang lebih tinggi daripada mereka yang melakukan elektronik lurus dan saya tidak mengubah rambut saya atau mengenakan jas. Apa? Nah pada usia 23 tahun hal itu penting (melihat ke belakang sekarang, pada usia 44 tahun saya agak menertawakannya, tapi itulah kekudusan masa muda bagi Anda).
Perusahaan itu bangkrut dan kemudian saya mulai lebih serius. Tapi itu mungkin bukan untuk beberapa tahun sebelum saya tiba-tiba menemukan (secara tidak sengaja) apa yang benar-benar menarik minat saya. Ternyata menjadi alat perangkat lunak tingkat rendah. Seharusnya sudah jelas - semua game komputer yang saya tulis ditulis dalam pertemuan, saya selalu menyukai hal-hal tingkat rendah yang tidak bisa dilakukan orang lain. Tetapi untuk melihat itu sebagai masa depan, itu membutuhkan lebih banyak kedewasaan dan tidak mengejutkan bahwa itu tidak benar-benar terwujud hingga pertengahan 20-an.
Saya sering terkesan (dan kagum) bahwa anak muda, sering masih remaja, tampaknya tahu apa yang ingin mereka lakukan. Tetapi pertanyaan sebenarnya adalah, apakah mereka masih melakukannya pada usia 27? Atau apakah mereka mengubah haluan karena ide awal mereka tidak tepat untuk mereka?
Dalam hal bagaimana saya melakukan sesuatu yang mengesankan seperti ITU (apa pun itu, Google, SO)? Nah, Anda melakukannya dalam potongan-potongan, sama seperti Anda melakukan perangkat lunak dan segala hal lainnya dalam hidup. Anda mulai dengan dasar-dasarnya, dapatkan pengalaman di dalamnya. Jika Anda cukup baik, Anda melanjutkan dan mendapatkan lebih banyak pengalaman, dll, atau Anda meninggalkannya karena Anda menyadari bahwa Anda tidak cukup baik atau membosankan seperti itu (itulah sebabnya saya tidak melakukan komunikasi walaupun selalu seperti itu menjadi tambang emas. Bagi saya, itu membosankan!).
Dengan segala cara, lihat rekan-rekanmu, lihat tetua Anda, periksa pilihan dan minat mereka. Tapi periksa juga sendiri. Seringkali apa yang pada pandangan pertama tampak gila / gila sebenarnya adalah real deal. Melakukan sesuatu yang Anda temukan menarik (bukan hanya membayar tagihan) adalah SO jauh lebih bermanfaat.
Ya saya tahu ketika berusia 23 tahun Anda berfokus pada Audi TT dan flat keren dan dengan demikian tergoda oleh uang daripada pilihan karir yang masuk akal, tetapi serius di beberapa titik Anda akan menyadari bahwa mobil keren tidak semuanya rusak. menjadi - gadis itu harus menyukai Anda apa adanya, bukan apa yang Anda kendarai.
Serius, pikirkan itu. Solusi yang tidak terlalu keren mungkin hanya jawaban yang tepat.
sumber
Selain saran hebat yang diberikan oleh orang lain, saya akan menambahkan berpartisipasi dalam acara pengembang di daerah Anda. Cari pertemuan, grup pengguna, kamp bar, kamp kode, dll. Ini akan membantu Anda berjejaring dengan pengembang lain, mendapatkan prospek kerja, mengikuti teknologi baru, dan memberikan pandangan realistis pada tingkat keterampilan pengembang lain.
sumber
Ikuti aturan 10.000 jam.
Untuk menjadi master sesuatu, Anda perlu berlatih setidaknya 10.000 jam. Jadi habiskan 10.000 jam pemrograman, dan Anda akan menjadi masternya. Jika Anda belum menghabiskan 10.000 jam pemrograman dan Anda tidak merasa seperti master of the craft, jangan berkecil hati, hanya menghabiskan lebih banyak waktu coding.
Perhatikan juga bahwa mungkin Anda akan membutuhkan waktu sekitar 3 setengah tahun untuk melakukan ini jika Anda memprogram selama 8 jam sehari. Jika Anda hanya memprogram selama jam kerja, mungkin akan memakan waktu sekitar 4 tahun. Jika Anda belum menghabiskan waktu sebanyak ini selama pemrograman tingkat 3/4 tahun Anda, maka Anda mungkin tidak akan merasa seperti master.
sumber
Hanya beberapa pemikiran, kalau boleh.
Wendy mengatakan bahwa seseorang dapat lulus dengan gelar CS, namun memiliki sedikit gagasan tentang praktik pemrograman. Bukankah itu sangat menyusahkan, bahkan mengerikan? Ini sama menjengkelkannya dengan penipuan yang menenggelamkan departemen bahasa Inggris di tahun 70-an: sastra bukanlah kumpulan gagasan yang dapat dipahami dan diintegrasikan, melainkan sekelompok 'teks' yang harus diabstraksikan dan didekonstruksi oleh siswa ( http: / /www.answers.com/topic/deconstruction ). Syukurlah, pasang surut itu surut, mungkin karena instruktur yang terhanyut dalam ombaknya yang kurus sudah pensiun sekarang.
Bertahun-tahun yang lalu - beberapa dekade yang lalu - kursus pertama saya di CS mengajarkan saya bahasa assembly (sebelum C ditemukan) menggunakan masalah aktual seperti menyortir, hashing, dan mencari (dan, ya, rekursi). Kursus kedua saya mengajarkan desain dan realisasi kompiler kerja nyata. Saya adalah mahasiswa paruh waktu di MIT dan kedua kursus itu yang saya butuhkan untuk mulai mendapat bayaran sebagai programmer; dan menjadi agak produktif dua atau tiga bulan kemudian.
Jadi pagi ini, mendengar teriakan Wendy, saya berpikir bahwa pasti MIT, dari semua tempat, tidak dapat mencairkan penawarannya dan menipu siswa-siswanya dengan (dalam konteks praktik pemrograman) omong kosong yang tidak berguna. Tetapi ketika saya melihat kurikulum MIT EE / CS, saya melihat bahwa itulah yang terjadi:
http://student.mit.edu/catalog/m6a.html
Saya khususnya memperhatikan bahwa departemen menggunakan Python sebagai bahasa pengajar! Maksudku, sungguh! Sepertinya gelar CS di MIT berarti memenuhi syarat siswa untuk menjadi guru CS di MIT. Bicara tentang rekursi!
Kemudian saya menemukan kontribusi ini untuk Coding Horror ( http://www.codinghorror.com/blog/2006/07/separating-programming-sheep-from-non-programming-goats.html ) dan saya pikir itu sangat penting. dari percakapan ini:
"Saya adalah orang yang terlambat dalam diskusi ini [tentang memprediksi keberhasilan dalam calon programmer], tetapi dalam pengalaman saya sebagai senior senior sarjana sarjana CS berusia 30 tahun, saya telah menemukan kelas pemrograman menjadi tidak berguna, dan kurang diajarkan sebagai Saya hanya pernah kuliah di community college dan kemudian University of Illinois di Chicago, tetapi kelas-kelas pemrogramannya adalah:
"1. Berorientasi objek, yang membuat siswa kurang atau tidak sama sekali memahami metode prosedural, dan
"2. Kelas guling. Kelas-kelas tersebut terutama terdiri dari deskripsi berbagai jenis masalah dan matematika di belakangnya, bukan ayntax dan struktur, yang orang disuruh hanya membaca buku.
"Kode hampir tidak secara langsung diakui sampai inti Struktur Data, dan kemudian masih tergantung pada instruktur mana yang Anda dapatkan, beberapa menjadi kode sangat ringan dan beberapa kode bagus. Anda bisa mengatakan bahwa itu adalah godaan besar bagi guru untuk menjadi kode cahaya pada titik ini, karena jika mereka berkonsentrasi pada kode, mereka juga harus berkonsentrasi pada pengajaran siswa yang telah mengikuti kursus ilmu komputer selama dua tahun bagaimana memprogram.
"Karena pengkodean adalah hobi bagi banyak anak muda, saya pikir lembaga pendidikan telah mengandalkan itu untuk menetapkan kurva belajar yang diharapkan, membuat orang yang memiliki sedikit atau tidak ada pengalaman pemrograman ketika mereka memasuki sekolah tidak punya pilihan selain curang seperti orang gila, menghabiskan semua waktu luang mereka mempelajari kode, atau beralih jurusan. Dan itu tidak selalu defisit dalam pemikiran abstrak dalam pengalaman saya, karena semua orang yang saya tahu yang drop out dari CS berakhir di Teknik Elektro, yang tidak ada artinya mengacungkan di bagian depan abstrak. Mereka masih tidak tahu cara memprogram, sambil mengerjakan matematika yang tidak bisa kukatakan. Kenangan yang paling absurd:
"1. Java sebagai bahasa pemrograman yang diperlukan. Saya tidak akan mem-bash Java di sini, tetapi bukankah menyenangkan bagi siswa untuk mempelajari pengumpulan sampah mereka sendiri? Dan bukankah pointer adalah hal yang baik untuk dipelajari," bahkan jika kita tidak pernah memutuskan untuk memprogram dalam bahasa dengan mereka lagi?
"2. Mengambil kelas inti pada teori sistem operasi, setelah dibanjiri dengan Jawa, dan menemukan itu di C (tentu saja) tanpa satu kelas C di kampus?
"Tentu saja, saya berusia tiga puluh tahun, dan juga salah satu dari orang-orang yang selalu diprogram, jadi saya tidak punya masalah, tetapi saya melihat banyak orang yang saya kenal lebih baik abstraksi daripada saya (dari kelas Kalkulus, DiffEQ, dan fisika sebelumnya) ) dan total penderitaan mereka dalam mencoba menyelesaikan program yang telah ditumpuk terhadap mereka. "
Hanya beberapa titik data tetapi, seperti yang orang lain katakan, menghantui.
- Pete
sumber
Pertama, bertahanlah di sana!
Kedua, berikut adalah beberapa hal yang membantu saya:
Ketiga, saya berada di kapal yang sama seperti Anda ketika saya lulus lagi, bertahan di sana dan terus mencari. Pekerjaan pertamamu di luar sana.
sumber
Sangat sedikit orang yang lulus disiplin apa pun menjadi ahli pada sesuatu yang mereka pelajari. Ilmu komputer sama sekali tidak istimewa dalam hal itu. Tidak ada yang mengalahkan pengalaman empiris dan Anda hanya mendapatkannya dari mengembangkan perangkat lunak sepenuhnya untuk klien nyata, dengan semua tuntutan, batasan waktu, perubahan, dan kerja tim yang terlibat.
sumber
Saya menemukan situs jahat ini tempo hari http://99designs.com/ Di bawah desain situs web atau desain lainnya, Anda mungkin dapat menemukan beberapa proyek perangkat lunak terkait.
Ini akan menjadi cara yang bagus untuk mendapatkan kode, mengembangkan beberapa keterampilan baru, bertemu beberapa orang baru yang mungkin merupakan calon majikan dan Anda bahkan dapat menghasilkan uang.
Saya telah menemukan ada nilai besar bagi pengusaha dalam menunjukkan bahwa meskipun Anda tidak memiliki pekerjaan Anda tidak duduk di pantat Anda. Tunjukkan bahwa Anda keluar dari sana dan melakukan beberapa proyek, lebih disukai yang dapat Anda pamerkan di sebuah wawancara.
sumber
Jangan khawatir. Roma tidak dibangun dalam satu hari.
SUNTING:
#! diff A B
sumber
Pertama, jangan khawatir bahwa Anda tidak dapat membuat kode google. Google dibuat selama beberapa tahun oleh banyak programmer yang sangat berpengalaman. Itu seperti menyelesaikan gelar seni visual, dan bertanya-tanya bagaimana Anda bisa membuat The Last Supper.
Untuk berburu pekerjaan, jangan memusingkan persyaratan. Panggil saja mereka, dan katakan bahwa Anda tidak memiliki tahun, tetapi Anda masih ingin melamar. Jika mereka benar-benar menginginkan pengalaman itu, tanyakan apakah ada lebih banyak posisi junior yang tersedia - mereka mungkin dapat membuat posisi baru hanya untuk Anda. Sebagian besar pekerjaan dibuat untuk orang tertentu. Pastikan Anda menghubungi manajer proyek, bukan departemen SDM. SDM biasanya tidak menciptakan pekerjaan baru, mereka sering hanya menyaring pelamar untuk pekerjaan yang ada. Google adalah teman Anda dalam hal ini;)
Jangan mencoba membuat kode aplikasi web (seperti google atau stack overflow) kecuali jika Anda ingin berinvestasi sekitar 6 bulan. Ini adalah kurva belajar yang sangat besar. Anda perlu belajar mengelola VCS, menjalankan server web, HTML JS dan coding CSS, sistem database, dan bahasa aplikasi web. Ini brutal. Sebagian besar teknologi ini tidak dapat ditransfer kecuali jika Anda ingin melakukan pekerjaan web.
Jika Anda memang ingin melakukan aplikasi web, Anda mungkin ingin menginstal aplikasi web sederhana (seperti IP berbasis django ini untuk aplikasi pencarian negara - http://www.coulix.net/blog/2006/aug/17/ip- bendera negara-django-komentar / ). Anda dapat berbelanja untuk mendapatkan kode diskon $ 90 dreamhost (sehingga Anda dapat bekerja di server web nyata), dan mencoba untuk mengatur semuanya. Jangan terlalu khawatir tentang keamanan atau kinerja (tapi lakukan menggunakan ssh) - itu hanya sebuah proyek pembelajaran.
Jika Anda ingin melakukan hal-hal di desktop, Anda bisa melihatnya di pygame.
sumber
Anda dapat membaca semua tentang pemrograman, tetapi Anda tidak akan belajar bagaimana memprogram sampai Anda sembuh .. mulai pemrograman!
Saya akan merekomendasikan Anda memulai proyek pribadi. Apa yang ingin Anda buat? permainan? Sebuah blog? Itu tidak masalah. Buat saja sesuatu!
Kemudian, setelah melakukan beberapa pengkodean nyata untuk sedikit (beberapa minggu atau bulan) saya sarankan mencoba untuk berkontribusi pada proyek open source. Proyek pribadi membantu Anda untuk mengetahui cara memprogram ketika tujuannya belum ditetapkan untuk Anda (mengetahui bagaimana sebenarnya merancang sesuatu tidak sering diajarkan di sekolah). Berkontribusi pada proyek yang ada mengajarkan Anda untuk bekerja dalam tim dan mengikuti standar kode.
Saya tidak akan membuang waktu saya membaca banyak hal lain. Saya akan mengatakan paling banyak Anda mungkin harus membaca sekitar 20% dari waktu dan menulis kode 80% lainnya. (tentu saja, berdasarkan waktu, maksud saya waktu Anda disisihkan untuk pemrograman hal-hal terkait)
sumber
Nah, inilah dua sen SAYA ... ditambah dengan kutipan dari beberapa sumber lain.
Ini adalah masalah yang saya lihat banyak, bahkan sampai ke titik di mana orang-orang dengan tahun "pengalaman" pada resume mereka tidak dapat melakukan tugas-tugas sederhana. Secara pribadi, saya pikir lembaga pendidikan sebagian besar bertanggung jawab untuk ini, dari fakultas yang tidak tahu materi pelajaran atau tidak bisa mengajarkannya kepada konselor yang seharusnya mengarahkan siswa yang hanya ingin masuk ke bidang tertentu untuk mendapatkan uang tanpa minat yang wajar di bidang itu sendiri.
Dari pertanyaan Anda, Anda keluar dari perguruan tinggi dengan perasaan seperti baru saja keluar dari kehidupan Anda selama beberapa tahun untuk mendapatkan selembar kertas. Begitulah banyak agen perekrutan melihat gelar hari ini untuk programmer. Mereka menginginkan orang-orang yang telah membuktikan bahwa mereka dapat memprogram, bukan hanya seseorang yang memiliki selembar kertas. Tetapi fakta bahwa Anda mengajukan pertanyaan ini pada awalnya menunjukkan kepada saya keinginan untuk benar-benar belajar memprogram.
Salah satu hal terbaik yang dapat Anda lakukan untuk belajar telah ditunjukkan beberapa kali, yaitu hal-hal pemrograman. Sayangnya, walaupun ini benar-benar akan meningkatkan pengetahuan dan pemahaman Anda tentang teknologi, itu tidak mungkin membantu Anda menemukan pekerjaan kecuali itu adalah sesuatu yang dapat Anda masukkan ke dalam resume Anda.
Saya sarankan Anda mulai dengan membangun sendiri beberapa aplikasi dengan tujuan tertentu, mencari tahu apa yang dapat Anda lakukan dan apa yang akan menantang Anda untuk maju, kemudian pergi ke beberapa tempat di mana Anda dapat mengambil pekerjaan lepas. Jangan berharap mendapatkan bayaran dalam jumlah besar untuk pekerjaan lepas yang Anda ambil di web, Anda ingin menambahkannya ke resume Anda, bukan dompet Anda. Setelah Anda mendapatkan 3-5 item yang dapat Anda tunjuk dan mengatakan "Saya membuat itu" atau "Saya merancang fungsionalitas untuk mereka", kemudian daftarkan semua hal itu, dan temukan agen perekrutan (mereka ada di MANA SAJA .. (headhunter) dan bekerja dengan beberapa orang mereka untuk merampingkan resume Anda sehingga menyoroti pendidikan dan sumber daya Anda dalam menemukan pekerjaan yang harus dilakukan, dan meminimalkan aspek dari kurangnya pengalaman Anda.
Hal terbesar yang harus diingat ketika Anda berbicara dengan calon majikan (yang saya lihat orang-orang selalu mengacaukannya), dan sesuatu yang harus diperhatikan oleh SIAPAPUN DI DALAM BIDANG APA PUN, adalah bahwa sementara Anda sama sekali tidak ingin menjual diri Anda dengan kekurangan atau meminimalkan apa yang BISA Anda lakukan, jangan terlalu banyak menjual sendiri dan membuat mereka percaya Anda bisa melakukan hal-hal yang Anda tidak tahu caranya. Majikan selalu memiliki keahlian untuk meminta Anda melakukan hal-hal yang tidak Anda ketahui caranya, dan itu tugas Anda pada saat itu untuk mengetahuinya, tetapi jika Anda memberi tahu mereka bahwa Anda sudah bisa, Anda pasti akan memakan kata-kata Anda nanti .
Semoga sukses untuk Anda!
sumber