iOS Makes Me Hate
3.98K 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
Масштабирование CI/CD для iOS

В прошлом опросе сложных задач тема CI/CD заняла предпоследнее место. Проще только алгоритмы 😂

Результат опроса, на мой взгляд, — кринж. Аудитория посчитала, что CI/CD и алгосы проще краски кнопок и анимаций. С этими тезисами я готов драться на ножах.

Но этот пост о другом. Автор доклада поделился отличным опытом настройки очень важной темы. Разработка таких систем как CI/CD требует множества разных скиллов связанных не только с мобильной платформой. Это полноценная mob.devops специальность, где рынок очень ценит таких разработчиков и готов щедро им платить.

Если вы хотите самостоятельно погрузиться в эту тему, то этот доклад выглядит интересным для основ.
Please open Telegram to view this post
VIEW IN TELEGRAM
842
Media is too big
VIEW IN TELEGRAM
💎 Подборка сложных задач для тренировки систем дизайна

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

В этой подборке мы не будем подробно разбирать большие фичи.

В ней будут точечные кейсы, где могут быть сложности в приложении:
🟣какие сложности в корзине магазина
🟣 как достигнуть офлайна в читалках
🟣как обновлять избранное в списке и детальном описании
🟣как и где хранить авторизацию

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

🧬 Получить материалы вы можете 💰 тут или ⭐️ тут
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Читаю книгу «искусство спора. Как читать книги» и поражаюсь актуальности и качеству многих взглядов.

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

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

В действительности качество текущих споров в ит — софистика и место для демагогов.

Еще главная мысль, к которой я и сам пришел, что качество спора зависит от дисциплины ума и его качества. Тут мы и занимаемся тем, что его улучшаем.
138
💵 Зарплаты iOS разработчиков (vs Android) 📈

Android лучше iOS, медиана зарплаты iOS-разработчика 283k, Android — 300k . ❤️ Команда getmatch будет благодарна, если вы поделитесь ссылкой на канал ➥ с коллегами, так мы сделаем статистику еще полнее.

Как изменились зарплаты iOS-разработчиков за последние три месяца?
Медианная зарплата выросла и составила 268k283k (+5,5%) за последние три месяца.

В 2024 Q4 диапазон зарплат составлял от 120k до 530k рублей на руки без учета премий. Если исключить крайние значения, то 80% всех зарплат находились в диапазоне от 179k до 420k.
В 2025 Q1 диапазон зарплат повысился: от 130k до 604k рублей, при этом 80% всех зарплат оказались в диапазоне от 195k до 410k рублей.

Важно отметить, что 47% респондентов также получают бонусно-премиальную часть по итогам работы в размере до 25% годового оклада.

Диапазоны зарплат:
Middle — 130k до 400k
Senior — 250k до 460k
Lead — 300k до 604k
Узнайте насколько ваша зарплата соответствует рынку.

В каких российских компаниях платят больше всего?
Собрали топовые средние зарплаты в компаниях (на руки, без учета премий):

Cian — 425 000 руб
Альфа Банк — 354 000 руб
Авито — 348 000 руб
Wildberries — 343 000 руб
VK — 322 000 руб
T-банк — 320 000 руб
Яндекс — 278 000 руб
МТС Диджитал — 270 000 руб
Сбербанк — 268 000 руб
OzonTech — 250 000 руб


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

Удаленка у iOS разработчиков
Удаленка популярнее офиса и гибрида, 75% работают полностью удаленно.

Как мы считаем?
С помощью зарплатного калькулятора getmatch мы собираем данные об актуальных зарплатах в российских компаниях. В исследовании приняли участие 224 разработчика. Мы рассматриваем специалистов только уровня Middle, Senior и Lead.

#ios_developer #калькулятор
Оцените зарплаты — 👍 или 👎

💵 Зарплатный калькулятор: Менеджеры продукта Q2 24 | Системные аналитики Q2 24 | Менеджеры проекта Q2 24 | Frontend разработчики Q2 24 | Data Science и Machine Learning Q2 24 | Python разработчики Q2 24 | Team lead и CTO Q3 24 | Golang разработчики Q3 24 | Продуктовые дизайнеры Q3 24 | Продуктовые аналитки Q3 24 | C# разработчики Q3 24 | Devops Q3 24 | C++ разработчики Q3 24 | Java разработчики Q4 24 | Менеджеры продукта Q4 24 | Системные аналитики Q4 24 | Android разработчики Q1 25 | iOS разработчики Q1 25
2
getmatch: канал про карьеру в IT
💵 Зарплаты iOS разработчиков (vs Android) 📈 Android лучше iOS, медиана зарплаты iOS-разработчика 283k, Android — 300k . ❤️ Команда getmatch будет благодарна, если вы поделитесь ссылкой на канал ➥ с коллегами, так мы сделаем статистику еще полнее. Как изменились…
Грань между мидлом и сеньором уже давно размылась. Не редко, мидл может получать больше сеньора, а сеньор больше лида.

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

Деньги и грейды, как мерило экспертности, — пыль.
💎 Шаблон для собеседований № 2

Прошлый шаблон получил хорошие отзывы и спасибо в лички. Поэтому решил сделать второй шаблон, но уже интересен — про Swift Concurrency и SwiftUI

Мало у кого есть готовые методички под рукой и это вам точно поможет. В этом шаблоне:
🟣вопросы на джуна/мидла про Lazy Containers,View Identity, AnyView и тп
🟣задача на поиск ошибок в SwiftUI
🟣вопросы по SC на отмену, date race, continuation и тп
🟣решение практической задачи

Если понравится сделаю еще одни части.

🧬 Получить материалы вы можете 💰 тут или ⭐️ тут
Please open Telegram to view this post
VIEW IN TELEGRAM
11
какая сложность по Big O у этого кода?
Anonymous Poll
15%
O(n)
37%
O(n*k)
3%
O(n+k)
42%
O(n^2)
2%
O(1)
1%
O(n!)
2%
Другое
1
18
Путь коммерческого разработчика: Нужна ли математика программисту?

В своем канале я даю только самые полезные на практике знания. Если это алгоритмы, то базовый минимум. Если это систем дизайн, то без ненужных извращений. И так со всем. Минимум усилий — максимум результата. Минимум output'ов — максимум outcome'ов. Без заносчивости и духоты.

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

Частый спор нужна ли математика/алгосы/и тп программисту может запутать начинающих разработчиков. У более опытных коллег есть чаще целый набор искажений:

🟣“Эффект завышенных требований” (Overcomplication Bias).
Человек предпочитает сложные объяснения даже тогда, когда можно дать простые. Он добавляет ненужные детали, не связанные с реальной работой.
🟣Проклятие знания (Curse of Knowledge).
Опытный коллега не осознаёт, что новичку не нужны все сложные детали сразу.
🟣Смещение выжившего (Survivorship Bias). Опытный специалист ориентируется только на свой путь и навязывает новичкам знания, которые помогли ему, но не обязательно нужны сейчас.
🟣Иллюзия глубины понимания (Illusion of Explanatory Depth)
Люди думают, что объясняют понятно, но на самом деле их знания плохо структурированы.


Этим всем болел или болею я сам. Быть качественным программистом != быть качественным учителем.

Так нужна ли математика? И как строить свой путь в образовании?

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

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

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

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

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

Экономьте свое время и ищите самые эффективные пути.
Please open Telegram to view this post
VIEW IN TELEGRAM
156
Кстати, все ищу свой формат для видосов. Как думаете, серия коротких видосов про алгосы норм идея?
291
Forwarded from Product Developer (Nikita Khromushkin)
Shit tolerance — это софт скилл
Загадка: есть у джуна, нет у мидла, но нужно сеньору?

Нет, это не «стрессоустойчивость», не эмоциональный интеллект и не умение договариваться.

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

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

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

О чем речь?

Shit tolerance — это способность сохранять продуктивность, когда процессы неидеальны, задачи не всегда чёткие, а идеальный мир существует только в фантазиях.

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

А кому-то норм трекать время, потраченное на задачи, и заполнять таймшиты.

На любой shit есть три возможных варианта реакции:
1. Смириться
2. Уйти
3. Починить

Ну и распределение по грейдам примерно такое же:
1 — Джун  
2 — Мидл
3 — Сеньор

Если нет код-ревью и видна потребность — сеньор предложит, продаст команде, и внедрит.
Если прод горит — сеньор спокойно пойдёт чинить.
Если надо выполнять задачи, взятые в спринт, — сеньор проанализирует причины и решит проблемы: улучшит процесс подготовки задач, договорится со смежниками, …

Как прокачать shit tolerance?

1️⃣ Переключиться с эмоций на действия. Вместо «это полный п#ц!» — «окей, как мы это разрулим?»

2️⃣ Отделять важное от неважного. Не все проблемы стоит решать. Нужно отличать:
— Рабочий шум, который можно фильтровать. Например, срочные задачи, которые всегда срочные.
— Системные проблемы, которые нужно решать. Например, бардак в процессах, мешающий работать.

3️⃣ Оставлять энергию на главные вещи. Иногда лучший ответ на хаос — работать спокойно и делать своё.

Но!
Shit tolerance — не значит терпеть любой беспредел.
Если каждый день вызывает боль и ощущение бессмысленности — это не про гибкость, а про выгорание.
И да, сеньоры и лиды тоже имеют право на выход. Главное — не потерять себя и не стать частью болота.

P.S. Картинку к посту я позаимствовал из твиттера Евгения Кота. Тред замечательный, рекомендую к прочтению.

Какой у вас уровень shit tolerance? 😏
13
This media is not supported in your browser
VIEW IN TELEGRAM
💀Оффтоп

10 лет назад вышла одна из лучших игр, которая повлияла на меня с точки зрения стиля. Hotline Miami 2.

До сих пор я беру и буду брать стилистику из нее, Katana Zero и Джона Уика

Ну и конечно крутейший саундтрек📼
Please open Telegram to view this post
VIEW IN TELEGRAM
23