Алексей Чусовитин

iOS-разработчик, ментор
В этом интервью мы познакомим вас с нашим ментором Алексеем. Алексей живет и работает в Екатеринбурге, Россия. Занимается iOS-разработкой 2,5 года.
Профессиональный опыт
— Расскажи о своем первом проекте в iOS-разработке. Что это было за приложение?
— Первым проектом было приложение для Первого Московского Хосписа. Работал без зарплаты, для того, чтобы получить коммерческий опыт и набраться знаний.
— Какие наиболее интересные или сложные проекты ты реализовал?
— К сожалению, почти все под NDA, одна из задач - разбиение жутконаписанного монолита на модули, приведение архитектуры в порядок и написание своего крашлитикса с дебагом ошибки в случае краша приложения.
— Какие технологии и инструменты чаще всего используешь в своей работе?
— Combine, SwiftUI, стараюсь как можно больше использовать нативные библиотеки. В них много хороших вещей, просто о них мало известно (например, https://developer.apple.com/documentation/foundation/jsonencoder/keyencodingstrategy. В некоторых случаях отлично заменит Coding Keys, а https://developer.apple.com/documentation/foundation/urlerror дает классную информацию по ошибкам сетевого слоя. Можно уйти от кастомных классов/енамов ошибок в приложении). В исключения добавлю SnapKit если UI написан на UIKit’е.
Из архитектур больше всего работаю с MVVM.
— Что больше всего нравится в iOS-разработке и почему?
— В первую очередь то, что это живой язык, все еще развивающийся в архитектурном и UI ключе. Отличное комьюнити. Возможность работать с логикой и с UI. Нравится самодостаточностью. При желании можно создать продукт полностью самостоятельно, без бэкенда, дизайнера и тд. Конечно, это не всегда применимо, но возможность такая есть :)
Обучение и менторство
— Почему ты решил стать ментором?
— Возможно это было привито в одной из компаний - делиться опытом. По пятницам команда рассказывала про интересную технологию, либо делились тем, что разузнали, как работает та или иная библиотека. Это круто и вдохновляет. Считаю, что так ты быстрее и лучше учишься, избегаешь шишек, которые уже за тебя кто-то собрал.
— Какие сложности чаще всего возникают у студентов, и как ты помогаешь им с ними справляться?
Не верят в себя. Возможно связано с тем, что считают, что будет очень легко, а когда становится сложнее - опускают руки. Нужна поддержка и хорошая база. Некоторые просто не стремятся, опускают руки при трудностях. Те, кто хорошо проходят модули, прислушиваются к советам и задают вопросы. Остальные остаются в одиночестве в своих мыслях и тонут в снежном коме несделанных домашек, окончательно теряя мотивацию.
— Можешь рассказать о каком-то успехе твоего ученика, который тебе особенно запомнился?
— Пока это мой первый поток, и он еще идет. В целом, все кто учился и не забросил - молодцы.
— Что делать студенту, когда у него что-то не получается?
— Попробовать найти решение (гугл/стэковерфлоу), после прийти к ментору за помощью. Думаю, что важный навык - уметь гуглить, или примерно вспомнить, где ты это мог видеть. Если сразу идти за решением к ментору, скорее всего информация запомнится не так хорошо. Я приходил к ментору с решениями, мы обсуждали, какое хорошее, а какое не очень. Ну и конечно просто приходил, когда не мог справиться. :)
Личное мнение и советы
— Какие качества, по твоему мнению, необходимы для успешного iOS-разработчика?
— Вовлеченность, желание развиваться, чуть упорства. Системность, считаю это очень важным. Если потратить сутки в неделю либо потратить по несколько часов каждый день, думаю в первом случае результат будет куда хуже.
— Какую литературу или ресурсы ты мог бы порекомендовать начинающим разработчикам?
— Для начинающих - В. Усов (2 книги ), Swift Marathoon (@Devrush_bot) и ютьюб. Видео контент в начале легче воспринимается и заставляет писать код.

Придумать свой пет-проект, не важно какой, сделать его не с помощью чата GPT.
Нравится вот этот роадмап: https://kindly-dugong-2a2.notion.site/iOS-study-DataSource-by-Slava-Slutsker-3f79ba2c51ce45e9b32eae4666585e9d
Гид по гит: https://rogerdudler.github.io/git-guide/index.ru.html
100 дней свифта, есть такая же по СУИ: https://www.hackingwithswift.com/100

А с опытом думаю уже сам разработчик начнет понимать, что ему не хватает, поэтому не буду советовать советы типа Роберта Мартина и тд :)
— Чем ты занимаешься в свободное от работы время? Есть ли хобби?
— У меня есть два приложения, готовим с командой их к релизам, дописываем фичи, ресерчим пользовательский опыт, в общем свободного времени не так что бы много :) Чтобы не перегореть, один из дней в неделю выделяю полностью себе для прогулок / хайкинга.
— Какой совет ты дашь начинающим iOS-разработчикам?
— Учите Котлин))
Ну а если серьезно, айосерами не рождаются, не сдавайтесь, учитесь системно и все получится!
Алексей является ментором 5-го потока студентов и также берет на индивидуальное обучение. Оставляйте заявку на курс https://wwds.pro/courses, чтобы попасть на обучение к Алексею.