Kodlash Bootcamp va boshqalar Kompyuter fanlari darajasi

Fon

O'zim haqida ozgina ma'lumot. Men Kvins kollejidan CS bo'yicha darajani oldim va kodlash bootcampida sayohatni boshlashimdan oldin qisqa vaqt ichida dastur ishlab chiqaruvchisi sifatida ishladim.

Ushbu maqola ikkalasini ham siltab bo'lmaydi. Men shunchaki o'zim olib borgan yo'llarim bo'ylab yurib ketaman va umid qilamanki, yo'lning chetida turganingizda tanlagan yo'lingiz haqida dahshatli tasavvur beraman.

O'quv dasturi va atrof-muhit

Birinchidan, ikkalasini qanday tanishtirishni taqqoslashni istayman. Ikkala yo'lda ham o'zgaruvchilar asoslari va asosiy ma'lumotlar tuzilmalariga o'tamiz. Bu erda asosiy farq shundaki, CS yo'lida biz bir nechta qatorlarda sho'ng'iymiz. O'zgaruvchi parametrlarga parallel ravishda biz diskret matematikani o'rganmoqdamiz, u erda biz ikkilik raqamlar qanday ishlashini, haqiqat jadvallari va mantiq eshiklarini (bu funktsiyani bajaradigan jismoniy qurilma) o'rganamiz.

CS talabalariga algoritmlar asoslari, moslik, vaqt murakkabligi, xotirani samarali taqsimlash va ilg'or ma'lumotlar tuzilmalari o'rgatiladi. Ushbu joy bootcamp-ga juda katta e'tibor qaratmagan, ehtimol bu qisqa vaqtning xarakteriga bog'liqdir. Algoritmlar ish suhbatlari uchun juda muhimdir va faqat bootcamp qilgan har bir kishi uchun siz albatta algoritmlarni mashq qilishingiz va o'rganishingiz kerak.

Yana bir katta farq - bu o'qituvchilar va TA qatnashadigan vaqtning miqdori. Kollejda ma'ruzalar o'qishning asosiy manbai bo'lib, o'qituvchi atroflicha (ish soatlari) hisoblanadi. Bootcamp-da, o'rganishning asosiy manbai - kodlash bo'yicha haqiqiy qo'llardan va o'qituvchilar kun bo'yi mavjud.

Turli xillik va madaniyat

Ularning orasidagi farqlardan biri bu madaniyat. Bu barcha kodlash bootcamplari uchun to'g'ri deb ayta olmayman, lekin bootcamp-da birinchi hafta ichida o'z guruhimdagi har bir kishi bilan o'zimni juda qulay his qilardim va ko'p vaqt sarflaganim sababli yordam so'rashdan qo'rqmadim. mening kohorta turmush o'rtog'imning yonida bo'lish (mening kogortamdan o'qigan har kim uchun men barchangizni yaxshi ko'raman :)).

Men farq qilgan yana bir farq shundaki, talabalar tarkibining kasbiy kelib chiqishi turli xil. Bootcamps - yangi martaba boshlash uchun tezkor yo'lning ajoyib usuli.

Loyihalar va tajriba qo'llari

Bootcamps kodlash tajribasi haqida gap ketganda, albatta maktabdan ustunlikka ega. Dastlabki kun bootcampda biz API-larga o'tdik, maktabda biz butun o'quv dasturi davomida APIS bilan bitta loyihani amalga oshirdik. Menda dasturiy ta'minot muhandisligi bo'yicha ish qidirishda deyarli har bir pozitsiyani talab qiladigan API-ni aniq tushunmagan edim. Bootcamp menga API-ni nihoyat tushunish imkoniyatini berdi.

Bootcamp-dagi har bir modulda bir yoki bir nechta juft dasturlash mashqlari va bitta katta juftlashtirish loyihasi mavjud. Maktabda bitta juft dasturiy mashg'ulot yoki loyiha qilmadim. Bu juda achinarli, chunki kollejni tugatgandan so'ng, men bir nechta suhbatlarga bordim va ularning barchasida jamoada kimdir bilan ishlash tajribam haqida biron bir savol tug'dirdi.

Aytgan narsamni hisobga olgan holda, har bir maktabda kamida bitta yoki ikkita loyihada qatnashardik. Materiallarning asosiy qismi nazariyaga qaratilgan edi. Bootcamp-da biz har kuni kod ustida ishlamoqdamiz. Kodlash - bu o'qish yoki tomosha qilishni emas, balki bajarishda yaxshilanadigan narsadir. Bu maktabda yo'q bo'lgan jihatlardan biri.

Algoritmlar

Biroq, fundamental nazariyalarga qancha vaqt sarflangani sababli, keling, foydali bo'lgan joyning kulgili misolini keltiraylik! (quyida keltirilgan manbalardan olingan misol) Yuqorida aytib o'tganimdek, algoritmlar bootcamplarda aslida chuqur o'rgatilmagan. Tasavvur qilardim, agar kimdir (relslardan orqadagi bootcamp) algoritmlarda kam tajribaga ega bo'lsa, har birining yoshi (turi son) bilan milliardlab foydalanuvchi ob'ektlarini saralashni so'rasa, ular ruby.sort () ichiga o'rnatilgan usuldan foydalanishlari mumkin, chunki bu hammasi ular biladi. Ruby.sort () O (n log n) vaqt murakkabligiga ega tezkor navlardan foydalanadi, bu unchalik yomon emas! Ammo, agar ushbu ro'yxat tez sur'atlar bilan o'sayotgan bo'lsa va xotira cheklovi bo'lsa-chi? Algoritmlarni va xotirani ajratishni tushunadigan kishi O (n) vaqtga ega, masalan, tartiblash, chelaklar bo'yicha tartiblash yoki radix turlarini ajratish kabi o'z algoritmlarini yaratishi mumkin.

radix turidagi

Ish va karyera

Ushbu blogni nashr etish paytida men safarimni bootcamp orqali tugatmadim, lekin bizga ish topish bo'yicha mahoratimizni oshirishga yordam beradigan ish murabbiyi tayinlanishini aytishdi. Ikkalasi ham sizni to'g'ri yo'nalishga yo'naltirish uchun katta manbalarni taklif qiladi. Kollej yotoqxonasida loyihalarni taklif etadigan inkubator mavjud va talabalar amaliyot o'tashi uchun dastur mavjud.

Qaysi yo'l?

Shunday qilib, endi siz qaysi yo'l yaxshiroq yoki CS darajasiga ega bootcamplar bunga loyiqmi yoki bootcampni tugatgandan so'ng CS darajasiga ega bo'lmoqchimisiz. Shaxsiy nuqtai nazardan, men ikkalasini ham boshdan kechirganimdan baxtiyorman va minnatdorman. Qaysi biri yaxshiroq yoki boshqasi bunga loyiq emas. Afzalliklar va kamchiliklar mukammal muvozanatni shakllantirish uchun bir-birini chindan ham yaxshi qo'llab-quvvatlaydi.

Resurslar