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

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

Автор: @lvbond Senior iOS Yandex, ex-Avito, VK
Download Telegram
🚘🚘 Задача на проектирование: создание кастомного Notification Center'а

В ноушене продолжаю наполнять фреймворк задачами для систем дизайна и проектирования.

Создание своего Notification Centr'а, наверное, одна из самых популярных задач.

В ней требуется:
🟣 Знать паттерны Singletone и Observer
🟣 Понимать как добавлять и удалять наблюдателей
🟣 Задумываться о потокобезопасности

💎 Получить доступ к этой и другим статьям можно через бусти или трибут
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Никто не работает восемь часов в день

Обычно средняя работа программиста 4-6 часов интенсивной нагрузки. Больше наш мозг не выдержит. Попробуйте порешать литкод задачи полгода по 8 часов в день. Для этого требуется невероятная выдержка.

Восемь часов просто опасно работать. Поэтому умные менеджеры дают небольшую нагрузку, чтобы ты не выгорел. Не приходил обессиленный после работы и еще успевал тратить время на развитие. Ведь инвестиция в развитие — это обязательное требование от тебя. В крупных компаниях есть бюджеты на обучение, английский, спортзалы и даже приставки с играми. Это все помогает тебе сохранять продуктивное состояние. Если ты тоскаешь 12 часов ящики, как грузчик, то ты не станешь самым сильным человеком в мире.

Развитие требует определенную среду. Только эту идею многие искажают.

Тогда что делать с остальными часами? Тут есть несколько выходов:

1. Найти вторую работу. Это говорят сами знаете кто. Но мое мнение такое: две работы по 4 часа == 8 часов на одной работе. У тебя нет времени на развитие. Ты не растешь как спец. А в итоге работаешь даже больше.

В итоге, тебя не хватает надолго и ты также выгораешь. Уходишь из ит и открываешь свой курс по менторству на ютубе. Где единственная твоя карьерная заслуга — суммарный доход на средней должности из трех работ. Получается менеджер, который оберегал тебя от выгорания, не спас тебя. Ты сам утопил себя.

2. Потратить это время на развитие себя. Если бизнес негласно и говорит, что ты в среднем работаешь 4-6 часов, а должен при дедлайнах 8, то можно правильно потратить свое время.

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

Каждый сам решает куда инвестировать эти остатки
4287
iOS курс для начинающих разрабов от Меты*

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

Сможет ли он конкурировать со Стендфорским курсом? Я сомневаюсь. Но материалов много не бывает

*Запрещенная организация на территории РФ
12
💎 Скидка на подписку через Tribute

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

Признаюсь, я не пожадничал, а просто затупил.

Поэтому стараюсь быстро пофиксить свой баг.

Добавил две скидки:
1. Ежемесячная
2. Ежегодная на 3500 руб

Скидка щедрая. Даже больше, чем была на бусти.

📺 Что входит в подписку можно почитать тут
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Форк фреймворка для собесов по систем дизайну

Я устал решать алгоритмы и принялся за наполнение задач по систем дизайну. Или, в простонародье, архитектурам.

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

В чате мы вместе с опытными архитекторами сегодня уже набросали около 20 задач. На них я подсчитал мне нужно будет 3-4 месяца 🥲

💎 Вступай, чтобы мне помочь
Please open Telegram to view this post
VIEW IN TELEGRAM
104
🌄 Ревью книги: "Growing as a Mobile Engineer"

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

Главный враг в обучении — это сомнения. Избыточно самоуверенные только глупцы. Чем больше знаний и навыков, тем больше вопросов. А слепая наивность может привести не к той карьерной лестнице, которая приложенна к другой стенке.

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

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

В этой книге разбирается:
🟣 Как расти до сеньора и дальше
🟣 Почему важно иметь продуктовое мышление
🟣 Зачем изучать другие стэки
🟣 Почему на программистах стоит бизнес, а не на продактах и инженер-менеджерах

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

💎 Почитать перевод и конспекты можно в ноушене
Please open Telegram to view this post
VIEW IN TELEGRAM
13
Xamarin RIP

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

После разговора моя вся вера в кроссплатформы умерла. Инженеры были супер-скилловые, а технологии не выгребали хотелки бизнеса.

В теории и на бумаге, Xamarin лучше любой кроссплатформы:
1. Имееют огромную кодовую базу
2. Любой шарпист легко мог бы писать для мобилок
3. Языку C# кучу лет и он умнее и проработанее Kotlin и Swift
4. Куча готовых решений и библиотек

Но на практике даже эта технология загнулась и любой кроссплатформенный разраб в итоге пишет на нативе

Из минусов:
1. Невозможно в найм.
2. Нет хороших разрабов под все технологии
3. Слишком дорогие
4. Куча лишних абстракций

В итоге, проблемы можно подписать под любую кроссплатформу, где невозможно усидеть на всех стульях
6
💎 Toп вопроcов по собеседованиям | Алгоритмы | ч. 1

Новая подборка вопросов для собесов. Тема алгосы.

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

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

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

В этом сборнике я затронул вопросы:
🟣 Как определить сложности кода
🟣 Что такое алгоритм разделяй и властвуй?
🟣Чем алгоритм скользящее окно отличается от двух указателей?
🟣Какая сложность у метода сортировки коллекций sort?
🟣А также многие другие вопросы

💎 Получить доступ можно через ноушен или по скидке тут

🧬 Ознакомиться с другими сборниками тут
Please open Telegram to view this post
VIEW IN TELEGRAM
1021
Если ты не практикующий спец — тебя не слушают

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

Многие ребята тоже благодарят меня, когда оформляют подписку. Пишут спасибо за мотивацию и полезность контента. Это мотивирует думать об еще большем качестве.

Я поэтому не верю в эти инфоцыганские методы. Где стараются вовлечь своим "доходом", а не профессиональными заслугими. "Зарплатным потолком", который банально зависит от гросс или нет. ИП или ТК. Размера налога. Размера премий. От регионального коэфициента и от многих вещей. Наша экспертность не отталкивается от дохода.

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

Именно поэтому я не стараюсь скатываться в около-итшные темы, которые больше похожи на дом 2 в ит: скандалы, обсуждение офферов, споры и другое.

Если ты берешь на себя какую-то ответственность за создание комьюнити, то ты должен обладать экспертностью и образцом, а не придумать или накрутить себя. Заставить поверить на слово.

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

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

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

Квоты повышений никогда не распределяются равномерно. Часто ты конкурируешь еще не только с иосерами, но и с андроидом, бэком, фронтом и qa. А если еще и твой руководитель далек от мобилки, то тебе сложнее доказывать свою ценность. Это поэтому считается, что в платформенных командах ты растешь быстрее. Там и задач под твою основную технологию больше, и никого кроме иосеров в командах нету. Но об отличиях продуктовых и платформенных команд когда-нибудь подробнее.

Тут Серега перевел статью, где автор говорит обратное. Что часто многое зависит от нас. Возможно, это так. И если ты инициативен и замотивирован, то легко вырастешь везде.

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

В недавней книге мы разбирали, что выбор компании для роста — очень важная деталь. Ведь если ваш продукт перестал развиваться для мобилок, то вероятней нужно менять стэк или компанию.
7
Media is too big
VIEW IN TELEGRAM
Советы как эффективно тратить деньги:
1. Завести семью и детей
2. Получать образование
3. Оформить бусти подписку у меня
4. Не брать кредитов
952
🌿 Подборка мок-интервью для IOS разработчика

Признаюсь, я почти никогда не смотрел мок-собесы. И здесь я допускал ошибку.

Мне казалось, что текста и книг всегда достаточно. Но процесс собесов — это другое. Это впервую очередь диалог, где ты должен доказать свои знания.

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

Говорить ртом правильные и понятные слова важно. Не стоит надеясть, что интервьюеры экстрасенсы.

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

💎 Получить доступ можно через ноушен или по скидке тут
Please open Telegram to view this post
VIEW IN TELEGRAM
10
🧬 Custom Notification Center

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

В ней требуется:
🟣Запроектировать класс
🟣Сделать его thread safety
🟣Сделать его memory safety
🟣type safety

Получилось ли у меня можно проверить на скриншоте. Спойлер нет

💎 Как же сделать его лучше можно узнать в закрытом контенте по подписке через бусти или по скидке тут
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
55
Что выведет в консоль?