“Досвід не береться з повітря, інженер зажди навчається”, — Аліна Крикун, Software Engineer у NIX
Аліна Крикун познайомилася з IT ще у школі. Вона написала свої перші алгоритми на Pascal, а потім поглиблювала знання на мехматі в університеті.
Нині Аліна використовує знання алгоритмів, структур та баз даних на комерційних проєктах. І охоче допомагає кар’єрними порадами початківцям.
Ми передали експертці найпопулярніші питання наших підписників про позицію Software Engineer. А тепер ділимося відповідями з перших уст. Вевнені, вони допоможуть початківцям на шляху професійного становлення!
Хочу стати Software Engineer. З чого почати?
Усім, хто прагне стати Software Engineer, раджу стартувати з дослідження цієї галузі загалом. Можна дивитись відео, читати тематичні статті, слухати подкасти, при нагоді спілкуватися з практикуючими девелоперами. На цьому етапі дуже важливо відповісти собі на таке питання: а чи я дійсно хочу стати Software Engineer?
Якщо відповідь ствердна, обирайте мову програмування і починайте навчання.
Які мови програмування повинен знати Software Engineer?
Це кожен вирішує для себе окремо. Комусь подобається створювати інтерфейси, іншим — занурюватись у бази даних / сервіси або імплементувати цікаві алгоритми.
Стосовно “повинен знати”: точної відповіді немає. Інженер завжди навчається, опановує нові технології й фреймворки. Список технологій у резюме інженера має зростати в геометричній прогресії відповідно до досвіду.
Яку мову програмування вивчати першою?
Якщо говорити про мови програмування для початківця — це ті, з якими є бажання працювати та на які є попит.
Рейтинги найпопулярніших мов програмування постійно оновлюються. Щоби бути в темі — слідкуйте за трендами :).
Що почитати, аби дізнатися більше про Java?
Початківцям рекомендую прочитати такі книжки:
- Брюс Еккель “Філософія Java”
- Дональд Е. Кнут “Мистецтво програмування”
- Джошуа Блох “Effective Java”
- Роберт С. Мартін “Clean Code”
З якими челенджами стикаються початківці?
Під час роботи над першим проєктом треба:
- Познайомитися з проєктом: зрозуміти взаємозв’язок між аплікухами, навчитися працювати з фрагментами чужого (а інколи — і застарілого) коду.
- Вибудувати ефективну взаємодію з ментором, лідом, PM та тіммейтами.
- Не соромитися ставити запитання. У NIX експерти розуміють, що досвід не береться з повітря, й за можливості допомагають початківцям у своїх командах.
Чи швидкість навчання впливає на успіх?
Треба розуміти: вивчити все й одразу не вдасться. Якщо будете знайомитися із новими технологіями поверхнево, ризикуєте витратити багато часу й не набути необхідного рівня знань.
Тому краще рухатися у власному темпі й одразу закріплювати теорію на практиці.
Через скільки років Junior може стати Senior?
У середньому цей шлях займає 4-5 років. Та є деви, які опановують нові технології за лічені тижні й розвиваються набагато швидше.
Тому не варто обмежувати себе. Навчайтеся, вірте у себе — і неодмінно досягнете професійного успіху!