Вячеслав Белый

Вячеслав Белый

Неделя
Oct 12, 2020 → Oct 18, 2020
Темы

Архив недели @vycheslavbeliy

Понедельник


Привет, меня зовут Вячеслав Белый. - Mobile Team Lead - Пишу под iOS - Преподаю Swift/iOS разработку - Веду канал на YouTube - Организатор @iOSUkranine - Развиваю iOS сообщество в Украине На этой неделе я поделюсь своим карьерным и жизненным опытом.

Вас ждет на этой неделе: День 1: Менторство как инструмент роста День 2: Проведение собеседований День 3: Общее развитие для карьерного роста День 4: Секреты перформера День 5: Осознанность День 5: Будущее iOS разработки День 6: Гендерное равенство в разработке День 7: Общение

- В IT уже больше 8 лет - Начинал Embedded C разработчиком - Преподаю больше 4-х лет - Усердно веду канал на YouTube с Мая, хочу сделать бесплатный онлайн курс по iOS разработке - С Мая занимаюсь организацией онлайн конференции @iOSUkraine с @V8tr @MojoIvan и @AlexanderSaenko

Как я тут оказался? Первое место в первом сезоне Podlodka iOS Crew.

Опытный разработчик может устранить пробелы в хард скилах за выходные, но что бы устранить пробелы в софт скилах нужны недели/месяцы, а иногда и годы. Поделюсь своим опытом, как стать "T-Shape, Self Organized" разработчиком.

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

Почему именно Я решил затронуть эту тему. На данный момент у меня есть опыт менторства джунов, мидлов, сеньйоров, лидов, друзей, знакомых, коллег, опыт преподавания в ВУЗах/школах/курсах, менторство одного, двух, группы людей.

Часто менторство воспринимают в штыки и как обузу к повседневной работе. Ментора нельзя назначить, им можно стать. (С) Человек должен сам захотеть быть ментором. (в моем окружении опытные разработчики очень часто приходят к мысли “надо бы поменторить кого-то”)

В “классическом” случае лидом становится самый “сильный” разработчик в команде и вот тут начинаются проблемы: - я лучше сам сделаю - как митинги заколебали - В смысле в отпуск? У нас релиз… - Опять на ревью говно какое-то - я им говорю как надо делать, а они...

Причина? Не достаточный менторский опыт на предыдущей позиции! Вместо того, что бы идти по ступенькам, человека кинули через этаж. Лично моя рекомендация: - минимум месяц опыта менторства одного человека - минимум месяц опыта менторства трех человек одновременно.

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

Частый вопрос в тим лид чатиках: “Я не тимлид, но грядет, что делать, с чего начать?”. Мой совет - начать менторить людей. Начните с одного неопытного, переключитесь на одного более опытного, потом двух с одинаковым уровнем и попробуйте синхронизировать их общей задачей.

Второй частый вопрос от тимлидов: “Как развивать эмпатию? Как зарабатывать репутацию? Как развить чуйку? (при найме)”. Менторство помогает решить все эти вопросы. Подойдите к этому серьезно, результат вы получите не сразу.

Еще один вопрос от “уверенных” мидлов: “Что теперь учить? AR? ML? Realm? Multimedia? Metal? Архитектуры?”. Я бы инвестировал в менторство. И тут мы подошли к вопросу: “Как менторство помогает с хард скилами”.

Все мы знаем про три уровня понимания предмета: - могу пересказать - могу повторить - могу научить На мой взгляд, уверенный мидл - это идеальное время для перехода к “могу научить”

Как часто вы повторяли основы своего языка и смотрели на тот же функционал уже через призму своего опыта? Как часто вы пересматривали принципы разработки, которыми вы пользуетесь?

Я заметил, что стратегия “бежать в перед с пробелами” приносит бОльший результат в короткое время. Но это приводит к тому, что когда вы очередной раз выбираете объявить объект классом или структурой, вы даже не до конца можете перечислить отличия между ними.

Как решить все эти проблемы одним махом? МЕНТОРСТВО - Вы сами повторяете базу - Вы отвечаете не только на свои вопросы, но и на чужие (вы удивитесь сколько раз на чужой вопрос будет реакция: “А действительно, почему?” ) - Вы развиваете софт скилы

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

Одна из самых важных тем в этом контексте, как выбрать себе ментии? От этого зависит, будет ли это трата времени или точка роста...

Разбиваем стереотипы: менторство это не комменсализм, а протокооперация.

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

Я уже затронул менторство "один-ко-многим". У меня есть "число комфорта" - 15 человек. Это максимальное количество человек (для меня), которое стоит на грани комфорта и перегрузки. Группы студентов я стараюсь формировать по 12 человек. Найдите свое "число комфорта"

Это один из лучших способов для тимлида потестить свои гипотезы в "не боевых" условиях. Это один из лучших способов в "не боевых" условиях, почувствовать себя в роли тимлида и прокачать: - лидерство - выступления на публику - ораторское/актерское мастерство - организаторство

Вторник


Заказываю колонку!

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

Собеседование у меня занимает 1 - 1.5 часа. Поэтому задача провести это время максимально эффективно, каждый вопрос должен быть померен на “КПД измерителе” и закрывать какой-то пробел знаний о кандидате.

Идем по порядку. Этап - Подготовка. Для меня важны следующие факторы: Позиция Компания Проект Резюме/Опыт кандидата Впечатления рекрутера

В среднем я трачу 15-20 минут на подготовку к собеседованию. Раньше больше тратил. Пройдемся по каждому фактору.

Фактор 1 - Позиция Джуниор/ Мидл/ Синьйор/ ТимЛид/ ТехЛид/ Архитектор Под каждую позицию у меня свои требования. Разберем все факторы для первых трех позиций. Остальное можно вынести на общение :)

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

Из хард скилов: - мне важно что бы человек знал хорошо базу языка (все что на swift.org) - на базовом уровне работал с многопоточность, сетью, гитом, менеджером зависимостей (возможно база данных) - UI - базовые паттерны + принципы разработки (достаточно теорию)

Мидл (на мой взгляд) должен уметь довести задачу до продавлена самостоятельно, без супервайзера. Из софт скилов - то что у джуниор разработчика + умение работать самостоятельно + отслеживание новых тенденций/новинок в индустрии

Хард скилы: - Углубленная работа с многопоточность, сетью, гитом, менеджером зависимостей, базой данных - Паттерны + принципы разработки (на практике). Важно понять как кандидат организовывает мысли в код.

От сеньора я хотел бы увидеть, что человек имеет опыт супервайзера и способен удерживать проект в консистентном состоянии. Из софт скилов: умение давать обратную связь (например на design/code review), видеть что можно улучшить и стремление улучшить это, понимать бизнесс-цели

Хард скилы: - Глубокое понимание языка/платформы/тенденций/принципов разработки - Базовое понимание соседних направлений (бек, фронт, иос/андроид)

Фактор 2 - Компания Компании бывают разные: продуктовые, аутсорс, аутстаф, большие, маленькие, с/без бенча, гос, студии, помощь другу на фрилансе.

На что обратить внимание и попробовать подготовить вопросы на собеседовании? - Количество бюрократии - Стиль менеджмента (авторитарный/демократический/свободный) - Размер компании - Процессы (перфоманс ревью и т.д.) Цель - узнать на сколько кандидат ОК со всем этим?

Например. Я замечал, что «молодые-энергичные» люди долго не сидя на «медицинских» проектах, которым 15 лет и 40% на objective-c. Надеюсь вы поняли о чем я...

Фактор 3 - Проект Я готовлю вопросы по следующим пунктам: - Технический стек (Новизна технологий) - Стиль менеджмента - Размер команды - Будущие планы (по проекту) Задача убедиться, что кандидату все подходит.

Вопросы по факторам 2 и 3 лучше задавать через "призму опыта" кандидата, а не прямым вопросом: “Тебе ок, что в команде будет 20 человек?”. Предположим я получу ответ ДА. А где контекст? Это легко может превратиться в "я ожидал другого от этой команды".

Я рекомендую эти вопросы задавать в секции - Завязка, когда кандидат рассказывает о своем опыте (об этом ниже) “Сколько человек на твоем текущем проекте?” -> “Не много ли/несложно одному работать”. Стараюсь кроме ответа на вопрос еще получить контекст.

Фактор 4 - Резюме/Опыт кандидата Всегда нужно готовить вопросы через "призму опыта" кандидата. Все люди разные. Собеседование начинающего разработчика-олимпиадника и начинающего разработчика-филолога - это два разных собеседования. Всегда обращайте на это внимание!

Однажды я собеседовал человека с 6-ю годами опыта, но он ни разу не работал с базой данных, просто не было таких проектов в карьере…. Все приложения были “by request”. Он закрыл этот пробел за испытательный срок и стал технически самым сильным разработчиком в своей команде.

Подход: “Рандомно пройтись по некоторым технологиям из резюме”, - что бы проверить не наврал ли кандидат в резюме, я не использую. Практика показала, что КПД у этого меньше, чем у “зональной” подготовки.

Фактор 5 - Впечатления рекрутера В последнее время отзыв рекрутера наталкивает на некоторые аспекты, которые позволяют построить гипотезы о кандидате и подготовиться для их проверки на собеседовании.

Недавний пример: рекрутер сказал, что человек часто переносил встречи и собеседование. Я убедился, что человек хорошо планирует и владеет навыками тайм менеджмента, а то была просто “черная” полоса.

Подходя к собеседованию, я стараюсь четко осознавать какие “зоны” нам более всего важны именно у этого кандидата (на основе всех факторов) и имею список вопросов, которые их покрывает/раскрывает.

Для технической части, я готовлю распечатки кода/UI/архитектуры. Я их сам готовлю и пишу. Очень продуктивно обсуждать код, который нарушает многие принципы разработки с опытными разработчиками. Разбирать “проколы” и когда они могут быть приемлемыми.

🔥Переходим к самому собеседованию🔥

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

Я разбиваю собеседование на несколько условных секций - Знакомство - Контракт - Завязка - Техническая часть - Развязка

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

Контракт Я стараюсь “заключить контракт” (договоренности) с кандидатом о том, как мы будем общаться в ближайшее время: - Предлагаю общаться на ТЫ - Кандидат может перебивать меня - Он может задавать любые вопросы в любое время (как только пришли в голову) - Рассказываю адженду

Завязка Я прошу рассказать о лучшем/текущем проекте кандидата. В этот момент человек уверенно рассказывает о том что знает, уровень стресса падает и человек набирается уверенности.

По дороге я задаю вопросы касательно факторов 2 и 3. А как тебе ЭТО на твоем проекте, а как тебе ТО, а что для тебя лучше, а как это улучшить. Это я называю “через призму опыта кандидата”

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

Уточню. Список вопросов отсортирован в порядке приоритета по каждому фактору. Вопросы готовятся с запасом, не обязательно нужно ответить на все идеальная цифра 70%. Я стараюсь не “задрачивать” кандидата, он сам выбирает темы, которые подымать.

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

Развязка Так как я стремлюсь закончить собеседование на положительной ноте. Я спрашиваю о планах на ближайшее будущее, хотелки, пожелания, предпочтения и рассказываю чем конкретная позиция может помочь человеку в его стремлениях. В идеале 70%+ совпадений.

Важно‼️ Я стараюсь говорить с человеком на его языке‼️

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

Итог Этим тредом я НЕ призываю делать так же. Я выработал для себя успешную стратегию которую протестил на 100+ собеседованиях. Надеюсь, я подкинул вам мыслетоплива и вы возьмете что-то себе на заметку. Любая критика приветствуется - нет предела совершенству.

Уххх, затянулся тред. Благодарю, что дочитал. Добра тебе.

Среда


Общее развитие для карьерного роста Как всегда, поделюсь своим опытом и дам пару советов.
notion image

Лет 70 назад ты мог выбрать одну профессию на всю жизнь. Сейчас люди меняют направление 5-6 раз за свою жизнь. (С) Только общее развитие и уверенная база позволят легко лавировать в быстро меняющейся среде.

Я НЕ подразумеваю под общим развитие знание географии, химии, физики, языка и т.д. Для меня это немного другое. Я затрону два момента - Общее развитие хард скилов - Общее развитие софт скилов

Общее развитие в IT Что такое мистический T-Shaped инженер? В PSM сертификации есть прозрачный пример:
notion image

Как до этого дорасти? Сначала ты I-Shaped инженер, углубляешься в свое направление и становишься спецом. После этого ты начинаешь расти в ширь (во всех смыслах 😂 )
notion image

На этом классификация не заканчивается. Есть еще вариант M-Shaped инженера. В итоге имеем следующий набор:
notion image

Что бы стать T-Shaped инженером, я очень много общался, задавал вопросы, проводил время в других командах с людьми с другой специализации, наблюдал как люди работают и на что обращают внимание. Не стыдно не знать, стыдно не спросить (С)

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

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

Для того, что бы стать M-Shaped приходиться брать задачи других специализаций на себя. Настройка CI/CD для обеих мобильных платформ, написание бизнес требований, написание тест кейсов, создание мерж реквестов в репозитории бекенда и фронта и т.д.

Мне еще очень помогает походить на смежные конференции и узнавать какие тренды у соседей. ( Иногда за счет компании 💰 ) Доходило до смешного, отказали в регистрации на конфу, так как указал при регистрации специализацию отличную от темы конфы.

Сюда еще хочу добавить идею, которую услышал от @DAlooG. Я сам ее не придерживаюсь, но она достойна того, что бы ее озвучить. Когда вы строите планы по росту, обратите внимание на ДОМЕН, в котором вы работаете.

Алексей советует выбрать “свой” домен и расти в нем. Представьте, что вы M-Shaped инженер в домене информационной безопасности или банковском секторе. Да вам цены не будет. У Алексея даже есть доклад на эту тему “Мифический фуллстек разработчик”

Идем дальше. Общее развитие софт скилов Главный вопрос, как, мать его, развивать эти чертовы софт скилы?

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

Типов интеллекта у человека очень много, но выделяют несколько основных. В своем карьерном пути я сосредоточился на прокачивании каждого из них. Разберем каждый.
notion image

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

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

Из практики: Было у меня два студента с этим “слабым” интеллектом. С помощью алгоритмических задач мне удалось помочь им развить “программерское” мышление. В итоге оба успешно работают iOS разработчиками и доросли до мидлов. Я не верю в фразу “программирование - это не мое”.

Развивать этот интеллект мне помогают: - Шахматы - Скорочтение - Методики запоминания - Работа - Решение математических/алгоритмических задач

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

В 20 лет я знал английский на уровне elementary только из-за мысли “ну не суждено”. А оказалось, что за год я без особых усилий шагнул до Intermidiate. Моя теория - что нужно развивать все типы интеллекта получила положительное подкрепление.

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

Развивать этот интеллект мне помогают: - Игры в дискуссия/дебаты - StoryTelling кубики - Юмор (игра слов, каламбуры, абсурдный юмор и т.д.) - Пересказы прочитанного

Визуально-пространственный интеллект Лучше всего до студентов доходит тема, когда я рисую у доски. Я всегда им говорю: “Не знаешь как решить проблему? Визуализируй ее.”

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

Я продолжаю прокачивать это с помощью: - Конструкторов с ребенком - Ориентирования (в лабиринтах, на местности) - Обожаю рисовать (но не умею) - Составление диаграмм

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

Лайфхак: Командные виды спорта Занимаясь в команде, вы так же очень активно прокачиваете Межличностный интеллект. Поэтому выбирая соло-спорт, убедитесь, что межличностный тренируется.

Из практики: Года 2 назад, я столкнулся проблемой “тумана в голове”. Мысли теряются, фокуса нет. На тот момент я уже год ничем не занимался. Как только я вернулся к спорту, за две недели "туман" рассеялся. Для меня это главный мотиватор сейчас вставать в 7:15 не тренировку.

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

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

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

К сожалению я не могу четко оценить влияние этого интеллекта на карьеру, но могу с уверенностью сказать, что “музыкальный” слух не раз помогал на 1v1 разговорах. Поэтому если мечтали начать петь или научиться играть на чем либо, вперед!

Натуралистический интеллект Тут прикольно. Я сам долго не мог осознать, что за нах :) Я чисто из интереса решил попробовать и вот что вышло.

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

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

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

Мне помогло: - занимаю роль наблюдателя в жизненных ситуациях - Занятия рукопашного боя, которые научили контролировать эмоции - Стендфорский курс Роберта Сопольски, который перевернул мое мировоззрение - Просмотр документальных фильмов

Последний яркий пример: это просмотр документального фильма о гене неандертальцев, который добавляет еще одну щепотку в понимании/осознании расового вопроса.

Межличностный интеллект Умение общаться с людьми? Поставленная речь? Зачем вам это все? Достаточно пить с директором и получить повышение. Но для этого тоже нужен межличностный интеллект…

Умение общаться с людьми очень важный навык. Я его прокачивал всю жизнь занимаясь "организаторской" активностью. В школе - президент, в универе - киберспорт команды🎮 и решение проблем самостоятельно (а не через старосту). Я это описал, что бы ...

показать, что нет пределу совершенству, потому что в 25 лет я осознал, что нужно улучшить постановку речи и пошел на курсы ораторского мастерства, а затем на курсы актерского мастерства. Это очень положительно сказалось в управлении командами.

Я оставил этот интеллект напоследок, потому что именно он, на вопрос про зарплату, сможет договориться/сторговаться на сумму “о боже и это все мне?”.

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

Завершить этот тред я хочу фразой своего любимого учителя: “Во всем нужна сноровка, закалка, тренировка!”

Четверг


День 4: Секреты перформера Этому посвящено очень много выступлений/книг/статей. Я расскажу о своем личном подходе.
notion image

Я очень много тружусь. На данный момент мое время уходит на: - Семья - Работа - Конференция iOS Ukraine - YouTube канал - Лекции в ХПИ - Отдых - Сейчас еще @mobileunderhood

Первое правило - выгружать все из головы! Без разницы куда, в todo лист, на бумагу, в заметки, в другого человека :) и т.д. Почему это важно?

Ex: Вы заняты задачей 1. Мозг тратит энергию на ее выполнение. Прилетает задача 2. Теперь мозг тратит энергию на задачу 1 и удержание в памяти задачи 2. Прилетает задача 3. Теперь задача 1 + задачи 2,3. И чем больше задач прилетает тем сложнее это все удерживать. Выгружайте все!

В итоге у меня есть TODO лист, который я приоритизирую два раза в день. Где найти силы и мотивацию, что бы начать что-то делать из этого листа?

“Умная” литература утверждает, что у человека есть набор ресурсов, которые он тратит на право и на лево: деньги, власть, время, энергия и т.д. Их очень много, каждый выбирает те, которые подходят ему больше. Около 7-ми лет назад я наткнулся на то, что перевернуло мой мир.

Ресурс: ВОЛЯ

С того времени я не слышал, не видел и не натыкался на описание этого ресурса. Это был какой-то комментарий, к какому-то забытому блогу в глубинке интернета. Ссылок не найду…

Второе правило - контролирую ресурс Воли.

Куда он тратится? Каждый раз когда вы делаете что-то, что НЕ хотите, вы тратите этот ресурс. Вы встаете утром по будильнику? Минусанули его. Нужно ехать на работу в дождь? Еще раз минус. Не интересная работа? Минус, минус, минус. Сидите на диете? Опять минус.

Как его восстанавливать? Только отдых и сон. Все! Других способов нет!

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

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

Мне нравится заниматься конференцией и каналом на ютубе, я не трачу Волю на это. На работе: - Если я проснулся с полным запасом, тогда делаю задачи, которые требуют этого ресурса (не охота делать). - Если не успел восстановить его, тогда трачу время на интересные мне задачи.

Я планирую день отталкиваясь от этого.

Для меня это работает как аккумулятор, если сажать его полностью до нуля, то очень быстро теряется capacity. Стараюсь, что бы в конце дня оставалось ~25%, а потом заряжаю сном и отдыхом. Сapacity все равно теряется, но не так быстро, больше шансов дожить до отпуска и не выгореть.

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

Я много экспериментировал со сном. Перепробовал очень много разных методик, даже полифазный сон. Для меня, лучшей стратегией стал сон ~40-50 мин во время рабочего дня. + Обычный ночью. Перерыв: За 15 минут поел, 45 минут поспал.

Эта стратегия лучше всего себя показала во время полугодового промежутка, когда я трудился по ~13 часов в день.

Даже есть исследование, которое показало, что результат IQ теста выше у тех, кто спал днем от 30 до 50 минут. У тех кто спал меньше 30 или больше 50, результат теста не отличается от тех, кто не спал.

Что делать с тем, когда нужно, но ты уже не можешь? Я уже научился не доводить себя до предела, но что делать, если прям горит? “Не повторяйте в домашних условиях”

Работа на пределе Когда уже нет сил, фокуса, желания.

Что бы протянуть еще чуть чуть, во время труда я: - Жую жвачку ~30 минут - Затем крепкий чай ~30 минут - Затем громкая агрессивная бессмысленная музыка ~30 мин затем выключаю. И так по кругу. Я за один раз максимум выдерживал 6 часов такого ритма.

В такой период время идет 1:4. За каждый такой прожитый час, я выделяю 4 часа на восстановление.

Это мы поговорили о тактике, теперь стратегия. Жизнь - это марафон. Я бегу его с разной скоростью.

Есть участки на которых я очень сильно ускоряюсь, но после них всегда забочусь о том, что бы был участок в “медленном” темпе, что бы “отдышаться” и восстановить capacity.

Длина “быстрого” участка от недели до двух. Длинна участка “замедления” от недели до двух. Длинна участка восстановления минимум 1.5 недели.

Участок восстановления для меня как рыбалка. В этот момент я ожидаю “поклёвку”, когда прилетит какая-то крутая возможность. Тут важно не придумывать себе задачи, а именно анализировать проходящие возможности. Иначе, когда прийдет что-то крутое вы или будете заняты или не вывезете

На этом участке я работаю над своим “колесом жизни” и стараюсь его сбалансировать. На данный момент оно выглядит так. Полупрозрачные - это запланированная активность для роста.
notion image

В идеале это должен быть круг, ну может овал. У меня так и я работаю над этим.

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

Вас ждет на этой неделе: День 1: Менторство как инструмент роста День 2: Проведение собеседований День 3: Общее развитие для карьерного роста День 4: Секреты перформера День 5: Осознанность День 5: Будущее iOS разработки День 6: Гендерное равенство в разработке День 7: Общение
Прикольно, что никто не заметил два пятых дня. К черту осознанность. Поговорим о будущем. twitter.com/mobileunderhoo…

Пятница


День 5: Будущее iOS разработки Расскажу о своем видении будущего iOS разработки. Делать прогнозы - убивать свою репутацию(С) Ну что же, рискнем! Ныряем в тред.

Вы бы заценили, если бы я ничего не опубликовал, типо будущего нет?

Давайте отталкиваться от того, что есть на данный момент. - Swift 5+ с бинарной совместимостью - Apple продолжает выливать все в опенсорс - Swift сближается с C - Swift на Windows, Swift AWS Lambda Runtime (Теперь Swift есть на всех платформах) - Растет доля Swift UI в продакшене

Бинарная совместимость На мой взгляд (человека, который больше 4-х лет преподает), это очень сильно упростит вход в специализацию и увеличит количество разработчиков. Доля бесплатного/доступного/рабочего кода для обучения будет расти.

Swift сближается с C/С++. В ближайшем будущем мы будем иметь возможность напрямую работать с С/С++ кодом в Swift.

Почему это важно? Потому что перфоманс! Особенно для работы с графикой и сложных вычислений. Плюс, количество С/С++ кода в мире слишком много, что бы не использовать все эти наработки.

Размер бинарника продолжает падать. В скором будущем ожидаю, что размер бинарника будет +- такой же как в Objective-C.

Почему это важно? Есть прямая корреляция размера приложения с количеством установок. Это важно для маркетинга. Представьте, что размер приложения на ios будет в два раза меньше чем на android? Что выберут пользователи? ( это грубый пример )

Комьюнити продолжает расти. Мы уже видим, что комьюнити завезло Swift на винду. Теперь у Readle шаред код на всех платформах на Swift, настоящая swift кроссплатформа!!! Ожидаю экспоненциальный рост эффорта комьюнити в ближайшие 3-4 года

Почему это важно? Да потому, что сама Apple не вывезет и не успеет за кроссплатформой. Сообщество, это главный двигатель прогресса. Обратите внимание, что летом на флаттере было 7,5к открытых ишью, сейчас уже ~5к - это все комьюнити, только оно позволяет расти быстро и стабильно.

Swift Package Manager Его уже хорошо апнули, ожидаю, что через 3-4 года он полностью станет доминирующим менеджером зависимостей и вытеснит CocoaPods и Carthage.

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

А Apple беспокоится о времени компиляции. Посмотрите на релиз Swift 5.3, они и так уменьшили время компиляции, а так смогут взять еще один фактор под свое крыло.

Растет доля Swift UI в продакшене. C Xcode 12 вы можете собрать свое приложение на Swift UI сразу под iOS, iPadOS, MacOS. Swift UI под винду и линукс - это дело времени. Думаю альфу увидим через 3-4 года.

Почему это важно? Да потому что это позволит сделать на коленках MVP, который уже может начать приносить деньги! Вы посмотрите как PHP отлично вписался в парадигму стартапов, когда нужно быстро, на вчера и рабочее -> подняли раунд -> переписали на что-то нормальное 😂

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

Уже сейчас есть проекты, когда нет денег на бекенд разработчика и iOS-ник пишет и мобилку и бек. Sundel вообще уже на Swift сайты разрабатывает. Это возможно уже сегодня!

Лично я пришел в iOS разработку: - Это позволяет сразу видеть результат работы - Это позволяет создать полноценный продукт с нуля Apple делает ставку на привлечение новых разработчиков и похоже, что это работает!

Swift пришел на собеседование: - Swift, кем вы видите себя через 5 лет? - Вижу себя доминирующим на бекенде, фронтенде, мобилках, клаудах… и тут Swift проснулся.

Сейчас кросс-платформа составляет хорошую конкуренцию для Swift, за этот период они НЕ будут стоять на месте и тоже шагнут вперед. Мы увидим горы крутых достижений в iOS разработке и в кроссплатформе. Распределение сил изменится не критично. Game changing вещей не стоит ожидать.

В будущем будет проще стать T-Shaped инженером, так как в "базу" Swift войдут разные платформы, что будет вынуждать разбираться в "смежных" направлениях хоть немного.

Итог: Да какой там итог? Легенький пятничный тред перед сном, что бы помечтать и хорошо отдохнуть.

Добавлю только одну мысль. Раньше я думал, что идеальное время стать iOS разработчиком было во времена Swift 3. Я ошибался. Сейчас наилучшее время стать iOS разработчиком.

Совсем забыл за Xcode. Как я мог забыть за самый главный инструмент разработки рейтинг которого не превышал 3 звезды в сторе. Его улучшают с каждым годом и это заметно. Есть инфа из @iOSUkraine, что его выводят на новый уровень!!! Деталями не могу поделиться...

Скажу только, что развитие Xcode может ускорится в РАЗЫ! Почему это важно? Потому что этот фактор очень сильно влияет на "комфортность" разработки. Верю, что его рейтинг в ближайшие 2-3 года вырастит и удовольствие от разработки станет еще больше! И возможно появятся плагины 🤔

Суббота


Вы прособеседовали двух людей в свою команду. Тех и софт скилы примерно на одном уровне, возраст 25 лет, претендуют на одну и ту же ЗП. Кого вы бы взяли себе в команду?

День 6: Гендерное равенство в разработке Тема сложная, странная, но важная. В IT с этим проблем меньше, это радует. Но IT не существует в вакууме.

Есть международный Gender Inequality Index, за которым следит ООН. В СНГ странах этот индекс колеблется от 0.10 до 0.39. Это значит, что в этой стране конкретный пол имеет преимущество сразу от рождения.
notion image

Как показывают исследования, ни одна страна мира пока что не смогла полностью устранить разрыв, существующий между мужчинами и женщинами. Есть прямая корреляция в мире: У пола “с преимуществами” лучше успехи в математике, а у второго пола - в языках.

Исследование по школам показало, что чем выше индекс, тем чаще к доске вызывают “преимущественный” пол в этой стране. Мелочь, имеющая кумулятивный эффект. Чем выше индекс, тем больше рост домашнего насилия во время пандемии показало государство.

Страны бывают разные. В некоторых преимущество на стороне женщин, в других преимущество на стороне мужчин (таких большинство). В обоих случаях корреляция сохраняется для пола с “преимуществами”.

По данным ООН, разрыв в заработной плате мужчин и женщин составляет в среднем 37,8% (этот показатель сильно варьируется по странам — от 18,1% в Великобритании до 59,6% в Анголе)

В моем регионе: - Спрашивают на собеседованиях о будущей беременности (редко, но спрашивают) - Когда девушка владеет бизнесом, спрашивают: “А где тот, кто реально владеет?” (и не воспринимают как владельца) - Тыкают фразами “ты же девушка/мужик” (даже в IT)

Сергей Гуриев в одном из своих интервью сказал, что если бы перед ним стоял вопрос, взять на работу мужчину или женщину, при ~равных условиях, он нанял бы девушку. Аргументация: ей пришлось проделать более сложный путь, что бы добраться до этой вакансии -> более старательная.

Из своего (не репрезентативного) опыта: За 4 года я обучил большое количество людей и девушки более “результативны” в учебе. Более методичный подход к обучению, к выполнению домашних заданий и к проработке рекомендуемой литературы.

Среди моих студентов девушек меньшинство, но уровень “старательности” в среднем у них выше, чем у парней.

Я отец девочки и хочу, что бы она росла в более “гендерно-равном” обществе чем я, потому что это: - является одним из факторов достижения устойчивого развития и эффективного экономического роста - Возможность самореализации для обеих полов - Уменьшение насилия в обществе

Гендерное равенство полезно для нас с вами: - Разнополые команды показывают лучший перфоманс, чем однополые команды - Страны с наилучшим индексом гендерного равенства имеют и наивысший показатель счастья

- Исследования Catalyst и других бюро показывают: чем выше в компаниях гендерное равенство, тем лучше себя чувствуют сотрудники, тем выше продуктивность и удовлетворение работой, соответственно, меньше «текучка» кадров и их «выгорание».

Я не затрагивал вопросы влияния гендерного равенства на: - климат - мир во всем мире - политику - технологическое развитие - психологическое/физическое здоровье в обществе В ООН есть классные доклады на эти темы. Давайте сделаем мир лучше!

Воскресенье


Проведение собеседований В этом треде я расскажу про этапы: - Как я готовлюсь к проведению собеседований, на что обращаю внимание - Какие задачи ставлю перед собой - Как их провожу
Итоги недели: - Больше всего всех зацепил опрос про парня и девушку, это только подтверждает существование проблемы -twitter.com/mobileunderhoo… - Самый понравившийся тред недели “Проведение собеседований” -twitter.com/mobileunderhoo… Надеюсь, что эта неделя сделала ваш 2020 чуть лучше
notion image

Общее развитие для карьерного роста Как всегда, поделюсь своим опытом и дам пару советов. https://t.co/54MxJ2wsx2
- На втором месте “Общее развитие для карьерного роста” - twitter.com/mobileunderhoo…

Хотел спросить, а как вы относитесь к "борьбе" Apple с рекламным идентификатором? Сначала из Safari убрали, теперь в AppStore явно видно, что приложение его использует. Это же "магия", когда ты сказал что-то, а тебе сразу реклама в ФБ вылазит.
notion image

Не влезло в неделю "Как проходить собеседования", об этом в своем профиле (@VycheslavBeliy) будет тред на следующей неделе.

Так что, как неделя то прошла? А то по аналитике не понятно, потому что тред с мемасиками все заполонил 😂 Стоит продолжать писать в таком духе?

Молчание будет расценено как согласие 🤔😂

Ссылки