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

Поділитися
Вставка
  • Опубліковано 10 вер 2024

КОМЕНТАРІ • 85

  • @uranproject
    @uranproject Рік тому +4

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

    • @Andrew-7324
      @Andrew-7324 10 місяців тому

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

  • @andreikudryavtsev3193
    @andreikudryavtsev3193 2 роки тому +12

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

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

    • @andreikudryavtsev3193
      @andreikudryavtsev3193 2 роки тому

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

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

    • @andreikudryavtsev3193
      @andreikudryavtsev3193 2 роки тому

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

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

  • @dannybones9484
    @dannybones9484 2 роки тому +12

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

  • @1nzhener
    @1nzhener Рік тому +5

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

  • @user-qb1xy3jq5x
    @user-qb1xy3jq5x 7 місяців тому +1

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

  • @user-vl3nd2kc9z
    @user-vl3nd2kc9z 2 роки тому +7

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

  • @maxsimpleapps
    @maxsimpleapps 2 роки тому +2

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

  • @user-il4oo4og7h
    @user-il4oo4og7h 2 роки тому +14

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

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

    • @vitkuzmenko
      @vitkuzmenko 2 роки тому

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

    • @user-il4oo4og7h
      @user-il4oo4og7h 2 роки тому +2

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

    • @user-il4oo4og7h
      @user-il4oo4og7h 2 роки тому

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +3

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

  • @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 роки тому

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

    • @Architect_Mobile
      @Architect_Mobile 2 роки тому +1

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

  • @maxsimpleapps
    @maxsimpleapps 2 роки тому +6

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

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

  • @dmitryya.2988
    @dmitryya.2988 2 роки тому

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

  • @pepapig8621
    @pepapig8621 Рік тому

    Cool, many thanks!

  • @it-6411
    @it-6411 2 роки тому +1

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

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

  • @user-oc7py1vy6s
    @user-oc7py1vy6s 2 роки тому

    Спасибо!

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

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

  • @Dragonboh1
    @Dragonboh1 3 місяці тому

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

  • @savazhkin
    @savazhkin 2 роки тому +8

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

  • @user-ft1im5cd8h
    @user-ft1im5cd8h 2 роки тому +5

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +3

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

    • @pedrosedro
      @pedrosedro 2 роки тому +7

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

  • @agpone1
    @agpone1 10 місяців тому

    mvc top!

  • @rudinandrey
    @rudinandrey 2 роки тому +2

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

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

    • @rudinandrey
      @rudinandrey 2 роки тому +2

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

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

    • @vitkuzmenko
      @vitkuzmenko 2 роки тому

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

  • @Embedded_Developer
    @Embedded_Developer 2 роки тому +1

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

  • @nobytrix
    @nobytrix 2 роки тому

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

  • @alexeykhomych1743
    @alexeykhomych1743 2 роки тому +3

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

    • @alexeykhomych1743
      @alexeykhomych1743 2 роки тому

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

    • @alexeykhomych1743
      @alexeykhomych1743 2 роки тому

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

    • @alexeykhomych1743
      @alexeykhomych1743 2 роки тому

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +2

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

    • @vitkuzmenko
      @vitkuzmenko 2 роки тому +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, но так как вопрос был про то что я бы использовал, я рассказал). Мог конечно рассказать про альтернативы, но хоть во время общения с Алексеем и была очень спокойная и дружелюбная атмосфера, все равно микро нервозность присутствовала и рассуждение получалось не совсем такое, какое было бы в обычной зоне комфорта с коллегами. Не каждый день прохожу собесы)

  • @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 🤣

  • @alexanderfedoseev7870
    @alexanderfedoseev7870 2 роки тому

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

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

  • @dmitriyobidin6049
    @dmitriyobidin6049 2 роки тому +1

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому

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

    • @easycad6998
      @easycad6998 2 роки тому +3

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

    • @freedeveloper7638
      @freedeveloper7638 2 роки тому +1

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

    • @MobileDeveloper
      @MobileDeveloper  2 роки тому +1

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

    • @freedeveloper7638
      @freedeveloper7638 2 роки тому +1

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

  • @user-gl9cm4qc1e
    @user-gl9cm4qc1e Рік тому +2

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

    • @KryptLynx
      @KryptLynx 10 місяців тому +2

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

  • @muhamedalli7685
    @muhamedalli7685 2 роки тому +2

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

    • @vitkuzmenko
      @vitkuzmenko 2 роки тому +1

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

  • @antonk2745
    @antonk2745 2 роки тому

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