
Щоб точно навчитися IT-професії — треба відчувати щирий інтерес до напряму та навчання в цілому. І тут у наших студентів з iOS розробкою метч. Спілкуючись з випускниками курсу «Swift з нуля», ми помітили дещо спільне: захоплення технологіями Apple та самим процесом програмування.
В цьому інтерв’ю для Web Academy вони поділились історіями свого шляху на курсі, улюбленими темами та викликами, з якими довелося мати справу. Які висновки вони для себе зробили та що радять тим, хто хоче стати iOS розробником — читайте в статті.
Михайло Жутов, Junior iOS Developer
З програмуванням я взагалі не був пов’язаний. Займався невеликим бізнесом, але коли прийшла війна, продажі почали падати. Тож вирішив пробувати щось нове для себе. Давно розмірковував про кар’єру в IT, але часу не було, руки не доходили.
Перед тим, як прийняти рішення піти на курс по Swift, я присвятив місяць вивченню бази. Не хотілося гальмувати протягом курсу. А оскільки про програмування я нічого не знав, то вирішив базу вивчити самостійно.
Чому iOS? Сам користуюсь технікою Apple, і для себе вирішив, що якщо й занурюватись, то саме в iOS розробку. Бачу великі перспективи мови та компанії. Apple і надалі буде розвивати свою мову. Крім цього, мені здавалося, що поріг входу в iOS буде легшим, тому що потрібна дорога техніка. Відповідно й рівень конкуренції трохи нижче. Ну і зарплатня: рівень оплати роботи iOS-розробника з роками може бути вища, ніж, наприклад, у розробника на Java (моя особиста думка).
На курсі я створював програму, яка отримує дані з TMDB API та дозволяє виводити інформацію про популярні фільми. Щодо дизайну, то надихався сервісом NETFLIX.
Я дуже кайфонув від загалом усього процесу створення свого додатка. Ти комбінуєш знання, отримані від курсу, намагаєшся їх застосувати до власного проекту. Впродовж цього зіштовхуєшся з мільйоном помилок і врешті-решт знаходиш рішення. Це непростий шлях, але він дуже добре вчить.
Через два тижні після закінчення курсу мені вдалося отримати оффер від невеликої компанії. Не рівень GlobalLogic або EPAM, але в умовах війни та важкої ситуації на ринку мені дуже пощастило з цим.
Крім курсів, шукайте інформацію в інтернеті самостійно. Дивіться на Youtube ролики, як створювати додатки. Я, наприклад, ніколи б не подумав, що о 3-4 годині ночі дивитимусь ролик про те, як створити додаток, і буду щасливий від того. А найкраще було те, що тепер я вже розумів, про що в цьому ролику кажуть: “Ага, тут tableView, collectionVie… Тут він створює протокол…”
З’являється впевненість в собі як в спеціалісті, хоча минуло лише декілька місяців. Від себе хочу подякувати Web Academy за курс і Саші (лектору) та Максиму (ментору). Отримані знання вже застосовую на практиці.
Найближчий старт курсу з iOS розробки: Swift з нуля
Олександр Найдєнцев, техлід команди моушн-дизайнерів
Раніше стикався з програмуванням, але на рівні аматорства. Ще в університеті пробував вивчати Delphi, C++, але це було на базовому рівні “функції-змінні” і все.
Зараз працюю в компанії, яка пов’язана з розробкою додатків iOS. Був моушн-дизайнером і перейшов на позицію техліда. За останні два роки часто стикався з JavaScript, і побачив, як за допомогою його можна покращувати та автоматизувати процеси.
Насправді, знання Swift допомогли мені розібратися з логікою програмування на тому ж JavaScript. Надсилання запитів на сервер, робота з JSON, API і так далі — все це корисні поняття. Курс для мене став класним стартом, щоб почати працювати саме зі Swift. У майбутньому сподіваюся підключити напрямки VR, 3D, моушена.
У загальному доступі є розписані API та документація одного сервісу по роботі з каталогом фільмів. Наш тренер Олександр Слободянюк запропонував на основі цього написати свою програму, яка дозволить шукати фільми, зберігати їх у свій плейлист, залишати коментарі й так далі.
Як не дивно, я почав з Figma. Розумів, що коли писатиму код, то зіткнуся з різними значеннями та параметрами. Мені треба буде брати їх звідкись, щоб нон-стоп не думати: “А якого розміру має бути ця рамка?”. Тож спочатку накидав інтерфейс, по ньому зрозумів, яка у мене буде логіка програми: скільки в мене буде контролерів, які будуть екрани та кнопки, що куди переходитиме.
Можна обійтися без макета, але мені здалося, що з цим буде легше. Ми навіть обговорили з тренером Олександром, що мій ескіз у Figma зможе послужити майбутнім студентам за темплейт.
Кожне заняття ми проходили нові функції, впроваджували у свої програми, тестували. Насамкінець захищали свої роботи: показували, який функціонал зробили та перевіряли на баги.
На захисті мені сказали, що з проектом все окей, для першого разу навіть більш ніж. Ну а доопрацьовувати свою застосунок можна нескінченно. Отже, я поставив собі ліміт: реалізувати всі функції, які задумав. Хотілося провести фінальну межу, побачити, куди я дійшов — і це зробив проект.
Челленджем було розібратися з API, закулісною частиною програми. Теорія нескладна, але коли працюєш з даними, у тебе мало візуальної складової. Це не так інтуїтивно зрозуміло. Ти написав функцію, натиснув перевірити, і вона видасть помилку або результат. Якщо помилка — треба розбирати, у чому проблема.
Ще треба морально бути готовим постійно щось доопрацьовувати та переписувати. Наприклад, ти зробив рядок пошуку, а за тиждень зрозумів, що туди потрібно щось додати. Часто доведеться все зносити та переробляти заново.
Найкрутіше — це бачити, як твій код працює. Натиснув на кнопку, і відбулася анімація. Надіслав запит у бекенд — з’являється відповідь або дані. Коли твій код перетворюється на програму, це приносить радість. Напевно, за це так і люблять програмування.
Лейтмотив всього курсу — зрозуміти, як правильно шукати інформацію. На курсі знайомишся зі створенням додатків на Swift загалом. Але курс не передбачить всі проблеми, не зробить програму за тебе. Часто слухаєш теорію і все зрозуміло. Пробуєш на практиці – не працює. Але потрібно пробувати знову і знову.
Половину часу роботи над програмою, я гуглив і шукав рішення. Це те, про що говорив тренер курсу: “Головне у програмуванні — навчитися знаходити відповіді”. Є велика ймовірність, що з вашою проблемою вже хтось зіткнувся і виклав відповідь в інтернеті. Ваше завдання знайти це рішення та самостійно його реалізувати.
Так можна швидко напрацювати досвід. Можна прочитати купу книг, пройти безліч курсів і знайти рішення самостійно. Але питання: чи варто на реалізацію якоїсь маленької функції витрачати стільки часу?
Плюс я зрозумів, що технології розвиваються настільки швидко, що немає такого поняття, як “ось я закінчив курс чи університет — все життя спиратимуся на ці знання”. За рік, за півроку тут може все кардинально змінитись. Тому йдіть на курс, щоб навчитися вчитися. Це знадобиться.
Іван Бегічев, Trainee iOS Developer
Макбук у мене з’явився досить випадково, і вперше за ним посидівши, я одразу ж захотів за допомогою нього щось створювати. А оскільки з мобільними програмами ми взаємодіємо щодня, попит є, то Swift здався для мене просто ідеальним варіантом 🙂
До курсу по Swift у мене не було досвіду, хіба що безкоштовні курси на Youtube та книги. Але в них є проблема: матеріал не завжди засвоюється належним чином. Хоча своєї мотивації мені вистачало, але все ж коли забагато неструктурованої інформації — в цьому дуже легко потонути і врешті-решт закинути. Тому й виникла думка піти на цей курс: хотілося, щоб мене направили.
Ідею для застосунку дав викладач. Оскільки теми проектів ми обирали ще спочатку курсу, свої сили було важко оцінити. Я ще не розумів, що зможу реалізувати, а що ні. Тому зрештою почав працювати над клієнт-серверним додатком для пошуку фільмів і відстеження новинок.
Коли я робив проект, намагався використати взагалі все, що дізнався на курсі. Паралельно ще шукав додаткову інформацію, багато гуглив. Загалом на виконання проекту пішло близько трьох тижнів. Можливо, міг би трохи швидше, але застосунком я займався після роботи, тому це ускладнювало процес.
Найбільше сподобалися завдання, коли ми вперше почали робити щось візуальне. Бо тоді можна було одразу оцінити, що ти зробив. До того я ніколи нічого подібного не робив. А тут уже щось схоже на інтерфейс.
Найскладніша тема для мене була констрейнти: дуже багато сил і нервів пішло на те, щоб розібратися. Дивився купу відео, статей, ставив багато питань Олександру та ментору. Це було складно для мене, але завдяки цьому я з темою так добре і розібрався.
Курсом я залишився дуже задоволений. Моєю метою було навчитися робити застосунки — і за досить стислий термін мене цьому навчили. Але моя порада новачкам: не варто шукати чарівну пігулку, покладатися лише на курс або тренера. Щоб дійсно розібратися, потрібно провести багато самостійної роботи. Дивіться документацію, гугліть, переглядайте туторіали. І тоді все вийде.