Реальное собеседование Senior iOS разработчика. Виталий Кузьменко / Мобильный разработчик

Поделиться
HTML-код
  • Опубликовано: 27 ноя 2024

Комментарии • 86

  • @uranproject
    @uranproject Год назад +4

    Сеньеры, которых мы заслужили)

    • @Andrew-7324
      @Andrew-7324 Год назад

      Да вроде и неплохо. Свою работу он точно делать сможет

  • @andreikudryavtsev3193
    @andreikudryavtsev3193 3 года назад +13

    Ничего не понятно, но очень интересно:D
    Виталию как синьору, согласившемуся на публичный собес, огромный респект. Лайк.

    • @MobileDeveloper
      @MobileDeveloper  3 года назад +1

      Прям совсем ничего или всё-таки что-то понятно?)

    • @andreikudryavtsev3193
      @andreikudryavtsev3193 3 года назад

      @@MobileDeveloper Да нет, не всё так плохо. Интересно в целом, общо так. Про вёрстку, что там вместо ресайклера я так и не понял:D Про подключение сторонних фреймворков. Какие-то такие вещи. Общее впечатление не смазало то что много всего в диковинку, конечно. Много годной инфы. Систем дизайн вообще всегда полезно послушать, кто бы ты ни был

    • @MobileDeveloper
      @MobileDeveloper  3 года назад +1

      Согласен, моя любимая часть интервью )

    • @andreikudryavtsev3193
      @andreikudryavtsev3193 3 года назад

      @@MobileDeveloper Ещё ссылочку на репозиторий Виталия прикрепить было бы хорошо)

    • @MobileDeveloper
      @MobileDeveloper  3 года назад +1

      О, точно, спасибо. Прикрепил

  • @dannybones9484
    @dannybones9484 2 года назад +13

    -knock knock
    -race condition
    --who's there?

  • @1nzhener
    @1nzhener Год назад +6

    DiffableDataSource такой - "да, да, пошел я нахер"

  • @Anton-r9o
    @Anton-r9o 10 месяцев назад +1

    Много негатива в комментах, человек согласился на публичный собес это уже стоит уважения, видно что нервничает из-за этого возможно и тупит на некоторых вопросах, в комментах вижу одни сеньеры.

  • @maxsimpleapps
    @maxsimpleapps 3 года назад +2

    Отлично. Когда перекатываешься с андроид разрабоки на айос, такие видео на вес золота. Алексей, спасибо 💥

  • @dmitryya.2988
    @dmitryya.2988 2 года назад

    Спасибо большое! Всё интересно и почти знакомо , хотя еще зеленый в этом. Спасибо ребят за материал, полезно и для подготовки и для общего развития !

  • @maxsimpleapps
    @maxsimpleapps 3 года назад +6

    Было бы интересно в следующий раз более развёрнуто услышать про Coredata vs Realm и про боль, с которой пришлось столкнуться при использовании этих орм

    • @MobileDeveloper
      @MobileDeveloper  3 года назад +1

      Это заслуживает отдельного видео 😂

  • @ИванКрешихин-й2б
    @ИванКрешихин-й2б 2 года назад +7

    Очень не хватает итогового анализа что было хорошо, что плохо. А то после просмотра остается чувство незавершенности

  • @МитяПомидоркин
    @МитяПомидоркин 3 года назад +15

    Изначально начали закрадываться сомнения в сеньерности данного кандидата. А после восьмой минуты даже захотелось прекратить просмотр, но досмотрю, может быть исправится)

    • @MobileDeveloper
      @MobileDeveloper  3 года назад

      Прошу более подробный комментарий)

    • @vitkuzmenko
      @vitkuzmenko 3 года назад

      Не в оправдание себе, но пересмотрев, скорее всего бы согласился, начало не очень внятное, особенно зафакапился на вопросе "почему" 🙃, в такой обстановке думается труднее) и многие вещи "в другой обстановке" ответил бы совсем по другому. Где то был классный мем про качество мозговой деятельности в зоне и вне зоны комфорта. Ну а если будут конструктивные замечания, с удовольствием прочитаю, может что то новое узнаю)

    • @МитяПомидоркин
      @МитяПомидоркин 3 года назад +2

      Досмотрел.
      Ну начнем с того, что было дано весьма абстрактное описание проекта. Наверно стоило бы задать ряд уточняющих вопросов. Узнать насколько серьезные планы у заказчика.
      Я не иос-разработчик, но насколько я смог понять многое обсуждалось весьма поверхностно. А если мы считаем, что разница между мидлами и синьорами в глубине знаний, то синьор мог бы либо перечислить несколько вариантов и назвать плюсы и минусы, либо обосновано выбрать один, исходя из уточняющих вопросов.
      Ещё мне кажется не хватило какого-нибудь сложного вопроса "на подумать". Например пользователь открывает приложение, необходимо получить с сервера новые письма. Как это должно быть устроено? И тут ожидаются рассуждения от соискателя. Какие подводные камни могут быть? Как он справлялся бы с ними? и т.д.

    • @МитяПомидоркин
      @МитяПомидоркин 3 года назад

      Держался хорошо. Понятно, что это не с коллегами за кружечкой кофе беседовать. Можно и перенервничать, и накрутить

    • @MobileDeveloper
      @MobileDeveloper  3 года назад +3

      Спасибо, Митя, очень крутой комментарий реально. Пытаясь делать дизайн интервью, я столкнулся с тем, что в снг их практически никто не делает и не проводит, и это накладывает отпечаток на их качество безусловно. В фаангах всяких это целый ритуал, нужно задать вопросы вначале, обрисовать жестко картину, а потом делать. Вопросы на будущее учту, спасибо, планирую ещё сделать ряд таких интервью, думаю качество будет расти )

  • @pepapig8621
    @pepapig8621 Год назад

    Cool, many thanks!

  • @Architect_Mobile
    @Architect_Mobile 2 года назад +15

    Все время считал себя Миддл)) Послушал ответы этого парня и понял что я Синиор плюс 🤣!) Объективно он слаб для Синьора , ответ про память настолько слабый , что мне показалось он вообще не разу не решал проблемы утечики памяти)) Очень слыбые ответы про архитектуру , глубины вообще нет , на мой взгляд единственный аргумент между выбором архитектуры - это та с которой чаще и больше опыта , так как если реально понимаешь суть архитектуры то разницы нет вообще на какой писать , грамотно и модульно написаное приложение прекрасно работает и на MVC . Уровень разработчика - это модульность и правильная связь этих модулей , легкая простая и понятная ! Это играет роль , в архитектуре, а не сама архитектура )) Про дедлок - это вообще , так рассказывать с трудом ))) Жесть ))) Про пуши и фаирбеис должен знать любой, это типичные будни прогера))) На какую ЗП он может претендовать ?

    • @vitkuzmenko
      @vitkuzmenko 2 года назад

      Посмотрев со стороны, у меня скорее всего тоже сложилось бы такое мнение) Но можно ли посмотреть твой github? Может вдохновлюсь чем-нибудь :)

    • @Architect_Mobile
      @Architect_Mobile 2 года назад

      @@vitkuzmenko Мой гитхаб исключительно из боевых коммерческих проектов) Которых больших более 10 , мелких более 15

    • @vitkuzmenko
      @vitkuzmenko 2 года назад

      @@Architect_Mobile Окей, допустим... Тогда "ответ про память настолько слабый..." можешь ли разобрать ответ и указать конкретно "вот это плохо сказал", Senior Developer сказал бы так то так то. Буду рад прочитать четкий ответ от опытного специалиста.

    • @dyadichev
      @dyadichev 2 года назад +1

      Если ты думаешь что мидл от сеньора отличаются умением кодить, ты долго будешь еще в мидлах😂

    • @Architect_Mobile
      @Architect_Mobile 2 года назад +1

      @@dyadichev Middle от Senior отличается умением кодить в широком смысле , а не буквально )) Если уходить в детали , то Senior - это больше не работяга , а человек который умеет мыслить на несколько шагов вперед опираясь на опыт и базовые знания . Который максимально быстро может принимать ключевые технические решения по проекту с минимальными ошибками .

  • @it-6411
    @it-6411 3 года назад +1

    Интересное собеседование. Спасибо Алексею и Виталию. Вполне позволяет сформировать представление о навыках и знаниях собеседуемого. От себя добавлю, что есть разного рода обёртки для core data, позволяющие работать с ней, исключительно, в декларативном стиле, такие, как CoreStore, что очень удобно. Плюсом, хотелось бы услышать о различных build-конфигурациях приложения (аналог android-овским product flavors). Достаточно часто нужная и требуемая бизнесом задача. И ещё логику работы с network-ом я бы выделил в отдельный модуль/pod, и из репозитория общался бы с ним через интерфейс/протокол (привет SOLID).

    • @MobileDeveloper
      @MobileDeveloper  3 года назад

      Возможно это будет в следующих интервью ))

  • @СергейПанов-з3ц
    @СергейПанов-з3ц 3 года назад

    Спасибо!

    • @MobileDeveloper
      @MobileDeveloper  3 года назад

      Спасибо за поддержку канала!

  • @Dragonboh1
    @Dragonboh1 6 месяцев назад

    интересно глянуть статью гед вайпер цикличний ))))))

  • @agpone1
    @agpone1 Год назад

    mvc top!

  • @rudinandrey
    @rudinandrey 2 года назад +2

    :))) как мне нравится задавать вопрос "почему" ? ) почему чистая архитектура? и тут парнишка поплыл.

    • @MobileDeveloper
      @MobileDeveloper  2 года назад

      Многие вещи берутся на автомате. Так называемые gold standard. Но полезно понимать почему именно эти вещи, а не другие

    • @rudinandrey
      @rudinandrey 2 года назад +2

      @@MobileDeveloper да, и я про то же... и вопрос почему как раз должен был бы раскрыть почему. Но в очередной раз я так и не услышал почему ? :) Притом что я все таки сделал над собой усилие, начал читать книгу "Чистая архитектура" Роберта Мартина. И я понимаю сейчас почему она была придумана. И что большинство тех статей и тех видео про чистую архитектуру люди просто не понимают что и зачем это вообще. И вот на это вот смотреть действительно забавно. архитектура архитектурой, но переусложнять на старте, ну такое себе

    • @MobileDeveloper
      @MobileDeveloper  2 года назад +1

      Это удобно при работе над средним приложением со среднего размера командой.

    • @vitkuzmenko
      @vitkuzmenko 2 года назад

      @@rudinandrey Полностью с тобой согласен. Не знаю почему растерялся в тот момент и не рассказал про то, что вообще можем взять и разобрать каждую из них. Если еще раз понадобится ответить, уже не растеряюсь)

  • @savazhkin
    @savazhkin 3 года назад +8

    Вообще не ожидал здесь увидеть человека, с которым когда-то работал. Вдвойне интереснее послушать

  • @Embedded_Developer
    @Embedded_Developer 3 года назад +1

    Ничего не понятно, но очень интересно[2](C)

  • @nobytrix
    @nobytrix 3 года назад

    Ещё не всё про слушал. Но у меня стойки флешбеки особенно после слова логин, вот бы ещё ключевую фразу в дополнение к паролю)

  • @DenisDenis-zq8mk
    @DenisDenis-zq8mk 2 года назад

    Где учиться на iOS разработчика в 2022 году)?

    • @MobileDeveloper
      @MobileDeveloper  2 года назад

      Могу посоветовать школу SwiftBook

    • @DenisDenis-zq8mk
      @DenisDenis-zq8mk 2 года назад

      Спасибо. А по Android ?

    • @ill_threads1628
      @ill_threads1628 2 года назад

      JavaBook или KotlinBook - должно быть по аналогии 😂

    • @DenisDenis-zq8mk
      @DenisDenis-zq8mk 2 года назад

      @@ill_threads1628 🤣

  • @alexeykhomych1743
    @alexeykhomych1743 3 года назад +3

    - ну я бы использовал мввм с реактивщиной
    - а если без либ?
    - напилил бы свою реактивщину
    странное решение, учитывая момент, что на его место посадят джуна/мидла для фикса багов, где тот и умрет, ибо нет документации/опыта.

    • @alexeykhomych1743
      @alexeykhomych1743 3 года назад

      вообще после этого диалога подумал, что видео за 2018 год. а не. свежак. какой там юайсвифт, зачем он нужен, втулю реактивщину, от которой либо плюются, либо суют ее куда только могут.

    • @alexeykhomych1743
      @alexeykhomych1743 3 года назад

      - а что по DI?
      - ну, свинжект
      - а если без либ?
      - напилил бы свой свинжект
      мне кажется, что интервьюверу хотелось услышать альтернативные методы реализации, как и в случае с реактивщиной.

    • @alexeykhomych1743
      @alexeykhomych1743 3 года назад

      досмотрел до конца. спасибо ребятам за интересное интервью. не увидел смысла в поверхностных вопросах по управлению памятью и чем отличается структура от класса) айосеров это спрашивают начиная с первого собеса и пока не станут синьорами. ожидал погружения в сайд тейблс, авторелиз пул, тейбл диспатч и т.д.
      я сам не знаю на это ответы, поэтому был очень заинтересован))

    • @MobileDeveloper
      @MobileDeveloper  3 года назад +2

      Ну в целом да, я скорее задавал вопросы на альтернативы, потому что часто очень все решается библиотеками без захода внутрь, а интересен как раз этот момент
      Ноо я довольно много в своей жизни провёл собеседований по iOS и могу сказать что это везде так практически) ну то есть редко встречаю людей, которые прям глубоко копают. И идея была показать систем дизайн интервью, то есть вот как человек объяснит как бы он построил систему. Понятно что перед этими блоками как правило идут другие блоки, которые могут как раз проверять на глубину, но тут видео одно, поэтому так )

    • @vitkuzmenko
      @vitkuzmenko 3 года назад +3

      Привет! Вставлю свои 5 копеек) если это в принципе уже уместно). Почему MVVM: На мой взгляд, простой и понятный паттерн представления (подчеркну - не архитектура, а именно паттерн представления), разделяющий логику и I/O компонента. Достаточно прост в освоении даже начинающим. Почему реактивщина, а не новомодный SwiftUI: Моим упущением было не задать вопрос, какая минимальная версия iOS требуется, если iOS 14, то безоговорочно это был бы SwiftUI, возможно с другой архитектурой. iOS 13 не обсуждается, слишком мало даёт возможностей. Но такие приложения, как почтовые клиенты/чаты по умолчанию должны поддерживать максимально минимальную версию, соответсвенно SwiftUI тут и не пахнет. В настоящий момент в компании, где работаю, мы поддерживаем iOS 10 и из за специфики проекта, планируем понижение до iOS 9, такая уж привычка). Почему реактивщина: минимум шаблонного кода, вложенности, удобное управление многопоточностью, и прочая куча удобств, простоты и возможностей для того же I/O. Да, есть и расплата за это в виде побочки, но зависит от опыта разработчика и ревьювера как это использовать и соответсвенно тестирования. Тут уже больше вопрос к организации команды и помощи в освоении. Про DI: почему Swinject и если не Swinject то реализация подхода Swinject: Имеется контейнер, фабрики отделены в Assembly классы, а не в статиках классов, удобное управление скоупом переиспользования инстансов в рамках скоупов и тд, именованые резолвы с разными аргументами одних и тех же инстансов, много всего можно сказать. Много может быть других реализаций DI, но так как вопрос был про то что я бы использовал, я рассказал). Мог конечно рассказать про альтернативы, но хоть во время общения с Алексеем и была очень спокойная и дружелюбная атмосфера, все равно микро нервозность присутствовала и рассуждение получалось не совсем такое, какое было бы в обычной зоне комфорта с коллегами. Не каждый день прохожу собесы)

  • @ВладимирМолчанов-ь8б
    @ВладимирМолчанов-ь8б 3 года назад +5

    странно, что человек писал 4 года на MVC и у него даже не возникло ощущения, что есть проблемы

    • @MobileDeveloper
      @MobileDeveloper  3 года назад +3

      Имхо, на iOS это очень частая история

    • @pedrosedro
      @pedrosedro 3 года назад +7

      Ну вообще говоря, самой проблемы в MVC нет, есть проблемы в криворуких разрабах. Если правильно декомпозировать, то все ок и тестируемо

  • @alexanderfedoseev7870
    @alexanderfedoseev7870 3 года назад

    Взглянул я как-то на кордату и подумал ну нафиг мне этот геморрой буду хранить в обычных файлах. И нормально проблем не знаю. Конечно если не требуется делать какие-то сложные селекты по базе.

    • @MobileDeveloper
      @MobileDeveloper  3 года назад

      Кордата да штука специфическая

  • @dmitriyobidin6049
    @dmitriyobidin6049 3 года назад +1

    Интересно было бы услышать на какую ЗП мог бы рассчитывает кандидат с такого уровня знаниями :)

    • @MobileDeveloper
      @MobileDeveloper  3 года назад

      250К примерно около этой суммы, ну +-

    • @easycad6998
      @easycad6998 3 года назад +3

      @@MobileDeveloper Легче на иностранные компании работать где 6-8 к баксов зарплата

    • @freedeveloper7638
      @freedeveloper7638 2 года назад +1

      @@MobileDeveloper ну я бы несказал что это собес на 250к ) В США это на 1к бачей максимум знаний )

    • @MobileDeveloper
      @MobileDeveloper  2 года назад +1

      В России большой дефицит кадров, да и в целом это норм зарплата для миддла сейчас
      В сша другая структура собеседований, поэтому имхо некорректно сравнивать )

    • @freedeveloper7638
      @freedeveloper7638 2 года назад +1

      @@MobileDeveloper В России в целом они скоро ненужны вообще будут, так как из за спецопераций правительсво убило и утопило все ((

  • @КалининСергей-л9т
    @КалининСергей-л9т 2 года назад +3

    В 2021 году писать юай на xib? Ужас

    • @KryptLynx
      @KryptLynx Год назад +2

      Продолжаю писать UI на Xib в 2023 (to clarify: я не чувак из видео)
      "вы просто не умеете его готовить".
      В SwiftUI только появилась поддержка навигации (WAT?), а написание UI из кода - для особых мазохистов

  • @muhamedalli7685
    @muhamedalli7685 2 года назад +2

    вопросы для джунов, виталий учи английский

    • @vitkuzmenko
      @vitkuzmenko 2 года назад +1

      Есть капитан!)

  • @antonk2745
    @antonk2745 2 года назад

    простите Виталий но вы не senior) удачи!