Coding Bootcamp Vs Gelar Ilmu Komputer

Latar Belakang

Sedikit latar belakang tentang diri saya. Saya menerima gelar CS dari Queens College dan bekerja untuk waktu yang singkat sebagai pengembang frontend sebelum saya memulai perjalanan saya di bootcamp coding.

Artikel ini bukan untuk mem-bash salah satu dari itu. Saya hanya akan memandu Anda melalui kedua jalan yang saya ambil dan mudah-mudahan memberi Anda pandangan yang kurang menakutkan tentang jalan yang akan Anda pilih ketika Anda berdiri di persimpangan jalan.

Kurikulum dan Lingkungan

Pertama, saya ingin masuk ke perbandingan bagaimana keduanya diperkenalkan. Di kedua jalur, kita menyelami dasar-dasar variabel dan struktur data dasar. Perbedaan utama di sini adalah bahwa di jalur CS, kami menyelam di banyak jalur. Sejalan dengan variabel pembelajaran, kita belajar matematika diskrit di mana kita belajar bagaimana angka biner bekerja, tabel kebenaran dan gerbang logika (perangkat fisik yang mengimplementasikan fungsi boolean).

Siswa CS diajarkan dasar-dasar algoritma, konkurensi, kompleksitas waktu, alokasi memori yang efisien dan struktur data lanjutan. Area ini tidak terlalu terfokus pada bootcamp mungkin karena sifat kerangka waktu yang singkat. Algoritma sangat penting untuk wawancara kerja dan bagi siapa pun yang hanya melakukan bootcamp, Anda harus berlatih dan mempelajari beberapa algoritma.

Perbedaan besar lainnya adalah jumlah waktu yang melibatkan instruktur dan TA. Di perguruan tinggi, kuliah adalah sumber utama pembelajaran dan instrukturnya ada di sekitar (jam kantor). Di bootcamp, sumber utama pembelajaran adalah dari tangan aktual tentang pengkodean dan instruktur tersedia sepanjang hari.

Keanekaragaman dan Budaya

Salah satu perbedaan antara keduanya adalah budaya. Saya tidak bisa mengatakan ini benar untuk semua bootcamp pengkodean tetapi dalam minggu pertama di bootcamp, saya merasa sangat nyaman dengan setiap orang dalam kelompok saya dan saya tidak takut untuk meminta bantuan karena jumlah waktu saya dipaksa untuk berada di sekitar teman-teman kohort saya (untuk siapa pun dari kohort saya membaca ini, saya cinta kalian semua :)).

Perbedaan lain yang saya perhatikan adalah latar belakang profesional yang berbeda dari badan siswa di bootcamps. Bootcamps adalah cara yang bagus untuk jalur cepat untuk memulai karier baru.

Proyek dan Pengalaman Langsung

Bootcamps jelas memiliki keunggulan dibandingkan sekolah ketika berhadapan langsung dengan pengodean. Hari pertama di bootcamp kami terjun langsung ke API di mana di sekolah kami melakukan satu proyek dengan APIS di seluruh kurikulum. Saya tidak memiliki pemahaman yang kuat tentang API yang merupakan persyaratan untuk hampir setiap posisi saat mencari pekerjaan rekayasa perangkat lunak. Bootcamp telah memberi saya kesempatan untuk akhirnya memahami API.

Setiap modul dalam bootcamp memiliki satu atau lebih latihan pemrograman pasangan dan satu proyek pemasangan besar. Saya belum melakukan latihan pemrograman atau proyek berpasangan tunggal di sekolah. Ini sedikit menyakitkan karena setelah lulus dari perguruan tinggi, saya melakukan beberapa wawancara dan mereka semua memiliki beberapa pertanyaan tentang pengalaman saya bekerja dengan seseorang dalam tim.

Membangun di atas apa yang saya sebutkan, kami memiliki paling banyak 1 atau 2 proyek per kelas di sekolah. Sebagian besar materi difokuskan pada teori. Di bootcamp, kami mengerjakan kode setiap hari. Pengkodean adalah sesuatu yang Anda kuasai dengan melakukan, bukan membaca atau menonton. Ini adalah salah satu aspek yang tidak dimiliki sekolah.

Algoritma

Namun, karena banyaknya waktu yang dihabiskan dalam teori-teori dasar, mari kita lakukan contoh yang menyenangkan di mana itu sebenarnya berguna! (contoh dari sumber yang dinyatakan di bawah) Seperti yang saya sebutkan sebelumnya, algoritma tidak benar-benar diajarkan secara mendalam dalam bootcamps. Saya akan membayangkan jika seseorang (dari bootcamp rail backend) dengan sedikit pengalaman dalam algoritma diminta untuk mengurutkan satu miliar objek pengguna masing-masing dengan usia (tipe integer), mereka mungkin akan menggunakan metode built in ruby.sort () karena itu semua mereka tahu. Ruby.sort () menggunakan pengurutan cepat yang memiliki kompleksitas waktu O (n log n) yang tidak terlalu buruk! Namun, bagaimana jika daftar itu tumbuh cepat dan memori menjadi kendala? Seseorang yang memahami algoritma dan alokasi memori mungkin dapat merancang algoritma mereka sendiri yang memiliki waktu O (n) seperti menghitung jenis, jenis ember atau jenis radix.

semacam radix

Pekerjaan dan Karir

Pada saat posting blog ini, saya belum menyelesaikan perjalanan saya melalui bootcamp tetapi kami diberitahu bahwa kami akan mendapatkan pelatih kerja yang akan membantu meningkatkan keterampilan kami untuk mencari pekerjaan. Keduanya menawarkan sumber daya yang hebat untuk membantu membimbing Anda ke arah yang benar. Kampus perguruan tinggi memiliki inkubator yang menawarkan proyek dan ada juga program yang tersedia bagi siswa untuk magang.

Jalan yang mana?

Jadi sekarang Anda mungkin bertanya-tanya, jalur mana yang lebih baik atau bootcamp yang layak dengan gelar CS atau mendapatkan gelar CS yang layak setelah menyelesaikan bootcamp. Dari sudut pandang pribadi, saya senang dan bersyukur bahwa saya dapat mengalami keduanya. Ini bukan tentang yang mana yang lebih baik atau satu atau yang lainnya layak. Kelebihan dan kekurangan saling mendukung dengan sangat baik untuk membentuk keseimbangan yang sempurna.

Sumber daya