IT и инвестиции | Алексей Солонков
589 subscribers
39 photos
3 videos
45 links
Канал о том, как достичь успеха, вооружившись современными знаниями в ИТ
Download Telegram
Человек-тульский пряник: идеальный кандидат в IT, какой он?
У эйчаров есть такое понятие: «портрет идеального кандидата». Это список качеств, которые напрямую не связаны с профессиональными компетенциями человека, но помогают ему хорошо адаптироваться в компании и стать эффективным специалистом.
Список таких качеств мало меняется не только от должности к должности, но даже от компании к компании. Правила игры у всех плюс-минус одни и те же.
За эти качества кандидату могут простить многое: и недостаток опыта, и не совсем подходящие компетенции. У меня самого так было. Видел, что человек сырой, но инициативный — и брал его. Каждый раз такой кандидат быстро нагонял недостающий опыт и вырастал в хорошего спеца.

Что входит в портрет идеального кандидата для IT?
Конечно, это больше про софт-скилы. Но не только. Есть ещё базовые знания, которые помогают быстрее включаться в рабочие задачи. На них тоже обращают внимание.

1. Инициативность
Это показатель того, что человек любит выбранное дело и будет работать на совесть, а не из страха наказания.
Как проявляется на собеседовании?
• Широкий кругозор: человек знает больше, чем требует его специализация. Ему интересно разбираться в профессии и вникать в тонкости.
• У него есть проекты «для души»: например, учебные или экспериментальные работы, о которых он с увлечением рассказывает.
• Он сам активно задаёт вопросы про будущую работу и устройство процессов в компании.

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

3. Ориентация на интересы бизнеса
Она проявляется через неформальный подход к работе. Когда сотрудник не пытается сделать и забыть, а старается принести кому-то пользу.
Как проявляется на собеседовании?
• Человек задаёт дополнительные вопросы к тестовому заданию, чтобы лучше понять задачу и выявить её ограничения.
• Когда описывает предыдущий опыт, может объяснить, какую проблему решала его работа и как повлияла на конечный результат.

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

Это мой список качеств «идеального кандидата». Пока что он меня не подводил. Не важно, искал я работу сам или нанимал кого-то.
Подозреваю, что он неполный. Знаете другие важные качества идеального кандидата? Пишите о них в комментариях. А также делитесь, какие качества помогли вам устроиться на хорошую работу.
🔥8👍43👏1
В чём отличие джуна от синьора?
Для начала определимся, для чего вообще задают такой вопрос. Так мы сможем сформулировать информативный ответ.

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

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

Чтобы составить свой трек развития
Вот здесь начинается содержательный разговор, который может дать конкретную пользу: понимание, к какой точке стоит стремиться и в какую сторону прикладывать усилия.
Для меня сеньор — это сочетание 4 ключевых факторов:
1. Время: не всякий программист с пятилетним опытом — сеньор. Но всякий сеньор должен иметь не меньше 5 лет работы за плечами. Нужно время, чтобы сформировать и автоматизировать навыки разработки.
2. Сложность и разнообразие проектов, в которых участвовал разработчик. Сеньору важно знать и применять на практике разнообразные алгоритмы и паттерны проектирования. На однотипных задачах можно стать опытным спецом в конкретной задаче. Но вырасти в того, кто принимает решения по архитектуре проекта, не получится.
3. На каких стадиях специалист подключился к работе: MVP, продакшен, сопровождение. Сеньор — тот, кто может провести проект через все стадии самостоятельно.
4. Уровень личного влияния на проект. Джун согласует свои решения с другими специалистами. Сеньор может принимать решения за себя и свою команду.

Как вырасти в сеньора?
Пробовать новое: искать интересные проекты,
подключаться к разным стадиям разработки, изучать и внедрять новые приёмы. И дать себе время. Время на рост, время на обучение, время на то, чтобы развиваться.

Согласны с этим?
Пишите в комментариях, как вы определяете, кто такой сеньор, и как им стать.
👍15🔥6👎1👏1🤡1
Сложность управления разработкой на крупных проектах растёт экспоненциально. Она становится серьёзной проблемой и требует нестандартных подходов в организации труда.
Традиционное объединение программистов по специализации вызывает взрывной рост бюрократизации и усложнение согласования любых решений.
Один из способов справиться с проблемой — использование потоковых команд.

Что это такое?
Потоковые команды предполагают объединение специалистов вокруг сквозных задач. Группы могут быть междисциплинарными и привлекать разработчиков с разной квалификацией. Всё зависит от поставленной цели.
Главные плюсы такого подхода — это мобильность и ориентация на интересы бизнеса. Дополнительный бонус — развитие компетенций участников команды за счёт знакомства со смежными направлениями.

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

Минус потоковых команд
Это разобщённость между группами, которая грозит рассогласованием их результатов.
Чтобы координировать работу нескольких потоковых команд, необходима команда поддержки. Она согласовывает действия нескольких групп на разных уровнях. Например, занимается созданием общих ресурсов, создаёт единые стандарты разработки, помогает наладить коммуникацию между группами.

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

Интересна эта тема? Переходите на мою подробную статью. Там я описал признаки, отличающие потоковую команду от традиционной. А также, какую роль играют технические средства в организации автономных рабочих групп.
👍71🔥1👏1
Как я открыл своё дело

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

Начнём с того, что мой бизнес возник стихийно. Он стал продолжением работы на фрилансе: один из проектов для европейского заказчика перерос в длительное сотрудничество. Было это в 2018 году. Наверно, с того момента и можно отсчитывать мой путь предпринимателя.

4 года фирма спокойно развивалась. Штат рос. Работы хватало всем.

Но самое интересное было впереди.

По понятным причинам после февраля 2022 года нам пришлось переориентироваться на отечественный рынок.

С чем мы столкнулись?

Наша специфика — это высоконагруженные системы. Малому и среднему бизнесу в России они не нужны.

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

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

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

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

Стресс от того, что я не мог планировать будущее фирмы на 4 месяца меня вымотал. Через 1,5 года, я понял, что полностью выгорел и занимаюсь не тем.

Не было такого момента, когда я сказал: «Стоп», — и распустил команду. Просто довёл до конца проекты, выполнил свои финансовые обязательства и не стал искать новых заказчиков. Сейчас могу сказать, что Solonkov.team официально завершила работу.

Жалею ли я об этом периоде жизни?

Нет. Он научил меня многому, что я не получил бы в найме.

Думаю, чтобы описать, что именно, нужен отдельный пост. Так что продолжению быть. Ждите вторую часть )
🔥20👍7
Что ещё, кроме денег, дал мне опыт предпринимательства?

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

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

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

Умение делегировать
Не делать самому, а объяснить другому, что ты от него хочешь — это сложно. Ещё сложнее — создавать механизмы командной работы, которые будут повышать эффективность системы.
Пока сам не оказался в роли начальника, не понимал, как много сил это может отнимать.

Управление приоритетами
Это, наверное, самый сложный для меня урок. Долгое время я старался реагировать на все возможности, которые предоставляли обстоятельства.
Когда окончательно выгорел, понял: иногда нужно говорить «нет», чтобы не терять фокус на своих целях.

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

Я благодарен себе за то, что однажды решился открыть свою фирму. Бизнес сформировал меня как личность и профессионала.
А как вы относитесь к работе на себя?
👍11🔥4👏1
Стоит прочитать: Адитья Бхаргава «Грокаем алгоритмы»

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

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

В книге — 11 глав. Каждая содержит описание определёного типа алгоритмов. Для каждого типа есть иллюстрации, объясняющие на пальцах общий принцип работы, и примеры его реализации в коде. Примеры написаны на Питоне, но их легко понять, зная базовый синтаксис любого другого языка программирования.

«Грокаем алгоритмы» читается легко и не пугает сложными формулами. Но после неё основательные труды по алгоритмам заходят гораздо проще.

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

Освоили «Грокаем алгоритмы» и готовы двигаться дальше?
Стоит прочитать:

• Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн «Алгоритмы. Построение и анализ»,
• Н. Вирт «Алгоритмы и структуры данных»,
• Д. Кнут «Искусство программирования».

Наработать практику:
визуализация алгоритмов и структур данных
VisuAlgo
базы заданий
InterviewBit
LeetCode
CodeWars

Знаете другие хорошие ресурсы по алгоритмам? Делитесь в комментариях.
Что помогло вам изучить эту тему?
👍15🔥4
Почему не стоит бояться менять профессию?
Я не буду советовать смену профессии каждому, кто просто устал от своей работы. Сам в своё время переходил из сисадминов в программисты. Понимаю, как это трудно, особенно если уже есть финансовые обязательства и устоявшийся быт.
Такое решение должно учитывать все риски и последствия. Но есть 4 деструктивных страха, которые точно не стоит брать в расчёт.
Ко мне иногда обращаются люди, которые хотят перейти в IT из других профессий. Обычно у них присутствует как минимум один из них. И вот, что я им говорю:

Страшно начинать всё с нуля
Вы начинаете не с нуля: у вас есть проработанные софт-скиллы и широкий кругозор.
А в некоторых случаях предыдущий опыт работы может стать дополнительным бонусом. Например, я знаю программистов, которые ушли из разработки и пишут статьи для Хабра. Они не сильно потеряли в деньгах, но очень востребованы на рынке.

Я не в том возрасте
Совру, если скажу, что дискриминации по возрасту нет. Многие руководители с опаской смотрят на кандидата, если он начинает свою карьеру после 30. Но это не повод отказываться от своей мечты, а причина тщательнее продумать самопрезентацию. В ней вы должны отработать возражения, связанные с возрастом.
Ещё одно решение — начинать свою карьеру на фрилансе. Здесь ваш возраст никого не волнует.

Страшно не найти работу

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

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

Делитесь в комментариях, меняли когда-нибудь профессию? Какие страхи были у вас в тот момент, и как вы с ними справились?
👍10🔥4👏1
Про ЗОЖ и карьеру

У меня в жизни был период, когда я сам себе не нравился: были проблемы с лишним весом, болела спина, временами накатывала слабость.
Пытался решать проблемы разными способами:
• Ограничивал себя в еде — постоянно срывался и не мог удержать вес.
• Укреплял спину на тренировках — боли ушли, но возвращались время от времени.
• Повышенную утомляемость и проблемы с концентрацией «заливал» кофе — в моменте это помогало, но через несколько часов я снова был без сил.
• Пробовал всякие БАДы и приёмы биохакинга — вообще не почувствовал эффекта.

Не зная причин, я пытался работать со следствиями.
Качественно изменить ситуацию я смог только тогда, когда перестал заниматься самолечением и обратился к врачу.
То, о чём я сейчас напишу, не реклама и не призыв всем повторять за мной. Но лично мне помог интегративный врач-нутрициолог, Анна Павлова. Она выяснила, каких именно микроэлементов мне не хватает, и рассказала, как их компенсировать.
С помощью питания и комплекса витаминов мы уже убрали проблему утомляемости. Без усилий ушёл лишний вес: организм компенсировал недостаток нужных веществ, и желание переедать исчезло.
Сейчас занимаемся моей спиной. Источник проблем с позвоночником был в том, что не хватало аминокислот для восстановления хрящевой ткани. В моём случае из-за повреждения межпозвонковых дисков нагрузка в зале не только не помогала, но и могла стать причиной ещё больших проблем.
Поставил задачу на будущее — укрепить иммунитет и вылечить аллергию.

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

Согласны?
Пишите в комментариях, пользовались ли вы услугами наставников. Считаете ли эту практику эффективной?
👍8🔥3
Как подготовиться к собеседованию в IT
Каждое собеседование в IT уникально.
Понять по описанию вакансии, что ждёт на живой встрече, невозможно. Но можно спрогнозировать тип проверки, исходя из разновидности фирмы.

Крупные корпорации

Тип проверки: набор в армию.
Такие компании получают сотни резюме каждый день. Для отбора им нужно быстро отсеять основную массу неподходящих кандидатов. Не важно, что вместе с ними не пройдёт часть хороших соискателей. Оставшихся после проверки всё равно будет достаточно.
На собеседовании будет много вопросов на алгоритмы, структуры данных, паттерны проектирования.
Что подтянуть? Теоретическую базу, задачи на логику и креативность мышления.

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

Небольшая компания
Тип проверки: знакомство с родителями.
Здесь не заморачиваются по поводу общих правил отбора. Предпочитают действовать по ситуации.
Кто-то будет гонять по задачам. Кто-то — тестировать на знание методов. А кто-то — расспросит о предыдущем месте работы.
Но в целом, в таких фирмах очень ценят опыт и умение работать в команде. У компании не будет ресурсов, чтобы последовательно обучать новичка. Надо, чтобы он самостоятельно вникал в рабочие процессы и мог быстро наладить отношения с коллегами.
Что подтянуть? Продумать рассказ о предыдущем опыте так, чтобы он демонстрировал вашу самостоятельность, гибкость мышления и умение решать конфликты.

Мотивационный вывод в конце
Если вы не подошли какой-то конкретной компании — это не показатель вашей некомпетентности. Это просто не ваш тип. Наверняка где-то есть команда, для которой именно вы будете идеальным кандидатом.
👍1110👏1
Почему сложно изучать новое?

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


Что с этим делать?

Просто смириться и не стараться запомнить всё разом: прочитать, посмотреть, несколько раз повторить, опять посмотреть и попрактиковаться.
И при этом дробить большой материал на маленькие части.


Какие ошибки лучше не допускать?

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

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

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


Что может быть сложнее, чем учить новую информацию?

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

Научить другого
Не обязательно быть гуру в теме. Как только что-то поняли — поделитесь этим знанием с миром. Это помогает лучше запомнить материал и даёт положительное подкрепление: чувствуешь, что делаешь что-то важное и нужное для другого.

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


А вы любите учиться? Делитесь в комментариях, что вам даёт мотивацию изучать новое?
7👍3🔥2
Как это работает? Алгоритм быстрой сортировки

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

Алгоритм быстрой сортировки или алгоритм Хоара — один из самых эффективных способов распределить данные в порядке убывания или возрастания.

Как он устроен?
1. Все значения сравниваются с опорным элементом из массива. Как его выбрать — расскажу ниже.
2. Значения меньше опорного попадают в первый подмассив, значения больше либо равные — во второй.
3. Для первого и второго подмассивов назначается новый опорный элемент и алгоритм сортировки повторяется в каждом из них.
4. Алгоритм заканчивает работу, когда в каждом из подмассивов останется только один элемент.
На иллюстрации видно, как работает быстрая сортировка. Синяя линия обозначает высоту опорного элемента. Серый фон — зону, где сейчас работает алгоритм.

Проблемы

Легко заметить, что в основе алгоритма лежит рекурсия. При большом количестве шагов она потребует много памяти. Поэтому при использовании сортировки важно оптимизировать количество операций. Как?
Благодаря выбору опорного элемента.
В идеальной ситуации опорный элемент должен разделить данные в массиве на два равных блока. Так в каждом из них не будет возникать длинных цепочек рекурсии. При самом негативном сценарии в одном из блоков окажется один элемент, а в другом — все остальные. Этот шаг не повысит упорядоченности данных, но создаст дополнительный шаг рекурсии. Такое случается, если опорный элемент принимает самое большое или самое маленькое значение в выборке.
Грамотный выбор опорного элемента может сильно повлиять на эффективность алгоритма. В общем случае есть 3 пути выбора:
• крайний элемент в массиве,
• элемент из середины,
• медианный по значению элемент.

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

А вы используете быструю сортировку? Делитесь опытом в комментариях.
👍13🔥1
Как сохранить мотивацию в новом деле и не перегореть?

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

Что делать?
Бороться с деструктивными установками, которые пожирают мотивацию. Сегодня хочу поговорить о таких «внутренних демонах».

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

Потеря фокуса. Иногда надо напоминать себе, для чего мы вообще всё затевали.
Например, когда я менял профессию и сталкивался с неудачей, спрашивал себя: «Хочу ли я, чтобы всё осталось по-прежнему?» Ответ всегда был один: «Точно нет». Это помогало вернуться к занятиям несмотря на провал.

Тревожность. Неопределённость выматывает: справишься ли ты или нет — никто гарантий не даёт. Как при этом сохранить мотивацию? Мне помогла философия стоицизма.
Согласно ей, бессмысленно переживать о том, что нам не подвластно. Энергию надо направлять на то, что мы способны изменить. Если что-то меня тревожит, могу ли я на это повлиять? Если да, то как? Переживаю ли я о том, что важно мне, или я обслуживаю интересы других? Эти вопросы позволяют рационализировать тревогу и сосредоточиться на конкретных конструктивных шагах.

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

А вы сталкивались с выгоранием? Как с ним боролись?
🔥11👍2
Какой он, эффективный лидер?

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

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

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

Простота
Часто рабочие конфликты возникают из-за недопонимания. Кто-то не так озвучил мысль, кто-то не так услышал — и понеслось.
Руководителю важно уметь простым языком доносить сложные вещи.
Как этого добиться? Умышленно упрощать формулировки задач.
И расширять словарный запас за счёт чтения и письма.

Харизма
К харизматичные лидеры притягивают людей, как магнит.
Харизма не обязательно должна быть врождённой. Её можно развить сознательно.
Обратите внимание на внешность и осанку. Смотрите людям в глаза, когда общаетесь с ними. Внимательно слушайте, что говорят другие. Все это + целенаправленная работа над самооценкой добавит харизмы.

Слабые стороны
Слабости есть у всех. Но лидер умеет сглаживать их, подбирая людей, компенсирующих его недостатки.
Как сформировать объективное представление о своих слабых сторонах?
Регулярно спрашивайте о них у подчиненных, коллег и руководителей. Можно анонимно. Это больно, но даёт хороший толчок к личностному росту.

А кто для вас хороший руководитель?
👍7🔥42
Как это работает? Вероятностные структуры данных
Умение работать с ними повышает ваш уровень в глазах работодателя до невероятных высот. Собственно, вероятностные структуры — высшая лига в разработке.
Освоите их — и вы одной ногой синьор.

Что это такое?

Это структуры данных, которые используют вероятностные методы для предоставления приближенных или вероятностных ответов на определенные запросы.
Их используют для обработки огромных массивов данных, когда ресурсы памяти ограничены. Например, для фильтрации, дедупликации, подсчета уникальных элементов или частоты элементов.
При этом, данные могут быть распределены по множеству машин. Например, если разместить их на одной физически невозможно.
Цена за их высочайшую эффективность при низком потреблении ресурсов — согласие на определённую степень погрешности. Вероятностные структуры исключают ошибки одного рода, но допускают наличие ошибок другого рода.
К примеру, «фильтр Блума» позволяет точно ответить на вопрос НЕТ — такой элемент не содержится в базе и является уникальным. Однако, он лишь вероятно может ответить на вопрос ДА — такой элемент вероятно не является уникальным.

Как использовать на практике?
С их помощью решают задачи, в которых нужно эффективное хранение и обработка данных с допустимой погрешностью: обработка больших данных, системы кэширования, сетевая аналитика, алгоритмы машинного обучения.
Лично я использовал их в 2 случаях:
1. Для дедупликации значений, чтобы обеспечить семантику exactly once и убедиться, что значение встречается строго один раз.
2. Для построения антифрод-решений, когда нужно проверять невероятно огромные списки блэклистов «плохих» ip-адресов. Если ip-адрес не встречается в блэк-листе — он считается «хорошим».

Что изучить по теме?

Для начала советую изучить:
• Фильтр Блума,
• HyperLogLog,
• Count-Min Scetch.
Этого достаточно, чтобы знать тему на уровне крепкого мидла.

Интересно узнать подробнее? Ставьте палец вверх — я напишу продолжение.
👍13
4 способа, чтобы прокачать свою продуктивность
В своё время я глубоко погрузился в тему тайм-менеджмента и личной эффективности. Большинство техник мне не подошло. Но эти 4 я считаю своими маст-хэвами и сделал частью ежедневной рутины.

Информационная гигиена
Чтобы достичь пика концентрации, мозгу требуется 15 минут, чтобы потерять её — секунда.
Вывод очевиден: надо убрать всё, что отвлекает от работы. Иначе больше времени уйдёт на то, чтобы вникнуть в задачу, чем на саму работу.
Отвлекающим фактором часто становится деловая переписка.
Я выделяю 2 временных окна в день для ответов на сообщения и письма. Этого хватает, чтобы оставаться на связи, но не отвлекаться.

Регулярные перерывы
Практикую перерывы по 5 минут в конце каждого часа. Это освежает голову, даёт отдых глазам и в целом очень полезно для здоровья.
В чём суть?
Многие процессы в организме завязаны на движение. Не на усиленные нагрузки, а на простые наклоны, повороты, ходьбу.
Отток лимфы, выработка гормонов, обменные процессы — всё это работает, как часы, если время от времени просто вставать и как-то двигаться. Тренировки в зале не заменяют такую активность, а дополняют её.

Выделять время на планирование
Планирование — важная часть продуктивности. Конкретная методика не так важна. Важнее заниматься им регулярно.
А самая сложная часть планирования — выделить на него время. Ведь всегда есть дела поважнее.
Я смог справиться с этой проблемой, когда зафиксировал несдвигаемое время, которое посвящаю только планированию: 10 минут в день на текущие задачи + 1 час в неделю на масштабные планы.

Ставить задачи, а не цели

Цель — это ответ на вопрос зачем что-то делать.
Задача — ответ на вопрос как.
Конечно, и тот и то важно. Но часто их путают и ограничиваются формулированием цели.
Правильная постановка задачи содержит в себе ответы на вопросы:
• что сделать
• к какому сроку и
• какими средствами
Это позволяет действовать осознанно и планомерно, заранее продумывая риски и варианты решения.

А что помогает вам оставаться продуктивными?
👍193🔥3
Что почитать в новогодние праздники? А. Швец «Погружение в паттерны проектирования»
Если ищете, что почитать на долгих выходных, обратите внимание на эту книгу.

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

Как устроена книга?
Книга описывает 22 классических паттерна и 8 принципов проектирования, на которых они основаны.
Каждая глава начинается с разбора определённой проблемы, возникающей при проектировании, и описывает шаги к решению с помощью одного из паттернов.
Такой подход — от проблемы к решению, — позволяет легче понять логику самого паттерна и те трудности, которые возникают при разработке определённого типа программ.
В конце каждой главы также есть примеры реализации паттерна, разбор его плюсов и минусов, а также обзор взаимосвязей с другими паттернами.
Книгу можно читать последовательно, а можно выборочно — только нужные главы.
Многие паттерны связаны между собой, поэтому можно переходить по связанным темам и изучать только то, что актуально для вас.

Кому подойдёт?
Это идеальное пособие для тех, кто только начинает изучать паттерны. Она написана легко, с большим количеством примеров кода и ситуаций, где данное решение может пригодиться.
Также советую её всем, кто тяжело втягивается в работу после долгих выходных. Книга поможет держать мозг в тонусе, но не перенапряжёт голову. Так что 8 января будете бесить коллег продуктивностью и энтузиазмом)
🔥10
Новый год айтишника, какой он?

Подготовил для вас подборку мемов про айтишный Новый год. Не всё же на серьёзные темы писать )

Делитесь в комментариях своими любимыми мемами про программистов. Пусть в новом году будет больше поводов искренне посмеяться.

Всех с наступающим!
До встречи в 2024
🔥113