Один день айтишника
14.6K subscribers
62 photos
9 videos
310 links
Канал сообщества Осознанная Меркантильность: @om_assistant_robot
Задать вопрос: @m0rtymerr_support
Предложка — @one_IT_day_bot
Download Telegram
Как тебе могут сесть на шею, а потом еще сказать, что ты медленно ходишь.

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

Было это дело, наверное, около 2х лет назад. Работал я в рекламном проекте, проблемы были давно, но с ними можно было жить.
В вертикали QA начал происходить откровенный бардак(да и до этого в целом он тоже был) и понимание того, кто и чем должен был заниматься было весьма сомнительным.
Меня попросили помочь в тестировании довольно здоровенной фичи, а мне была нужна хорошая оценка в квартале, поэтому я решил помочь.
Что странно, команда QA, которая должна была этим заниматься была небольшой, а именно 3 человека вместе со мной(этого точно было мало).
Разными схемами вышло так, что по итогу все это тестировал я один, потому что у других "сейчас есть важные задачи".
Чтобы понимать контекст расскажу очень образно флоу тестирования. Нужно было составлять конфиг в виде json файла, прокидывать его на устройство и смотреть поведение системы. Дело не хитрое, но зная объем, довольно долгое.
Потратив недели на "помощь", я ушел на свой проект заниматься тем, чем должен был по обязанностям.

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

В общем то, кажется, что к кульминации я вас подвел.

Это был последний квартал, а это значит, что у всех горела жопа на тему KPI(в том числе и у меня). В какой то момент меня тегают в треде и говорят, что не понимают как тестировать и вообще почему этим не занимаюсь я???
Сказать, что я был в шоке это ничего не сказать. Тут то я совершил ошибку.
Один их этих ребят сказал: "А можете стоит просто показать, как это должно работать?"
На что я ответил: "А может не стоит учить меня работать?"
Казалось бы, фраза никак не задевает чьи то чувства, но соглашусь, она довольно токсичная.
Выброшена она была по причине того, что я и без этого был довольно уставшим, выгоревшим и раздраженным, а тут еще такое.
По итогу на ревью мне говорят, что я не уважаю коллег, оскорбляю их и не помогаю людям с меньшим уровнем компетенций. В свою защиту могу сказать, что все было разжевано, как детям и токсичность была допущена в вышеупомянутой фразе.
За это мне режут оценку в квартале(хотя критерия такого нет).
Это было последней каплей, после чего я сказал на ревью свое мнение и уволился(ну после премии конечно годовой).

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

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

Набравшись опыта, у себя в тг стараюсь делать уклон на софт скиллы, потому что штука это довольно важная. Приходи, услышимся - Паша и его QA WAY

Сообщество для входа и роста в IT
👍55🔥1612😁8🤡8
Типичный день бэкендера
Привет! Я - senior Go разработчик в одной из сберовских компаний. Сейчас подробно опишу типичный мой рабочий день:

*Утро*
1. 9:30–10:00 – Начало дня
• Проверка почты, уведомлений в мессенджерах и Джире.
• Быстрый просмотр вчерашнего прогресса команды (Merge Request'ы, новые баги, комментарии).
• Планирование задач на день: определение приоритетов, подготовка к митингам.
2. 10:00–10:30 – Дейли
• Ежедневная синхронизация с командой.
• Краткий отчет о том, что сделано, что планируется, какие есть блокеры.
• Прослушивание статусов коллег, чтобы при необходимости предложить помощь.
3. 10:30–11:00 – Работа с кодом
• Продолжение работы над задачей из спринта.
• Решение сложных архитектурных вопросов (например, проектирование нового сервиса для обработки большого объема транзакций).
• Общение с другими разработчиками и техлидом, если требуется уточнение по интеграции или взаимодействию модулей.

*День*
4. 11:00–11:40 – Code Review
• Просмотр МР'ов(merge request’ов) коллег.
• Обсуждение предложений по улучшению кода, архитектуры или производительности.
• Взаимодействие с ментором (если он есть) или консультация с junior-разработчиками.
5. 11:40–13:00 – Глубокая работа
• Активное программирование. Например:
• Разработка новой фичи (например, написание новой grpc-ручки в мобильном шлюзе с использованием кэша).
• Оптимизация производительности запросов к базе данных.
• Внедрение новых метрик в систему мониторинга.
6. 13:00–14:00 – Обед
• Время для отдыха, общения с коллегами в неформальной обстановке, обсуждения интересных технических новостей.
7. 14:00–15:00 – Груминг (в определенные дни спринта)
• Участие в обсуждении бэклога.
• Оценка задач с использованием сторипоинтов.
• Уточнение требований по доке из конфлюенса у системных и бизнес аналитиков.
• Деление больших задач на подзадачи.

*Вторая половина дня*
8. 15:00–16:30 – Продолжение разработки
• Доработка текущей фичи или задачи.
• Написание тестов (юнит-тесты, интеграционные тесты).
• Подготовка МР'ов для проверки.
9. 15:30–16:00 – Встречи 1:1
• 1:1 с тимлидом (раз в спринт):
• Обсуждаем личный прогресс.
• Уточненяем приоритеты в разработке(просмотр MR’ов либо же глубокое прогружение в текущую задачу).
• Получение обратной связи и обсуждение профессионального развития.
• 1:1 с Продактом (раз в месяц):
• Выяснение стратегических целей команды.
• Обсуждаем предложения по улучшению продукта.
10. 17:00–18:00 – Подготовка к следующему дню
• Финальная проверка прогресса.
• Обновление статусов задач в Jira.
• Резерв времени для исправления критических багов.
• Подготовка к вечернему релизу(если он планируется)

*Вечер*
11. 18:00–18:30 – Завершение дня
• Закрытие тасок в джире, если они завершены.
• Проверка расписания на следующий день.

*Особые дни*
• Ретроспектива (в конце спринта):
• Анализ того, что сработало хорошо и что нужно улучшить.
• Обсуждение изменений в процессах или инструментах.
• Начало нового спринта:
• Планирование задач на предстоящий спринт - Раскидывание задач по разработчикам/аналитикам.

Кстати, я консультирую по Go разработке и помогаю получить высокий(от миддла) грейд. Пиши, буду рад - @EdikMarch

Сообщество для входа и роста в IT
👍95🤯60💩36🤡2012🔥12😨6😁5🤔1
(1/2)
Всем привет, меня зовут Игорь и я аналитик  DWH. Нечасто тут пишут аналитики, думаю многим будет интересно.
Итак: один день из работы Аналитика DWH. И многие уже на этом этапе зададутся вопросом, что за это за аналитик такой? вот их развелось..) На самом аналитик DWH это просто более узкая специализация такой обширной роли как - Аналитик данных (Data analyst, сокращённо DA)
Чем он отличается от аналитика общего профиля? - Тем что работает в команде хранилища данных, развивает его, дорабатывает. Команда состоит из разработчиков (у нас это дата-инженеры (Data engineer, DE) аналитиков, и тимлида. Задачи поступают от бизнеса в виде запросов: мы хотим автоматизировать вот этот ручной отчёт, или хотим что бы у нас в автоматическом режиме считалась  рентабельность. Аналитику берет такой запрос в работу, идёт к бизнесу и уточняет все требования: что вы хотите считать, на каких данных, какие сценарии использования отчета, в каких разрезах вы хотите смотреть данные, уточняет и вместе с бизнесом формулирует алгоритм расчета: 1) какие берем данные 2) какие фильтры накладываем 3) какие поля выводим в итоговом отчете, как они формируются, как считаем выручку, прибыль, затраты рентабельность, что делаем с отменами чеков, возвратами и прочим. После сбора требований аналитик приступает к анализу источников, изучает то как хранятся данные как они обновляются, анализирует полноту данных и их качество. На следующем шаге аналитик готовит описание данных, так называемые S2T - Source To Target mapping, подготавливает модель данных в соответствии с требованиями и принятыми стандартами на хранилище, в модели описываются таблицы-сущности, их связи. Готовую модель обычно согласовывает архитектор данных, либо при его отсутствии тимлид или старший аналитик. После согласования задача по загрузке данных передается разработчикам, а аналитик приступает к следующему этапу, готов прототип SQL запросов которые будут формировать итоговый датасет (витрину данных). После написания SQL-прототипа, аналитик сам либо вместе с бизнесом тестирует результаты, данные смотрятся по всякому, рассматриваются краевые случаи, какие то особенные кейсы, после всех доработок и исправлении аналитик передает разработчику готовый SQL скрипт, который необходимо будет оптимизировать, и настроить регулярную загрузку в инструменте ETL. После вывода данных на прод, аналитик отдает бизнесу данные в итоговое тестирования, если все хорошо то можем считать задачу выполненной, вот и все! Это очень общее описание, на разных этапах могут быть разные доп работы, и прочее.
Ну так вот вернемся к мне. 30 лет, образование не IT, работал водителем автомобиля 3 класса🙂. Опыт работы в IT 2 года, на старте работал в конслалтинге, на различных проектах связанных с данными, через пол года работы попал на проект DWH, с тех пор работаю на таких проектах. из последних рабочих мест это X5 retail, Unilever, Райфайзенбанк, Алроса. На данный момент работаю в компании разрабатывающей ПО на различные рынки, в том числе западные. Рост зп за два года: 70к -> 190к -> 270к -> 460к на руки на последнем месте без учета премий, работа по ТК РФ.
🕗 09:00 Проснулся должен был приступить к работе, но после нового года сложно войти в рабочий ритм, поэтому принимаю волевое решение спать ещё где нибудь до 11:00
🕗 11:00 Просыпаюсь второй раз, проверяю что там в рабочих чатах- тишина. Иду пить кофе и завтракать. Ранее у меня на всех проектах были Дейли звонки по утрам, на этой работе такого нет, нет вообще никаких обязательных созвонов, все кто узнают об этом очень удивляются, а говорят аналитики только на звонках сидят)

Сообщество для входа и роста в IT
🔥48👍1614
(2/2)
🕗12:00 Открываю джиру смотрю что я там оставлял перед новым годом. Пара задач есть, вспоминаю что большую часть аналитики по этим задачам сделал ещё до н.г, специально оставил их в запасе что бы после нового года спокойно их посмотреть ещё раз и отдать в работу. В общем смотрю что там вообще нужно было сделать, какое я ТЗ подготовил для разрабов, все ли адекватно. Вроде все ок, но чё то не очень хочется как то отдавать задачу в работу в первый рабочий день года. Отдам завтра или уже на следующей неделе.
🕗14:00 Поотвечал бизнесу на вопросы которые задавали перед Н.Г, ну вроде все, новых задач тоже как то брать щас не хочется.
🕗15:00 Созвон с учеником. Заниматься обучением и менторством стал примерно год назад, сначала отработал на родственниках, потом решил попробовать помогать ребят с устройством за плату. Вообще самая главная мотивация была как раз в том что бы помогать людям освоить необходимый минимум навыков что бы начать работать прямо сейчас. Я проходил собесы и видел просто дикий спрос на аналитиков, что собственно и позвонило мне устроится на 460к, и это даже не потолок ЗП! При том что из хард скилов по сути один только SQL! Кстати какие у нас там щас самые прибыльные языки программирования? Go, Swift или старая добрая Java? в общем SQL может с ними посоревноваться 😂 С оговоркой на то что это вообще не язык программирования)
🕗16:30 Созвон закончил, закрываю ноутбук, с телефона если что мониторю джиру, рабочий мессенджер.
Ну вот и все! Вот такой после новогодний рабочий день, в этой части я познакомил вас с моей специальностью. В следующей части я расскажу что я делал для того что бы расти по зарплате, сколько я прошел собеседований, сколько секций я прошел в Яндекс и на какую сумму я получил оффер, а также будет больше рабочих задач! До встречи в следующем выпуске)

Если тебя интересуют данные, и хотел бы работать аналитиком пиши https://t.me/entityid

Сообщество для входа и роста в IT
48🔥24👍7🤔7
Подготовка к экзаменам это преступление / Забирай банк вопросов Островка

Я пытаюсь найти причины хейта публикации банка вопросов компаний, записей собеседований, советов по их прохождению. Реально, в чем проблема?

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

ЕГЭ
Люди начали строить бизнес вокруг подготовки к нему еще до введения экзамена. Сборники вопросов, сливы вопросов предстоящего ЕГЭ, Youtube каналы по решению вопросов, курсы по ускоренной подготовке к A, B, C части. Даже есть центры проведения репетиции ЕГЭ (по сути мок собеседование), где ты по всем стандартам решаешь экзамен из вопросов прошлых лет.
Пишет ли кто-то в эти места: "ууу сука, дети должны сами решать вопросы, нельзя их натаскивать, нельзя давать им подготовиться, пусть САМИ думают, нельзя задрачивать вопросы, они должны из общей школьной подготовки их уметь решать"?

1С сертификация
Опять же — курсы по подготовке, книги, тренажеры, центры обучения прохождения экзамену. Алло, сама компания 1C к своим экзаменам платно и готовит. Я вот тоже подумываю запустить сертификацию на волка, к которой буду готовить лично.
Кстати, если вы являетесь ярым фанатом государственных проверок и верите, что после введения РЕЕСТРА АЙТИШНИКОВ ВСЕХ ВОЛКОВ ЗАБАНЯТ УХ СУКА, то ознакомьтесь с ситуацией в 1C. Перемога не наступила, зато бабки мутятся из воздуха (не вами, а кабанами). Угадайте, кто откроет курсы по подготовке к гос сертификации айтишников первым 🐺
Идет ли кто-то громить центры подготовки, просит ли книжные магазины перестать продавать книги по подготовке? Возможно, компанию 1C отменили за бизнес по подготовке к собственным экзаменам (которые кстати тоже платные)?

IELTS
Я лично ходил на курсы по подготовке к сдаче IELTS в надежде прокачать свой английский. Представьте мое удивление после получения советов вида: "Всем похуй, что ты думаешь/знаешь, есть рекомендованная структура ответа, количество сложной лексики и грамматики, ожидаемое устройство предложений. Ты не должен думать/изобретать, просто задрочи эти лучшие практики и ты норм сдашь экзамен"
Но нет, погодите, зачем готовиться к экзамену? Надо просто хорошо знать язык и тогда без всяких подготовок к экзаменам ты все легко сдашь.
Во-первых, нет, в моей группе училась девушка с оксфордским произношением, но даже она охуевала от этих рекомендованных структур/слов/оборотов. Во-вторых, а зачем учиться язык целиком, если есть цель конкретно на сертификат натаскаться?

Это я к чему?

1) У людей, запрещающих вам срать готовиться к собеседованиям нет аргументов, а у вас теперь есть
2) Вот банк вопросов компании Островок. Внутри: Go, Python, SQL, Frontend, Management, System design, Вопросы на софты, Лайвкодинг, Инструкция собеседующего "как проводить собеседование"
3) Если у тебя есть доступ к банку вопросов твоей компании, оставь заявку, мы с тобой свяжемся.

Моя цель — сформировать и выложить полный банк вопросов. Может тогда компании поймут, что дрочить кандидатов ненужной теорией — неправильный способ собеседовать. Если эти вопросы есть у всех, тогда собеседование может пройти каждый, а значит в текущем виде оно не имеет смысла.
👍398🔥8
Ультимативный гайд по прохождению собеседований в IT

В нем ты узнаешь, как максимально приблизить конверсию из отклика в оффер к 100%. Мы с Александром Ильиным без лицемерного корпоративного булщита объяснили устройство текущего рынка. И по полочкам разложили, где и как срезать углы, чтобы быстрее получить работу мечты

https://youtu.be/tzSdiYZ52kI

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

Если ты не получишь хотя бы 3 полезных советов, мы вернем деньги.
35🔥17👍10👎1🤔1
Привет, я Женя, мне 19 лет, в айти я с 2022 года. Хочу рассказать как проходит мой день фронтенд-разработчика

Зарплата - 550к оклады + 40к премии (270к в бигтехе + 320к в банке)
Коммерческий опыт - 1.5 года. Начинал с фриланса в 16 лет и зарабатывал 30к в месяц, потом сам учил фронт, а как исполнилось 18 сразу нашел официальную работу
Учусь - нигде, никуда не поступал после 11 класса

Как проходит мой день с двумя работами:
9:00 - 9:10 - встаю
9:10 - 9:30 - утренняя рутина
9:30 - 9:50 - дейли в банке. Обычная канбан-доска и речь на 2 минуты что делал, что буду делать и есть ли проблемы
9:50 - 10:00 - пью кофе, добавляю в календарь все созвоны на сегодняший день и время когда я работаю на каждой работе с фулл фокусом. Делаю блоки серым цветом, а когда заканчиваю меняю цвет на синий. Это помогает мне думать, что я так продуктивнее работаю
10:00 - 11:30 - работаю. Проект чилловый - мигрируем с монолита на Реакт, поэтому работать получается 2 часа в день
11:30 - 12:00 - завтрак. Обычно ем после того как уже поработал, чтобы не засесть за видосы / стримы и потом не работать ночью
12:00 - 12:30 - дейли в бигтехе. Сначала смол ток, потом определяем кто сегодня ведет дейли
12:30 - 13:00 - лежу без сил на диване
13:00 - 16:00 - работаю. Проект сложный, в каждом микрофронте может быть разный стек. В основном делаем продуктовые фичи, которые мы поделили вместе со вторым фронтом. Все новые фичи обычно делаются в рамках сервисов, которые овнит наша команда, но бывает так что приходится взаимодействовать с другими командами
14:00 - 15:00 - пбр фичей 1 раз в неделю. Наш продукт-менеджер рассказывает чем мы будем заниматься в следующем спринте и показывает макеты, а разработка примерно накидывает сроки
16:00 - 17:00 - отвечаю всем в рабочих чатах, открываю мердж-реквесты, делаю ревью кода, меняю статусы задач и деплою на стенды
17:00 - 1:00 - свободное время, но бывает что приходится работать, если не успел что-то сделать утром или днем
1:00 - спать

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

P.S Все пруфы могу предоставить в лс
🔥109🤡98👍1714😁7🌭6🤯1
Пишу web на Python. У меня вышка и опыт в нефтегазе, в большой гос. компании. Начинал на Ямале, затем классический офис из 2000-х, который я с радостью ливнул. В нефтянке занимался управление стройкой, а потом цифровизацией.

31 год, есть любимая жена и годовалый сын. Сейчас я на позиции tech/team lead, но с акцентом на разработку. Из управленческих задач - ставлю и оцениваю tech-задачи для других команд: рефакторинг, оптимизация, архитектура. Скоро будет найм, появятся джуны/мидлы в прямом подчинении.

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

Далее о том, как проходит обычный рабочий день.

Встаю около 8, иногда чуть позже. Уже не помню, когда просыпался по будильнику. День начинаю с прогулки с собакой. Это позволяет не забывать выходить из 4 стен. За готовку отвечает супруга, завтракаем около 9, иногда позже (в качестве утреннего перерыва).

День начинаю с проверки дашбордов в Grafana. Если ничего критического нет - смотрю Slack. Там обсуждаем актуальные проблемы/задачи/. Задачи ведем в Monday. На неделе несколько созвонов, максимум - 30 минут. Самый ранний в 9 (1 раз в неделю), самый поздний - в районе обеда.

Далее либо занимаюсь горящими вопросами и проблемами либо разработкой. Беру задачу из спринта, включаю что-нибудь приятное в плеере и начинаю. Полюбил подход написания кода через тесты (Test-driven development), часто новую задачу начинаю с написания тестов.

Обедаем с супругой в диапазоне 12-14 часов. Обед дома дело быстрое так что остается свободное время. Его в течение дня использую на спорт (бег/турник) /прогулку с семьей / время с сыном. Если не укладываюсь по таймингу - доделываю работу вечером.

После обеда делаю таски, провожу код-ревью, собесы (если ведем найм). Летом иногда работаю на летней веранде, но там рабочее место не обустроено да и прямой солнечный свет мешает. Для работы долго подбирал регулируемый стол, кресло, периферию. Получилось не сразу, но результат того стоит.

Заканчиваю обычно во время. Если не прокрастинировать - все успеваю. Но когда я только начинал, приходилось работать по 10 и больше часов. Раз в месяц отвечаю за релиз и раз в неделю делаю правки на платформе. В эти дни к 20 часам возвращаюсь к работе. Обычно это 15 минут, но иногда до часа. Дольше - редко.

Вечером ужинаем, играем с сыном. Около 10 вечера - время детского купания и прогулки с собакой. Затем с супругой смотрим кино или играю в PS5. В последние дни с удовольствием проходим вместе It Takes Two. Идем спать районе полуночи.

Подробно о своем пути с фокусом на поиск ошибок в мышлении и когнитивных искажениях пишу у себя в блоге - @better_vars, подписывайтесь!

Сообщество для входа и роста в IT
89🔥41👍25🤡2
Лучшее — враг хорошего, или как я не получил оффер в BigTech (часть 1 из 2)

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

Несмотря на то, что первую “лычку” senior я получил лет 8 назад — я до сих пор не люблю собеседования. Научился не расстраиваться, научился даже немного ловить фан, но удовольствия они мне до сих пор не приносят.

Особенно не люблю вот эти сухие многоэтапные собесы в BigTech. Сначала тебя встречает HR:

– Почему решили сменить работу?
– Чем занимаетесь сейчас?
– Чего ожидаете от новой компании?

Слава всем фронтовым богам, что ушли в прошлое вопросы типа “где вы видите себя через 5 лет” — а то у меня от них лицо перекошенное становилось, и приходилось обратно домкратом выравнивать.

На самом деле, я тогда просто “приглядывался” к рынку. Но HR-ам такое не нравится — им нужны только "активные кандидаты". Поэтому включил режим "социально одобряемый разработчик":
"Хочу развития",
"Проект уходит в поддержку",
"Ищу вызовы".

Дальше пошли технические вопросы. Где-то 15 штук.
Старался угадывать формулировки, потому что можно ответить по сути правильно, но получить “не засчитано”.

На пару не ответил — например, забыл про stopImmediatePropagation. Проверил после — ни в одном моем проекте за последние годы этого метода не было.

Следующий этап — техническое интервью по JS и React.

Начали с душных задач на this и область видимости, потом пошёл классический Event Loop:

– setTimeout(..., 0)
– Promise.resolve().then(...)
– console.log

И укажи порядок порядок.

💩 Лучей поноса — авторам задач с вложенными ловушками. Такие штуки проверяют не знания, а внимательность в стрессе. А в стрессовом режиме вы в проде не работаете — зачем это ждать от кандидата?

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

Дальше — React. Пример с вложенными компонентами. Есть onClick, который меняет state. Спрашивают:
— какие компоненты перерендерятся?
— как это оптимизировать?

Ну там понятно: useMemo, useCallback, memo.
Решил — решил. Но не на автомате, а потому что вспомнил перед собесом.

Хотя на практике я так не пишу. Я уже давно пилю микрофронты на React + MobX. А там observer и так всё мемоизирует. Стейт и методы и так отделены — никаких нужд в useCallback.

Но спрашивают всё равно. Даже если в вакансии написано MobX — спросят про “чистый” React. Спрашиваю в ответ:

— А у вас в проекте MobX и используется useCallback?
— Нет, но это база. 🤷‍♂️

Последнее задание — сделать input, который отправляет запрос в API.
Важно не забыть:

– обработку ошибок,
– isLoading и индикатор загрузки (да, он называется троббер, и почти никто не знает этого слова),
– и не отправлять запрос на каждый ввод символа → debounce.

Решил, получил хороший фидбек.

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

👉 В этой компании найм устроен по-другому. У них сильно прокачанный IT HR-бренд, поэтому они могут позволить себе ещё пару этапов.

И какой этап они добавляют чаще всего?

Алгоритмы.

Третий этап. Созвон. Интервьюер говорит:

– Будет 3 задачи максимум.
– Нужно решить хотя бы 1–2.
– Главное — объяснять свои мысли.

Звучит честно. Но я-то знаю, как бывает:
решишь две — получишь “мидл+”
А я ведь хочу “сеньор+” или "техлид”, если у них есть такой грейд отдельный.

Продолжение ниже 👇
58👍43🔥17😁2
Почему я не получил оффер в BigTech (часть 2 из 2)

Окей. Формат понятен. Онлайн-редактор открыт. Настроение — боевое. В голове уже заранее мысленно прогоняю шаблон:
👉 “уточняем входные данные, обозначаем граничные случаи, набрасываем варианты, сравниваем по памяти и скорости, выбираем лучшее, пишем код, рефакторим, profit”.

Задача 1.
Есть два отсортированных массива.
Нужно вернуть элементы первого, которых нет во втором.

Пример:
diff([1, 2, 3], [2, 4]) → [1, 3]

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

Даже подискутировали, можно ли считать память O(1), если мы создаём результат. В общем — классический диалог по задачке. Пока знакомились, обсуждали регламент и решили первую задачу, на хронометре - 20 минут. Одна задача решена, ключевые навыки по лайвкодинг задачам продемонстрировал уже, дальше можно уже не повторяться в объяснении основ.


Задача 2.
Реализовать стек с методом getMin.

Это уже чуть интереснее. Обсуждаем:
— Два массива?
— А можно ли в один?
— Что, если удалить текущий минимум?
— Нужно ли возвращать null, если стек пуст?

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

На часах — уже 40+ минут. Чувствую, что время начинает поджимать. Но я старался максимально подробно комментировать решение.

Задача 3.
Классика: “найти длину самой длинной подстроки без повторяющихся символов”.

Пример:
abcabcbb → abc → длина 3

Окей. Тут всё просто — условие знакомое.
Сначала озвучиваю наивное решение: два вложенных цикла, Set внутри. Да, будет O(n^2), но работает.

Потом — оптимальное решение, на “скользящем окне” (тогда я ещё не знал, что оно так называется — просто знал, как работает 😄).
Используем Map, два указателя, обновляем максимальную длину — всё чётко.

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

Периодически спрашиваю интервьюера:
— “Всё понятно? Объяснять подробнее?”
Он отвечает:
— “Да, всё норм, продолжай.”

При этом он что-то печатает в фоне... может, чатится с коллегами, может, инцидент на проде. Кто знает. Я стараюсь не отвлекаться и довести до конца.
Финиш. Спрашиваю пару вещей про компанию, ответ — сухой:

“Проекты интересные. Мне нравится. Надо идти — у меня следующее интервью, уже третье”. Бывает.

Прошло 4 дня. Пишу сам HR:
— Когда следующий этап?
— “По итогам лайвкодинга не готовы продолжать.

Прошу подробностей. Молчит. Через два дня — снова пишу.

И получаю ответ:

“Вы претендовали на высокий грейд. Эксперт остался недоволен вашими комментариями к последней задаче.”

Комментариями. Не решением.

И тут меня прям переклинило.
Вот список фактов о себе на момент этого собеса:

– занимаюсь программированием с 10 класса
– в IT с 2008 года
– в разработке — с 2011
– Техлид фронта в МТС, после - в Иннотех
– преподавал фронтенд на онлайн-курсе 150+ учеников
– вёл блог, на тот момент — маленький, сейчас — 2к+ подписчиков
– YouTube-канал, который потом вырастет в 5+ млн просмотров.

Я не идеальный кандидат. Я не написал популярный фреймворк.
Но я точно не ноунейм без опыта.

Но отказ — всё равно получил.

Зачем я это рассказываю?
❗️ Не всегда поторопиться и решить всё что дают - выигрышная стратегия.
❗️ Отказ может получить любой. И это не значит, что ты слабый разработчик.

Если было интересно — подписывайся. Я рассказываю про собесы, frontend, React, лайвкодинг, карьеру и реальность в IT:
👉 https://t.me/+hCtbmQOsVjQ0YTFi
👍20657🔥40🤯10😁3💯1
🚀 Один день фронтендера: как я выживаю между кодом, спортзалом и тайными помощниками

Привет! Меня зовут Виталя, я фронтенд-разработчик. Хочу показать, как выглядит мой обычный рабочий день — без прикрас, но с парой лайфхаков.

🌅 Утро: будильник = режим

7:30 — звенит будильник. Когда-то прошел "школу здорового сна", с тех пор встаю и ложусь спать с строго определенное время

7:30–8:00 — умываюсь, завтракаю, чекаю сообщения

8:00–10:00 — иду в спортзал или гуляю до офиса с большим крюком через лес. В наушниках — скачанные с ютуба ролики про IT. Спорт считаю важной составляющей без которой не смог бы нормально держать ритм работы.

🏢 Офис, который не офис

10:00 — я в своем тайном логове. Да, у меня не просто офис, а целая квартира для работы (я даже снял про него отдельное видео — так он мне нравится!).

Первым делом — впускаю… помощника, включаю ноуты и логинюсь в корпоративные ВПН. До начала созвонов обычно все равно ничего толкового сделать не получается, поэтому утром решаю всякие бытовые вопросы (заказать себе носки с Озона, или какие-нибудь гаджеты для видеосьемки) Если это понедельник, то заказываю продукты в офис сразу на всю неделю

11:30–13:00 — дейлики, которые должны быть по 15 минут, но почему-то всегда длятся вечность. Особенно, если в команде снова драма (мы недавно выгнали бэкендера за токсичность, с тех пор общение резко оживилось).

13:15–14:15 — иду на обед. Иногда беру еду с собой, иногда хожу в кафе — главное, выйти из офиса и проветрить голову.

💻 Продуктивность или иллюзия?

14:15–18:30 — время кода. Мой проект — старый и скучный, но команда — огонь. А вот у помощника — новый и хайповый: тимлид решил впихнуть туда все самые современные технологии, зато общение с командой там не такое душевное. Обычно работы немного, бывает месяцами почти ничего не делаю. Но сейчас появилась большая таска, поэтому сижу дипворкаю, иногда отвлекаюсь обсудить что-нибудь с помошником.

18:30 — выгоняю помощника, логирую время и иду домой. 30 минут пешком — отлично помогает переключиться.

🌙 Вечер: семья, менторство и… маппеты?

19:30–21:30 — вечером обычно занимаюсь домом и семьёй, но сейчас часть времени забирают новые проекты — менторство и контент. Пишу в телеграм-канал, записываю ролики, общаюсь с учениками. Стараюсь переносить это на выходные, но пока не всегда получается.

21:30 — святое: смотрим Маппет-шоу с женой (без этого дня не бывает).

22:30 — отбой. Ровно в одно время, режим сна - это база!

🔥 Что будет дальше?

Так выглядит мой обычный день. Иногда добавляются дополнительные встречи — планирование, демо или ретро. Бывают и забавные моменты — например, когда к нам приходит новый бэкендер «на смотрины».

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

Если тебе интересно следить за моей историей — welcome в мой ТГ-канал и на Ютуб. Планы масштабные, будет интересно! 😊

Сообщество для входа и роста в IT
🤡101👍6225🔥10🤔8💩6👎3
Вы получили оффер, поздравляю! Как его не просрать?

Вроде основное испытание позади, но вдруг просыпаются страхи и тревожность. 

Что если вы прыгнули выше головы и не потянете уровень задач? Все вокруг такие умные, спросить не у кого, вдруг посчитают тупым?

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

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

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

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

К сожалению, твой начальник не делится ими с тобой, ведь они считаются "очевидными" и "понятными любому человеку с опытом". Но делимся мы.

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

https://youtu.be/r1lWP5rYVdk?si=rn0y5t7Jxc20sYZm

А тут подборка гайдов "че делать дальше" для тех, кто уже не тревожится от испыталки и хочет больше денег
31🔥18👍15😁2
Месяц токсичности

Ни у кого ничего интересного не происходит на работе?

Давайте-ка тогда объявляется месяц НЕНАВИСТИ

расскажите как и почему ваш бесит ваш коллега или начальник. Цензуры нет!

Истории сюда: @one_IT_day_bot
🔥37
Я CPO и меня заебало уже просто все

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

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

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

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

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

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

Сообщество для входа и роста в IT
🔥146😁4128😢13😨11👍9🤡5💩2💯1
Junior 2d artist in gamedev 500$

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

У меня худ образование + курс по 2d, что помог мне сделать портфолио. Еще был фриланс на Fiverr, пока его не заблочили в РФ. Другой мой опыт работы художником не релевантен для вакансий IT.
Весной 2024 года я устроилась художником в приложение по вакансии в ТГ канале. Сделала оплачиваемое тестовое, (потратила 2 дня и получила 3000р). Наше сотрудничество напоминало постоянный фриланс. Мне кидали задачи, я их делала в свободное время. Так, довольно чиллово, я там проработала полгода, получала ~12 тыс в месяц и совмещала с учёбой и другими делами. Потом это закончилось.
Я уже искала другую работу на hh (50 откликов), также напрямую писала компаниям на почту для сотрудничества (19 писем и 3 ответа). Хотела зп 70 тыс р. Сделала 6 тестовых. На какое-то тестовое я даже не получила ответа, зато 2 тестовых были оплачиваемыми. За первое я получила 7 тысяч руб, за второе 180$. Оба тестовых я делала больше недели по нескольку часов, было NDA и несколько правок. Первая компания дала реальное задание и добавила мою работу в игру, но отказала. Вторая предложила попробовать еще раз через полгода.
В другие компании было 3 собеса с hr. Я уже занизила свои ожидания к зп и согласилась на <500$, 5/2 удаленка. Было неоплачиваемое тестовое на 7 часов, собес с HR, собес с лидом. Оффер прислали на следующий день.
На этой работе меня многому научили в плане рабочих пайплайнов и требований к игровому арту для Unity. Первое задание под менторством лида я делала 4 дня, а спустя 2 месяца аналогичное за 5 часов, как и остальные художники. Загруженность большая. Я ожидала, что зп поднимут с изменением грейда после 3 месяцев. Грейд поменялся, зп нет. HR на мой вопрос ответил, что бюджет уже составлен и повышение зп возможно, если кто-то уволится. Я решила, что доработаю тут полгода и уволюсь. Мне нравится команда и задачи, но ситуация с зп удручает. Сделала акк на LinkedIn, заполняю, попробую искать там на Middle.

Интересны любые комментарии, спасибо)

Сообщество для входа и роста в IT
60🔥23👍8😢4😐33🤔1
Рабочий день Senior iOS Engineer стал короче

Я работаю удаленно в дубайской компании, которая не просто разрешает использовать ChatGPT, Cursor AI и др., так еще и очень пушит каждого разраба, чтоб тот использовал буквально ВСЕ AI-инструменты, которые помогут тому облегчить и ускорить работу, и постоянно призывает к ресерчу LLM-новинок, оплачивает корпоративные подписки на нейроночки и возмещает индивидуальные расходы на них

Про звонки рассказывать не буду, эту продуктовую шелуху вы и сами прекрасно знаете
Расскажу сколько времени я трачу на кодинг с моим друзьями, которых зовут Cursor AI и Claude 3.7 Sonnet!

Получаю задачу по созданию нового модуля (экрана) — иду в заметки и трачу пару часов на написание качественного промпта для Курсора с указанием эталонных модулей и сервисов, чтоб Курсор знал куда смотреть и как оформлять, затем добиваю дискуссию с AI-агентом постпромптами 2-3 часа и задача готова к ревью
Эта задача разбивается на столько дней, сколько дней в целом можно сопоставить сторипоинтам, в которые она оценена

Сэкономлено около 5-6 часов чистого времени (бывает и больше, зависит от сложности бизнес-логики)

Задача на написание тестов?

Обязательно иду писать их с помощью LLM: сейчас Курсор, до этого было чисто общение с Claude 3.5/3.7 Sonnet
По времени тут еще проще — за 1-2 часа задача готова, и это с учетом написания промпта
При оцененных сторипоинтах выигрыш времени солидный, т.к. тесты мы пишем 3-х видов — Unit, MVI, Snapshot тесты. Со всеми ними Курсор справляется хорошо при нормальном промпте и указании эталонных тестов из проекта

Нужно поправить баг?

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

Покрыть код аналитикой?

Пишу промпт около 15-20 минут и скармливаю LLM таблицу от аналитика, которая всегда прикрепляется к задаче. Ну или ее всегда можно запросить у аналитиков. Немного причесываю еще 30-40 минут
Если аналитика несложная, то можно отдать MR менее, чем за час, но кто будет так делать?))) Отдам завтра
Экономится еще пару часов на эту задачу

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

Среднестатический день разработчика УЖЕ сократился (у кого нет — задумайтесь!), а жизнь постоянно улучшается

Кстати, я делюсь полезными штуками у себя в канале (например, как не обжечься о LLM на старте пути), а так же менторю ребят до оффера с гарантиями. Тык сюда

Сообщество для входа и роста в IT
🤡6643👍24🔥10🤔3👎1
Рамки инфоцыганства: я — самый честный IT блогер?

Когда я впервые опубликовал ценности ОМ, досужие умы зацепились за "Радикальную честность"

ДА КАКАЯ ЧЕСТНОСТЬ, ТЫ Ж ОПЫТ КРУТИШЬ ))00)))


А я остаюсь самым честным IT блогером в СНГ. Ведь стандартные модели монетизации (курсы, школы, вебинары) накладывают на искренность блогера рамки:

"Я — компетентнее других"

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

Это не мой путь. Нельзя сделать крупнейшее IT сообщество, позиционируя себя как iOS разработчик. Чето бухтеть, доказывать, что я инженеристее инженер... Моей целью было создать сообщество, в котором контент буду гененировать уже не только я.
Сотни записей интервью, слитые вопросы на собеседование из крупных компаний, курсы и подборки материалов для новичков. В одиночку я бы не сделал и десятой доли от того, что мы смогли вместе. Сообщество ОМ вышло на уровень, когда опытные айтишники сами приходят в него делиться экспертизой. А если мне понадобится годный курс по X, я просто куплю его публикацию в ОМ у автора, ведь теперь у сообщества есть ресурсы и связи.

"99,(9)% выпускников устраивается на работу"

Спросите у любого продающего обучение "сколько выпускников получило работу?". И начинается:
- но ведь деньги не самоцель, мы тут качаем харды
- это смотря как считать...
- 99% из тех, кто закончили ВСЕ лекции и сдали ВСЕ экзамены устроились. А не закончивших не считаем, они сами плохо учились

Цель любого обучения — деньги. Люди покупают будущую зарплату за небольшое вложение сейчас. Поэтому в маркетинге у курсов "ПРОЙДИ И ЗАРАБАТЫВАЙ 300К". Язык программирования в отрыве от денег никому не нужен (исключение — хобби).
Получается, IT зарплатой покупателей маним, ей же оправдываем стоимость курса в 150к. Но трудоустройство не гарантируем, мелким шрифтом прописываем это. А если по-честному считать процент устроившихся, то получится ±10%.
Поэтому я не пошел по пути курсов, а оставил подписки.
Это удобнее вам — зашли, посмотрели контент, месяц есть на погружение. Если вдруг не понравилось — не страшно, потеряли цену ролла филадельфия.
Это удобнее мне — не надо пиздеть, что курс имба, мелким шрифтом писать условия невозврата денег.

"С наймом все хорошо"

Ведь если не все хорошо, то зачем тогда твой курс и IT в целом нужны? Топ моих любимых ответов:
- все хорошо, временные трудности, закончишь обучение у меня и как полетишь
- gроблемы только у тех кто не учится. Ты вот учись и будет все круто
- да, у всех плохо, но ВОТ У МОИХ ВЫПУСКНИКОВ ВСЕ ПИЗДАТО, все устроились. А как? Ну хочешь узнать, купи курс

Нет, с наймом не все хорошо и никогда не было. Это борьба маленького человека с играющей против правил системой. Ныть "АЖ ТРИСЕТ, СУУУКИ, ДАЙТЕ СЕКС РАБОТУ" никогда не было эффективной тактикой. А накрутка опыта была и остается имбой, но говорить про нее публично — потерять репутацию.
В этом проблема блогеров. Они берут деньги за вход в IT, а дать эффективных советов по взлому найма не могут.

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

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


Вместо фразы "я же говорил", скажу так:

Прими наконец личную ответственность за свою жизнь и карьеру. Найм — это борьба, без оружия там делать нечего. Вот 3 дня бесплатного доступа в сообщество, начни вооружаться. Не говори потом, что судьба несправедлива, она только что дала тебе шанс.
👍2715🤡11💩3🔥1
Сертификация айтишников / Ты не инженер без корочки с Госуслуг / HH фармит бабки на работягах

https://youtu.be/OQ95kmEkTGw

Ну что ребята, вот и пришел конец славному веку накрутки опыта. Теперь все мы будем обязаны подтвердить свою квалификацию... Ответив на 10 вопросов с вариантами ответа и порешав Leetcode.

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

Кстати, вот тут выложил сборник вопросов с тестирования и скрипт для обхода "проверки на списывание".
😁14👍4👎41🔥1