iOS Makes Me Hate
3.94K subscribers
1.15K photos
169 videos
15 files
1.33K links
Авторский канал про iOS разработку. Путь продуктовых самураев в MAANG.

Самое больше iOS сообщество практиков: https://boosty.to/lionbond/

Автор: @lvbond Senior iOS Yandex, ex-Avito, VK
Download Telegram
Подборка для того, чтобы пройти в FAANG

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

Нет почести и уважения к тому, что ты прошел игру на сложности легче, чем другие. Нашел хаки, баги, читы. Нам нравятся другие игры. Мы хардкорщики. А читеры и абузеры механик это трусы и слабаки.

Возможно, никто из нас никогда не будет работать в гугле или эпле. Но зато мы будем стараться соответствовать их требованиям. Хотя, я думаю, что скоро мы достигнем сложных собесов как в МААНГАх и к этому нужно быть готовым.

Coding Interview
🟣 500 важных задач с литкода. Эксель табличка с задачами и с ссылками на видео решения.
🟣 сайт algoexpert. Тут можно лучше познакомиться с теорией и с тщательно подобранными вопросами.

System Design Interview
🟣Grokking the System Design Interview. Полный курс по проектированию всех популярных сервисов.
Please open Telegram to view this post
VIEW IN TELEGRAM
142
Forwarded from КиберТопор
⚡️iPhone в РФ, возможно, В С Ё: в Госдуме хотят запретить продажу гаджетов, на которых нет доступа к российскому RuStore.

Если законопроект примут, Apple будет обязана предустанавливать RuStore в iOS, иначе продажу гаджетов запретят в РФ — так депутаты хотят бороться с дискриминацией российских приложений в App Store и Google Play.

Теперь пользуемся андроидом.

🕹КиберТопор — Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
86
🧬 Как улучшить билд тайм вместе с модуляризацией

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

Модуляризация — один из важных подходов для хорошей работы. Она позволяет отсеять лишнее и дает архитектуру для масштабирования кодовой базы. А также помогает в изоляции сборки.

В статье есть хорошее описание назначения модуляризации, ее плюсов и минусов.
Please open Telegram to view this post
VIEW IN TELEGRAM
10
💎 Mobile System Design: Проектируем Instagram

Я продолжаю собирать материалы к марафону.

Уже накидал структуру каждого дня, а где-то даже презентации для докладов.

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

Еще разберем почему в систем дизайне бесполезно зубрить схемы и как он хорошо вскрывает реальный опыт. Как сильно влияет реальная практика и насколько сильно беспомощна накрутка.

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

🌿Доступ к этому и другим материалам можно получить по скидке
Please open Telegram to view this post
VIEW IN TELEGRAM
10
Хакаем mobile system design интервью

Статья с кликбейтным заголовком, которая разбирает процессы собесов в Apple, Google, Netflix и других тир 1 компаний. В ней хорошо описываются требования, которые будут оцениваться от интервьюера.

Обычно разработчику дают максимально абстрактную задачу. Например, "сделай ленту новостей как у твиттора". А дальше смотрят на такие пункты:
🟣Насколько "правильные" вопросы задает интервьюеры
🟣Как приоритизирует требования: разделяет на функциональные и нефункциональные
🟣Насколько понятную схему он рисует
🟣Определить границы хардов интервьюера
🟣Определить софты: коммуникация, стрессоустойчивость, логичность и тп
🟣Насколько хорошо понимаете работу за границами iOS
🟣Как принимаете решения

Эти навыки невозможно получить без практики и опыта
Please open Telegram to view this post
VIEW IN TELEGRAM
9
🌄 Продвинутый разбор Equatable и Hashable

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

Недавно понял, что неправильно понимаю работу Hashable. В каких случаях поиск по ключу в словаре будет O(n)? Как связан hashValue и hasher? Что такое уникальность и эквивалентность? Когда компилятор за нас синтезирует соответствие этим протоколам? Хорошо, что теория и знание языка фиксится за вечер. Это не проектирование сложных систем 🧠

В этих вопросах мне помогли разобраться эти материалы:
🟣Synthesizing Equatable and Hashable conformance
🟣Hashable Enhancements
🟣Implementing Hashable/Equatable in Swift

Кстати, к теме инфо гигиене, скоро будет разбор на важные пропозалы. Хватит читать непонятные статьи и слушать экспертов с собесов. Сразу идем в первоисточники и исходники.

💎 В ноушене я сделал конспекты этих пропозалов и статьи, а также привел много примеров. Получить доступ можно через бусти или телеграм
Please open Telegram to view this post
VIEW IN TELEGRAM
1421
221
Мы уже стартанули марафон по систем дизайну, сделали отдельный чат и будем созваниваться каждый день вечером. Поэтому эту неделю будет очень много материала.

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

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

https://www.youtube.com/watch?v=tW3F62fY1Vc
10
💎 Подборка задач на SOLID

Для многих тема архитектур связана либо с паттернами MVVM, VIPER, TCA. Либо с принципами DRY, SOLID, KISS. Поэтому понемногу заполняю эту тему.

Собрал подборку задач по принципам:
🟣SRP
🟣OCP
🟣LIP
🟣ISP
🟣DIP

Получить доступ можно через бусти или телеграм
Please open Telegram to view this post
VIEW IN TELEGRAM
731
Как улучшить problem solving skills в программировании

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

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

У этого процесса есть отдельная методология. Она подходит к любой сфере жизни.

В статье собраны советы от практикующих инженеров, которые помогут улучшить навыки конкретно для программирования.
10
Хорошие статьи про хэш-таблицы

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

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

Нашел очень хорошее объяснение базы:
- Хеш-таблица, хеш-функция в Swift
- Как реализовать хэштаблицу в Swift
10
Forwarded from 42 секунды
Ведомости: HeadHunter могут сделать ответственным за базу квалификации IТ-кадров

– Для IT-специалистов сделают подтверждение квалификации
– Решение предусматривает нац. проект «Экономика данных»
– Создасть систему подтверждения квалификации намерен HH
– Это будет единая база тех. компетенций для IT-специалистов
– Минцифры сможет фильтровать через нее получателей льгот
– По итогам H1 2024 на HH доступны 353,8 тыс. вакансий (+16%)
– Всего за тот же период там было 585 тыс. резюме из IT (+7%)
– HH заявил, что сейчас собирает и анализирует предложения
– При этом такую систему Минцифры и рынок обсуждают с 2023
– Но пока участники отрасли и ведомство не договорились

@ftsec
Скоро пол года сообществу и сделаем пару выводов.

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

Мне кажется, эта установка помогла нам стать не только самым большим закрытым практикующих иосеров, но и самым быстрорастущим.

За пол года мы обогнали тех, кто крал наши материалы и продавал у себя в закрытых роадмапах еще пару лет назад. Без маркетинга и абузов системы. Только на сарафаном радио и желании других. Я просто писал сырым текстом свои мысли и не старался быть тем, кем не являюсь.

За пол года стало много подражателей, но мы держимся крепче и задаем новые пути. Проводим эксперименты и поднимаем темы, которые мало кто поднимал.

Эта установка доказывает свою эффективность. Где честный и усердный путь всегда лучше награждается, что ленивый и трусливый.

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

Мы остаемся собой и имеем уникальный оттенок. Где честность и упорный труд становятся главной философией.
26159
Мок-интервью по систем дизайну

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

Мы вчера на марафоне проводили доклад, где примеряли место реальных интервьюеров:
🟣Собирали критерии новичка, мидла и сеньора
🟣Оценивали софты
🟣Учились оценивать чужие работы
🟣Смотрели примеры хороших схем

Сейчас ребята делают крутое и сложное домашнее задание.

В ноушене уже есть записи. Возможно, когда-нибудь тоже сделаем мок-интервью как в бигтехах, только для iOS'еров
Please open Telegram to view this post
VIEW IN TELEGRAM
3
This media is not supported in your browser
VIEW IN TELEGRAM
Скоро мы в мобилке
11
🚘🚘 Ресурсы марафона проектирования № 1

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

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

Мы разбирали:
🟣Чем отличается хорошая схема от плохой
🟣Почему важно уметь спрашивать, а не приступать сразу к решению задачам
🟣Насколько инженер должен быть самостоятельным
🟣Почему даже если вы сдадите другие секции, но завалите проектирование, то чаще вам откажут в оффере
🟣Как разные компании формируют матрицы оценок

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

💎 Для тех, кто не смог, но хотел есть утешающий приз. Все предыдущие записи и презентации можно посмотреть по подписке
Please open Telegram to view this post
VIEW IN TELEGRAM
4