Це є другий пост із серії статтей “Програміст Початківець“. В попередній статті ми з вами обговорили, а головне, спробували визначити, чи треба нам це програмування взагалі. А оскільки ви зараз читаєте ці рядочки, я насмілюсь зробити висновок – що треба 🙂 Другим пунктом попередньої статті був огляд тих шляхів, через які люди приходять у сферу програмування.

Programming Mentor

Фото взято з @www.lovetefl.com

І вже після першої статті я почав отримувати питання на зразок “Де краще навчатися?”, “Який ВУЗ обрати?”, “Краще універ чи просто піти на курси?” та “Як шукати Ментора для навчання, якщо немає програмістів серед знайомих?”. Тому в цьому пості спробуємо з вам розглянути питання вибору місця навчання, а також те як шукати собі наставника у нелегкій та цікавій справі програмування.

В даній статті я буду згадувати і наводити приклади конкретних установ, людей, компаній, які надають навчальні послуги. Тому одразу признаюсь – це не на правах реклами, просто ділюся конкретною практичною інформацією, якою володію сам, і де потрібно буду зазначати чи мав особисто досвід з даною установою чи компанією. Відповідно, чекаю в коментарях ваших думок і досвіду з приводу тих чи інших курсів та тренерів, особливо якщо ви самі там проходили навчання!

Отже, давайте пройдемося по різноманітних варіантах навчання програмуванню трохи детальніше:

ВУЗи

Почнемо з ВУЗів. Зрозуміло, що цей варіант більше підходить, якщо ви ще нічого не пробували і не знаєте про програмування, але хотіли б спробувати ваше життя з ним + ви тільки-но закінчили школу. (Думаю старша людина не має ні бажання, ні можливості витратити 5 років свого життя на освоєння нової професії, яка ще й не відомо чи підійде і приноситиме задоволення…)

ВУЗ вважається хорошим місцем, звичайно при вашій же ініціативі, отримати хорошу базу. Основи алгоритмів, вища математика, низькорівневі технології, залізо, і т.д… Знову ж таки залежить від конкретного ВУЗу, факультету та спеціальності.

Мене, наприклад, випускники шкіл часто запитують: Який ВУЗ краще обрати? Зокрема, по ситуації у Львові: “Що краще – Політехнічний чи Львівський Національний Прикладна Математика“? Однозначної відповіді на ці питання я звісно не маю. В першу чергу залежить від того, що саме ви шукаєте і чого прагнете навчитися.

Щодо якості – де краще вчать, а де гірше – не знаю. А ви знаєте? Я думаю гірше вчать там, де студент не бажає чогось навчитись. Тому при однаково сильному бажанні отримати знання – який ВУЗ ви б не обрали – можливість стати хорошим програмістом будем в обидвох варіантах, як у Політехнічному так і в ЛНУ.

З того, що я знаю від друзів та знайомих (сам я закінчив мех-мат в ЛНУ), ЛНУ Прикладна Математика (в принципі з назви зрозуміло) – це більш науковий підхід до програмування, можна так сказати – матиматика в практичному застосуванні. Тобто там можна більше зануритись у алгоритми, більш математичну, наукову сторону програмування. В Політеху ж є більший вибір різноманітних спеціальностей, зокрема, більш практичного застосування, як от наприклад, комп’ютерна інженерія.

Тому, при виборі, рекомендую спочатку визначитися що саме шукаєте (ціль вступу у ВУЗ), тоді відвідати обидва ВУЗи, роздивитися і розпитати програму навчання, можливі спеціальності, а також розпитати людей на факультеті (кафедрах), що у них з працевлаштуванням, чим зазвичай займаються успішні випускники ВУЗу.

Із свого ж досвіду знаю, що далеко не усі викладачі у ВУЗах, є практикуючими програмістами. А також програми навчання часто мають застарілі предмети та технології, які вже не використовуються у реальному житті. Таким чином, в більшості випадків після завершення ВУЗу – людина повинна “довчатись” додатково, щоб отримати свою першу роботу у ролі Програміста.

Ну і якщо ви вже давно не школяр, і навіть не студент, тоді швидше за все для вивчення програмування вам підійде один з наступних варіантів.

Приватні Навчальні Установи

Тут йде мова про спеціалізовані навчальні заклади, як от наприклад Комп’ютерна Академія “Шаг”.  Я вважаю такий тип навчання чимось середнім між ВУЗом та практичними навчальними курсами при програмістських фірмах.

Навчання в закладах такого роду:

  • більш сфокусоване на конкретній спеціалізації та її практичному застосуванні, а відтак після успішного випуску – ви краще підготовлені до “реального життя програміста” 🙂
  • коротше, ніж у ВУЗі (від пів до 2.5 роки)
  • платне – я вважаю це великим плюсом. Я особисто ціную більше те за що плачу!  Свої студентські роки, під час яких мені дали чудову можливість навчання безплатного – успішно прохалявив. Зараз же ж під час кожного платного тренінгу чи навчального курсу, у якому беру участь – стараюся отримати максимум знань та користі, щоб одразу відробити тренінг застосуванням нових знань на практиці
  • заняття проводяться згідно гнучких графіків

Таким чином такі навчальні установи класно підходять людям, які вже мають можливість оплатити своє навчання, щоб отримати нову спеціалізацію для себе – Програмування. Адже є можливість відвідування уроків у позаробочий час, вивчати лише потрібні речі для майбутньої нової роботи, і час навчання менший ніж у ВУЗі.

Маю кілька знайомих, які закінчували подібні заклади. Враження у кожного з них було різне. Хтось – успішно влаштувався на роботу програмістом і цілком задоволений навчанням, хтось – скаржиться на не актуальні знання та недобросовісне ставлення деяких викладачів до своєї роботи.

Як завжди – комусь іде, а у когось проблеми. Думаю залежить від бажання в першу чергу. А вже в другу чергу – можливо дійсно при масштабуванні навчального бізнесу (створення великих приватних університетів) – якість навчання, хочеш не хочеш, але погіршується. З’являються викладачі з неактуальними знаннями, без постійної практики і знань останніх новинок галузі.

Тепер список приватних навчальних закладів пов’язаних із IT та програмуванням, які я зміг знайти через інтернет, або про які розповідали знайомі та друзі по містах України:

Думаю в кожному обласному центрі є кілька комп’ютерних шкіл.

Маєте досвід навчання в одній з вище наведених, або знаєте про інші подібні школи та університети? Прошу коментувати внизу статті. Буде цікаво мені і читачам дізнатися про всеможливі варіанти.

Якщо ж ви не маєте стільки часу на навчання, або вже володієте базою з програмування і тепер шукаєте, де ж це допиляти свої знання для практичного застосування і якомога швидше отримати свою першу роботу, тоді наступний підхід – саме для вас.

Навчальні Курси при IT Компаніях

Якщо вже є навички програмування і мета номер 1 – знайти першу роботу, тоді один із найкращих варіантів – походити по місцевих програмістських фірмах і порозпитувати про навчальні курси. Більшість компаній проводять їх безплатно. Проводять їх з метою залучення джуніків у свою команду. В переважній більшості треба пройти успішно початковий тест для права подальшого навчання.

Звісно бувають моменти, коли навіть при успішному закінченні таких курсів людей не брали на роботу (буває на той момент немає вакансій), проте досвід і практику ви в будь-якому випадку здобудете. Таким чином будете краще готові до наступного інтерв’ю.

До речі, ось тут можна прослідкувати історію одного студента, який проходив курси на СофтСерві, та його позитивний відгук про них.

Більшість великих IT компаній проводять подібного роду курси: СофтСерв, GlobalLogic, Eleks, Epam. Про інших – не знаю. Маєте інфу – коментуйте.

Якщо поблизу вас немає IT компаній, що проводять подібні курси, або вас туди не беруть, або ви хочете рухатися в напрямку іншої спеціалізації аніж пропонують на курсах – рухаємося до наступної секції.

Самоосвіта + Ментор

Одразу розвію примарні надії та думки щодо вище наведених методів навчання. Ні один з них, звісно, не працює, якщо не задіяний такий сильний інструмент як Самоосвіта. Думаю усі ми вже знаємо, що Самоосвіта потрібна всюди і завжди. І у варіанті навчання програмуванню з Ментором – це ключовий інструмент без якого ніяк.

Self Education

Фото з @www.datavita.net

Суть даного підходу в тому, що ви знаходите собі наставника (людину – програміста), який скеровує вас у правильному напрямку: дає завдання, окреслює можливі варіанти для вирішення, перевіряє результати і надає подальші пропозиції для покращення результату. Зверніть увагу, не вчить що і як робити, а лише направляє вас у правильному руслі. Тобто вчитеся ви самі, проте ніби під наглядом 😉

Важливий момент – якщо людина не хоче брати з вас грошей за консультації – настоюйте на оплаті. Це накладе додаткові неявні зобов’язання як на ментора (він тоді прикладатиме більше зусиль для вашого успіху) так і на вас. Знову ж таки – ви будете ставитись до навчання серйозніше, якщо заплатите за нього, навіть невелику суму.

Варіант з ментором підходить для суперумотивованих людей з великим бажанням. Адже тут треба більшість проблем протягом навчання “розгрібати” самому. Зате – ви абсолютно повністю керуєте вашим часом – вдалося швидко виконати завдання – значить швидше отримаєте нове, і таким чином швидше набудете необхідним практичних навичок.

Ідеально, якщо ваш ментор крім допомоги з навчанням, при успішному результаті – порекомендує вас своєму босові для подальшого працевлаштування 😉

Найважливіше питання у даній секції “Як і де мені знайти Ментора?”.

  • Першим ділом пройтися по друзях та знайомих, по друзях друзів та по знайомих знайомих :), чи не має часом програміста. Немає – ок, поїхали далі.
  • Відвідувати регулярні IT тусовки, де наводити контакти з потенційними майбутніми вашими менторами: хакатони, різного роду IT конференції і клуби, Users Meetups, коворкінг спейси, і ще багато багато іншого…
  • Пошукайте онлайн програмістів, в соц. мережах, не соромтесь, просто зконтактуйте і розкажіть ситуацію. На сотий раз точно хтось та й погодиться.
  • На кінець запостіть на dou.ua в форумі оголошення, що шукаєте ментора. Розкажіть про свої поточні навички, і кого приблизно шукаєте.

Як же ж переконати людину стати вашим наставником? Ось деякі із пунктів, які можете пред’явити:

  • “наставництво джуніків – шлях до Сеньйор позиції”
  • “навчаючи інших – ви самі краще розумієте предмет”
  • “я буду тобі кодував твої робочі завдання – задарма”
  • запропонувати грошову винагороду
  • вкінці кінців тиснути на жалість 😉

Якщо після усіх вище наведених підказок і фішок – далі не виходить знайти ментора, тоді див. статтю першу – чи дійсно вам це потрібно і чи дійсно є велике бажання вчитися?

Загалом варіант з Наставником – класно підходить у випадку, якщо вже у вас є певні знання у програмуванні і тепер ви хочете набути практики та отримати кільках перших справжніх проектів (як результат співпраці з ментором) у своє поки тоненьке портфоліо-резюме.

І на завершення…

Якщо ж ви ще не визначились, який саме метод навчання вам більше підходить, і чого саме вам бракує для того, щоб влаштуватися на вашу першу програмістську роботу, тоді можливо наступний пост в даній серії “Програміст Початківець” допоможе вам розібратись із цим питанням. В ньому ми розберемо, які бувають програмісти, які технології вони використовують, а також те, що саме краще обрати для себе на початках, щоб старт був простіший і зрозуміліший.

 

Ух, ну і пост довжелезний вийшов! Потратив на збір інфи і думок не одну годину! Якщо стаття була для вас корисна – тисніть Like! Якщо маєте серед знайомих та друзів людей, яким вона також може бути корисна, діліться лінком на неї! Чим більше лайків, тим більше в мене мотивації в наступних статтях давати вам ще більше корисної інформації і досвіду 😉

До наступного зв’язку!

Хочете першими дізнаватися про наступні статті у нашій серії “Програміст Початківець”? Тоді підписуйтесь на розсилку мого блогу: