Сентябрь 2023:
✅ Принял с командой участие во внутреннем хакатоне. Главный приз не взяли, но по голосованию зрителей вошли в топ 3
✅ Поучаствовал в роли наблюдателя на 2-х технических собеседованиях (еще несколько и начну сам проводить)
✅ Закончил фриланс-проект, которым занимался по вечерам (полезный опыт, но сложно совмещать с фул-таймом, поэтому важно не перегружать себя подобной доп. нагрузкой, а отдыхать в свободное время)
✅ Пробую читать тех. литературу по новой системе: +10мин. в день и заметка о том, что нового узнал (или о чем читал, если все уже известно)
✅ Написал пазл-бота, который публикует очередную задачку в канал Mattermost (в планах добавить к нему расписание и перевести на VPS-сервер)
—
Планы на октябрь:
🔖 Приступить к самостоятельному проведению собеседований
🔖 Прочитать более половины выбранной книги по специфике Go
🔖 Расширить сеть на линкедине на 15-20% (дойти до 450+ коннектов)
🔖 Нарисовать архитектуру для пазл-бота и подумать про деплой на VPS-сервер
#результаты
✅ Принял с командой участие во внутреннем хакатоне. Главный приз не взяли, но по голосованию зрителей вошли в топ 3
✅ Поучаствовал в роли наблюдателя на 2-х технических собеседованиях (еще несколько и начну сам проводить)
✅ Закончил фриланс-проект, которым занимался по вечерам (полезный опыт, но сложно совмещать с фул-таймом, поэтому важно не перегружать себя подобной доп. нагрузкой, а отдыхать в свободное время)
✅ Пробую читать тех. литературу по новой системе: +10мин. в день и заметка о том, что нового узнал (или о чем читал, если все уже известно)
✅ Написал пазл-бота, который публикует очередную задачку в канал Mattermost (в планах добавить к нему расписание и перевести на VPS-сервер)
—
Планы на октябрь:
🔖 Приступить к самостоятельному проведению собеседований
🔖 Прочитать более половины выбранной книги по специфике Go
🔖 Расширить сеть на линкедине на 15-20% (дойти до 450+ коннектов)
🔖 Нарисовать архитектуру для пазл-бота и подумать про деплой на VPS-сервер
#результаты
Telegram
Новиков > путь в Big Tech
Шахматы [2/2]
Все это время я старался +- регулярно публиковать шахматные задачки, которые Личесс обновляет каждый день. Это занимало 2-3 минуты времени, но я понимал, что и это время можно сократить до нуля. И я написал небольшую программку, которой делегировал…
Все это время я старался +- регулярно публиковать шахматные задачки, которые Личесс обновляет каждый день. Это занимало 2-3 минуты времени, но я понимал, что и это время можно сократить до нуля. И я написал небольшую программку, которой делегировал…
Pointer Receiver 🆚 Value Receiver
Вчера проводил техническое собеседование по платформе Go и во время решения кандидатом задачи задал дополнительный вопрос: в чем отличие между получателем указателя в методе (pointer receiver) от обычного (value receiver)?
Вопрос поставил в тупик…
Как писал Дейв Чейни (гуру по Go) существует 3 аксиомы касательно значений в языке:
1. Каждая переменная - это значение
2. Каждое присваивание - это копия
3. Каждый параметр и возвращаемое значение - копия
Все очень просто. Если есть необходимость изменять состояние передаваемого объекта (помним, что метод в Go - это синтаксический сахар над функцией, который передает ресивер первым аргументом в нее), то используем Pointer Receiver.
В общем случае, практичнее использовать именно Pointer Receiver: он универсальнее и гораздо эффективнее при работе с большими структурами.
Важно соблюдать единый стиль: если у вас один из методов принимает указатель, то и остальные также должны его принимать!
Попробовать можно здесь.
#go
Вчера проводил техническое собеседование по платформе Go и во время решения кандидатом задачи задал дополнительный вопрос: в чем отличие между получателем указателя в методе (pointer receiver) от обычного (value receiver)?
Вопрос поставил в тупик…
Как писал Дейв Чейни (гуру по Go) существует 3 аксиомы касательно значений в языке:
1. Каждая переменная - это значение
2. Каждое присваивание - это копия
3. Каждый параметр и возвращаемое значение - копия
Все очень просто. Если есть необходимость изменять состояние передаваемого объекта (помним, что метод в Go - это синтаксический сахар над функцией, который передает ресивер первым аргументом в нее), то используем Pointer Receiver.
В общем случае, практичнее использовать именно Pointer Receiver: он универсальнее и гораздо эффективнее при работе с большими структурами.
Важно соблюдать единый стиль: если у вас один из методов принимает указатель, то и остальные также должны его принимать!
Попробовать можно здесь.
#go
Ребрендинг.
В прошлую пятницу на работе посетил внутреннюю встречу посвященную развитию своего блога. Обсуждали позиционирование, целевую аудиторию и прочее.
Встреча заставила меня задуматься о том, для чего я пишу. 3 года назад, когда я только начинал, это было на 100% для себя. Невероятно интересно было рефлексировать и смотреть из будущего на свои посты из прошлого.
Сейчас я понимаю, что мой опыт может быть полезен кому-то еще, а для этого нужно постараться захватить читателя и больше внимания уделять форме и содержанию постов.
В первую очередь я хочу сделать канал более персонализированным, чтобы заслужить доверие, для этого меняю:
1) Название
2) Описание
3) Фото
До конца октября планирую еще поработать с закрепленными сообщениями, чтобы навигация по каналу была более дружелюбная и у потенциального читателя сразу могло формироваться представление о том, что он может здесь увидеть и какой экспертизой обладает автор.
Встреча заставила меня задуматься о том, для чего я пишу. 3 года назад, когда я только начинал, это было на 100% для себя. Невероятно интересно было рефлексировать и смотреть из будущего на свои посты из прошлого.
Сейчас я понимаю, что мой опыт может быть полезен кому-то еще, а для этого нужно постараться захватить читателя и больше внимания уделять форме и содержанию постов.
В первую очередь я хочу сделать канал более персонализированным, чтобы заслужить доверие, для этого меняю:
1) Название
2) Описание
3) Фото
До конца октября планирую еще поработать с закрепленными сообщениями, чтобы навигация по каналу была более дружелюбная и у потенциального читателя сразу могло формироваться представление о том, что он может здесь увидеть и какой экспертизой обладает автор.
👍3🔥2
Chess Daily Puzzle v1.0.4 !
Завершил написание небольшого проекта по публикации шахматных задачек в корпоративный канал.
Основным вызовом стал деплой на удаленный сервер (VPS). Я постоянно откладывал эту задачу, так как не понимал как это сделать лучшим образом. Сперва был убежден, что все должно быть в контейнере: заворачивал проект в докер, писал докеркомпоз для удобного деплоя...
Долгое время у меня был только проект на Go и как его результат - выполняемый файл, который я запускал каждые 2 дня вручную через консоль. Процесс занимал примерно 1 секунду времени, но это все равно было не удобно, так как нужно было про это помнить.
Когда я решил все-таки нарисовать архитектуру проекта, то все разрешилось само-собой. Я, наконец, понял, что докер для моего проекта - это какой-то оверинжениринг и не нужно делать сложно там, где все просто.
Сейчас на VPS-сервере настроен простой крон - демон, который по определенным дням запускает исполняемый файлик, рядом с которым хранит логи о выполнении программы.
Завершил написание небольшого проекта по публикации шахматных задачек в корпоративный канал.
Основным вызовом стал деплой на удаленный сервер (VPS). Я постоянно откладывал эту задачу, так как не понимал как это сделать лучшим образом. Сперва был убежден, что все должно быть в контейнере: заворачивал проект в докер, писал докеркомпоз для удобного деплоя...
Долгое время у меня был только проект на Go и как его результат - выполняемый файл, который я запускал каждые 2 дня вручную через консоль. Процесс занимал примерно 1 секунду времени, но это все равно было не удобно, так как нужно было про это помнить.
Когда я решил все-таки нарисовать архитектуру проекта, то все разрешилось само-собой. Я, наконец, понял, что докер для моего проекта - это какой-то оверинжениринг и не нужно делать сложно там, где все просто.
Сейчас на VPS-сервере настроен простой крон - демон, который по определенным дням запускает исполняемый файлик, рядом с которым хранит логи о выполнении программы.
Октябрь 2023:
📌 Крайне продуктивный месяц получился. Неожиданно для себя удалось перейти на следующий грейд и тем самым досрочно выполнить основную годовую цель!
✅ 🏆 E3 -> E4
✅ Самостоятельно провел 2 собеседования (скоринг) и 5 - в качестве второго интервьюера (скоринг + платформа). Как проходит отбор инженеров в Авито можно прочитать здесь
✅ Расширил линкедин до 454 коннекта (цель 500, до конца года думаю закрыть)
✅ Нарисовал архитектуру для пазл-бота и развернул его на VPS-сервере
✅ Помог команде Tech PR со съемками ролика к неделе бэкенда на Хабре ;)
✅ Прочитал более половины книги “Get Programming with Go”. Наверное, лучше сказать просканировал, так как 99% информации было знакомо и пропускал блоки с заданиями, которых очень много. Крайне рекомендую эту книгу тем, кто только осваивает Go. Обязательно выполнять все задания и выкладывать себе на гитхаб. Для более опытных читателей книга будет скучновата.
✅ Начал решать литкод в конце месяца, чтобы не терять навык. +1 решенная задача в копилку
✅ Завершил курс по императивной модели программирования (ВШПСБ)
✅ Провел ребрендинг канала
—
Планы на ноябрь:
🔖 Пройти корпоративный тренажер по информационной безопасности на языке Go
🔖 Завершить более половины курса по Объектной модели (ВШПСБ)
🔖 Решить 12 задачек на литкоде
🔖 Дочитать текущую книгу по Go и возобновить прочтение книги Криса Ричардсона «Микросервисы»
🔖 Вдумчиво изучать материалы из email-рассылки HighLoad++ Junior (делать заметки)
🔖 Принять участие в Highload++. Цели: нетворкинг, заряд мотивацией и новые знания / опыт.
#результаты
📌 Крайне продуктивный месяц получился. Неожиданно для себя удалось перейти на следующий грейд и тем самым досрочно выполнить основную годовую цель!
✅ 🏆 E3 -> E4
✅ Самостоятельно провел 2 собеседования (скоринг) и 5 - в качестве второго интервьюера (скоринг + платформа). Как проходит отбор инженеров в Авито можно прочитать здесь
✅ Расширил линкедин до 454 коннекта (цель 500, до конца года думаю закрыть)
✅ Нарисовал архитектуру для пазл-бота и развернул его на VPS-сервере
✅ Помог команде Tech PR со съемками ролика к неделе бэкенда на Хабре ;)
✅ Прочитал более половины книги “Get Programming with Go”. Наверное, лучше сказать просканировал, так как 99% информации было знакомо и пропускал блоки с заданиями, которых очень много. Крайне рекомендую эту книгу тем, кто только осваивает Go. Обязательно выполнять все задания и выкладывать себе на гитхаб. Для более опытных читателей книга будет скучновата.
✅ Начал решать литкод в конце месяца, чтобы не терять навык. +1 решенная задача в копилку
✅ Завершил курс по императивной модели программирования (ВШПСБ)
✅ Провел ребрендинг канала
—
Планы на ноябрь:
🔖 Пройти корпоративный тренажер по информационной безопасности на языке Go
🔖 Завершить более половины курса по Объектной модели (ВШПСБ)
🔖 Решить 12 задачек на литкоде
🔖 Дочитать текущую книгу по Go и возобновить прочтение книги Криса Ричардсона «Микросервисы»
🔖 Вдумчиво изучать материалы из email-рассылки HighLoad++ Junior (делать заметки)
🔖 Принять участие в Highload++. Цели: нетворкинг, заряд мотивацией и новые знания / опыт.
#результаты
🔥2👍1
13-19 ноября Хабр проводит неделю бэкенда
И мне удалось поучастовать в ней как спикер от Авито, записав питч.
За 3 минуты я постарался рассказать все то, чем занимается продуктовый бэкенд инженер в компании.
Интересно, что даже среди разработчиков одного направления, например, бэкенд - есть своя специфика.
Продуктовый разработчик сильно отличается от системного или от разработчика инфраструктуры, поэтому на это также важно обращать внимание при поиске работы.
Лично я раньше про это совершенно не задумывался. Многие не задумываются также и злятся, когда их резюме без опыта не просматривают несмотря на то, что они контрибьютят в опенсорс с 5 лет. Но именно этим и обусловлен пресловутый "коммерческий опыт от года", про который пишут в вакансиях.
В продуктовой команде со временем начинаешь абстрагироваться от непосредственной разработки и начинаешь думать про TTM и метрики AB-тестов.
О продуктовой специфике, с которой сталкивается разработчик, обязательно буду писать.
И мне удалось поучастовать в ней как спикер от Авито, записав питч.
За 3 минуты я постарался рассказать все то, чем занимается продуктовый бэкенд инженер в компании.
Интересно, что даже среди разработчиков одного направления, например, бэкенд - есть своя специфика.
Продуктовый разработчик сильно отличается от системного или от разработчика инфраструктуры, поэтому на это также важно обращать внимание при поиске работы.
Лично я раньше про это совершенно не задумывался. Многие не задумываются также и злятся, когда их резюме без опыта не просматривают несмотря на то, что они контрибьютят в опенсорс с 5 лет. Но именно этим и обусловлен пресловутый "коммерческий опыт от года", про который пишут в вакансиях.
В продуктовой команде со временем начинаешь абстрагироваться от непосредственной разработки и начинаешь думать про TTM и метрики AB-тестов.
О продуктовой специфике, с которой сталкивается разработчик, обязательно буду писать.
👍2
Что выведет программа?
Вопрос, который вы, скорее всего, услышите, если будете проходить техническое интервью на Go-разработчика.
Именно на подобных вопросах любят ловить кандидатов, проверяя как хорошо они знакомы с языком.
Во второй функции представлено именованное возвращаемое значение. Что это такое и почему лучше с ними не связываться в боевом коде хорошо написано в статье.
Подсказка:дефер вызывается после вычисления результата функции. Таким образом, в первом случае возвращаемая переменная и переменная, к которой добавляется 5, - это уже 2 разные переменные. В то время как вторая функция работает все время с одной и той же переменной.
Рекомендую такие задачи проговаривать вслух построчно, анализируя что и в каком порядке выполняется. Всегда задавайте вопрос себе: работаем ли мы со значением или с ссылкой.
<песочница>
#go
Вопрос, который вы, скорее всего, услышите, если будете проходить техническое интервью на Go-разработчика.
Именно на подобных вопросах любят ловить кандидатов, проверяя как хорошо они знакомы с языком.
Во второй функции представлено именованное возвращаемое значение. Что это такое и почему лучше с ними не связываться в боевом коде хорошо написано в статье.
Подсказка:
Рекомендую такие задачи проговаривать вслух построчно, анализируя что и в каком порядке выполняется. Всегда задавайте вопрос себе: работаем ли мы со значением или с ссылкой.
<песочница>
#go
👍2
Одна из побочных целей '23 - решить 15 задачек на литкоде. За весь год решил всего две и вот под конец октября решил все-таки добрать количество.
Амбициозно было думать, что за ноябрь наберу еще 12. На текущий момент добавил только 4.
При этом, очень легко потерять мотивацию, когда встречаешь задачу, на которую тратишь несколько часов времени.
Какие выводы можно сделать:
- решение алго-задач - навык, который нужно тренировать регулярно, чтобы легко проходить секцию лайв-кодинга на собеседовании в серьезную компанию
- в шахматах есть дебюты, знание которых необходимо для успешной игры, а в подобных задачах - паттерны, помогающие видеть закономерности между задачами и успешно их решать; в заметках держу курс, который хочется пройти со временем
- в задачах на литкоде уровень medium иногда проще, чем easy
Основная мысль такая: если за 30-40 минут задача не поддается, то нужно отвлечься/погулять. Крайне вероятно, что есть усталость, которая не позволяет ее решить.
Амбициозно было думать, что за ноябрь наберу еще 12. На текущий момент добавил только 4.
При этом, очень легко потерять мотивацию, когда встречаешь задачу, на которую тратишь несколько часов времени.
Какие выводы можно сделать:
- решение алго-задач - навык, который нужно тренировать регулярно, чтобы легко проходить секцию лайв-кодинга на собеседовании в серьезную компанию
- в шахматах есть дебюты, знание которых необходимо для успешной игры, а в подобных задачах - паттерны, помогающие видеть закономерности между задачами и успешно их решать; в заметках держу курс, который хочется пройти со временем
- в задачах на литкоде уровень medium иногда проще, чем easy
Основная мысль такая: если за 30-40 минут задача не поддается, то нужно отвлечься/погулять. Крайне вероятно, что есть усталость, которая не позволяет ее решить.
HighLoad++ 2023
В начале недели посетил свою первую профессиональную конференцию для разработчиков высоконагруженных систем.
Общее впечатление положительное.
Когда занимался информационным моделированием, то несколько раз посещал конференции подобного масштаба (Autodesk University Russia), мне есть с чем сравнивать.
‼️Недостатки в комментариях
Достоинства:
⁃ можно встретить «IT-звезд», которые с радостью поделятся экспертизой
⁃ легко познакомиться с будущим работодателем
⁃ конечно, заряд энергии на саморазвитие, когда вокруг тебя сотни профессионалов (но тут главное не словить синдром самозванца и не демотивироваться)
⁃ многие компании готовят стенды с мерчом, поэтому можно пополнить запас носков ;)
В будущем вряд ли захочу в одиночку посещать оба дня конференции. Теперь планка - набрать достаточно экспертизы, чтобы выступить с интересным и дискуссионным докладом.
В начале недели посетил свою первую профессиональную конференцию для разработчиков высоконагруженных систем.
Общее впечатление положительное.
Когда занимался информационным моделированием, то несколько раз посещал конференции подобного масштаба (Autodesk University Russia), мне есть с чем сравнивать.
‼️
Достоинства:
⁃ можно встретить «IT-звезд», которые с радостью поделятся экспертизой
⁃ легко познакомиться с будущим работодателем
⁃ конечно, заряд энергии на саморазвитие, когда вокруг тебя сотни профессионалов (но тут главное не словить синдром самозванца и не демотивироваться)
⁃ многие компании готовят стенды с мерчом, поэтому можно пополнить запас носков ;)
В будущем вряд ли захочу в одиночку посещать оба дня конференции. Теперь планка - набрать достаточно экспертизы, чтобы выступить с интересным и дискуссионным докладом.
🤔1
Ноябрь 2023:
✅ Завершил курс по Объектной модели (ВШПСБ)
✅ Дочитал книгу "Get Programming with Go" (Nathan Youngman Roger Peppé) // рекомендую для новичков "с нуля"
✅ Прочитал 1/8 книги "100 Go Mistakes and How to Avoid Them" (Teiva Harsanyi) // рекомендую для всех, начиная с мидла; кто не готов читать книгу, можно изучить авторский репозиторий со всеми кейсами
✅ Изучил материалы из email-рассылки HighLoad++ Junior // материал показался разрозненным, подается бессистемно; очевидно, это концентрат лучших докладов конференций прошлых лет; у меня все же ожидания были в сторону более структурированного гайда для новичков
✅ Принял участие в Highload++ // впечатления выше
✅ Прошел внутрикорпоративный курс по ведению блога. Увидел у себя много зон роста, понял что это довольно серьезная работа - регулярно заниматься блогом. Постараюсь держать баланс, чтобы ведение блога не шло во вред с изучением профессии.
⭕️ Решил 4 задачки на литкоде (планировал 12)
—
Планы на декабрь:
🔖 Пройти корпоративный тренажер по информационной безопасности на языке Go (повторно)
🔖 Книгу по микросервисам отложил на следующий год. Вместо этого переключился на еще одну книгу по Go (100 Go Mistakes). За декабрь хочу ее дочитать, чтобы в следующем году сфокусироваться на книгах по архитектуре.
🔖 По-максимуму закрываю цели на 2023 год
📝 Составляю цели и задачи на 2024 год
#результаты
✅ Завершил курс по Объектной модели (ВШПСБ)
✅ Дочитал книгу "Get Programming with Go" (Nathan Youngman Roger Peppé) // рекомендую для новичков "с нуля"
✅ Прочитал 1/8 книги "100 Go Mistakes and How to Avoid Them" (Teiva Harsanyi) // рекомендую для всех, начиная с мидла; кто не готов читать книгу, можно изучить авторский репозиторий со всеми кейсами
✅ Изучил материалы из email-рассылки HighLoad++ Junior // материал показался разрозненным, подается бессистемно; очевидно, это концентрат лучших докладов конференций прошлых лет; у меня все же ожидания были в сторону более структурированного гайда для новичков
✅ Принял участие в Highload++ // впечатления выше
✅ Прошел внутрикорпоративный курс по ведению блога. Увидел у себя много зон роста, понял что это довольно серьезная работа - регулярно заниматься блогом. Постараюсь держать баланс, чтобы ведение блога не шло во вред с изучением профессии.
⭕️ Решил 4 задачки на литкоде (планировал 12)
—
Планы на декабрь:
🔖 Пройти корпоративный тренажер по информационной безопасности на языке Go (повторно)
🔖 Книгу по микросервисам отложил на следующий год. Вместо этого переключился на еще одну книгу по Go (100 Go Mistakes). За декабрь хочу ее дочитать, чтобы в следующем году сфокусироваться на книгах по архитектуре.
🔖 По-максимуму закрываю цели на 2023 год
📝 Составляю цели и задачи на 2024 год
#результаты
GitHub
GitHub - teivah/100-go-mistakes: 📖 100 Go Mistakes and How to Avoid Them
📖 100 Go Mistakes and How to Avoid Them. Contribute to teivah/100-go-mistakes development by creating an account on GitHub.
🔥3
Декабрь 2023:
📌 Месяц, когда многие продуктовые команды в огне, так как пытаются успеть закрыть все свои задачи до фичафриза, а вместе с ними и ОКР'ы. И у меня был жаркий месяц: чувствуешь ответственность за общий результат в условиях ограниченного времени. Конечно, ничего страшного не произойдет, если какие-то задачи не закроешь, но очень уж хотелось запустить все продуктовые эксперименты, которые были на меня завязаны, и закрыть технические задачи, а вместе с ними и тех. ОКРы.
✅ Прошелся по целям и постарался закрыть то, что успевал закрыть
✅ Приступил к треку ООАП (объектно ориентированный анализ и проектирование) в ВШПСБ, где начал прохождение курса про "Правильность проектирования классов"
✅ Написал селф-ревью для будущего перф-ревью (как сделать это быстро и качественно расскажу в отдельном посте)
⭕️ Составляю цели и задачи на 2024 год (пока есть только черновик, не успел нарисовать роадмап и корректно их оформить - в процессе)
⭕️ Продолжаю чтение "100 Go Mistakes"
❌ Времени на корпоративный тренажер по ИБ не нашел
#результаты
📌 Месяц, когда многие продуктовые команды в огне, так как пытаются успеть закрыть все свои задачи до фичафриза, а вместе с ними и ОКР'ы. И у меня был жаркий месяц: чувствуешь ответственность за общий результат в условиях ограниченного времени. Конечно, ничего страшного не произойдет, если какие-то задачи не закроешь, но очень уж хотелось запустить все продуктовые эксперименты, которые были на меня завязаны, и закрыть технические задачи, а вместе с ними и тех. ОКРы.
✅ Прошелся по целям и постарался закрыть то, что успевал закрыть
✅ Приступил к треку ООАП (объектно ориентированный анализ и проектирование) в ВШПСБ, где начал прохождение курса про "Правильность проектирования классов"
✅ Написал селф-ревью для будущего перф-ревью (как сделать это быстро и качественно расскажу в отдельном посте)
⭕️ Составляю цели и задачи на 2024 год (пока есть только черновик, не успел нарисовать роадмап и корректно их оформить - в процессе)
⭕️ Продолжаю чтение "100 Go Mistakes"
❌ Времени на корпоративный тренажер по ИБ не нашел
#результаты
Итоги 2023:
❕Достижение поставленных целей❕
✅ Закрепился на позиции "крепкий мидл (middle+)" (перешел на E4 грейд в текущей компании). Следующий грейд уже сеньорский
✅ Разработал и развернул на своем VPS сервере бота, который радует коллег 3 раза в неделю шахматными задачками
✅ Выполнил дипломный проект в ВШПСБ и подтянул JavaScript до базового уровня, достаточного, чтобы делать несложные проекты
✅ Начиная с февраля, каждое воскресенье занимался английским с американским преподавателем по совету одного из авторов на Хабре
✅ Прокачал свои профили на linkedin (поправил описание опыта и расширил сеть контактов, осталось 18 коннектов до заветной 500-ки) и github (добавил ридми "о себе", виджет со статистикой + выложил новые проекты)
⭕️ Прочитал книгу "Get Programming with Go", половину книги "100 Go Mistakes and How to Avoid Them" и 1/3 "Изучаем SQL" (Алан Бьюли)
⭕️ Решил 12/15 задач на литкоде
❌ Не нашел время для прохождения тренажера по кибер-безопасности
❌ Планировал глубоко изучить TDD, но ограничился лишь вводными статьями
❌ Курс по Linux не прошел. Понял, что это низко приоритетная для меня активность
❕ Что еще было за год ❕
hard skills:
✔️ Прошел курс по верстке HTML / CSS (htmlacademy)
✔️ Сделал несколько MVP проектов для знакомого стартапа (добавил в копилку технологий beanstalkd)
✔️ Позанимался непродолжительное время с ментором, копнул глубже в сети и реализовал примитивный балансировщик нагрузки
✔️ Освоил ChatGPT. Прошел все стадии: от "вау, это меняет все" до "неплохой инструмент, можно использовать время от времени с осторожностью"
✔️ Закончил курс в ВШПСБ по парадигмам программирования. Познакомился с мультипарадигменным языком Julia
✔️ Сделал дипломный проект в ВШПСБ, познакомившись с веб-фреймворком Gin для Go
✔️ Начал погружение в объектно ориентированные анализ и проектирование (ООАП)
soft skills:
✔️ Вдохновил и организовал команду для участия в антихакатоне (заняли 2-е место)
✔️ Вдохновил и организовал команду для участия в хакатоне (топ 3 по результатам зрительских симпатий)
✔️ Организовал регулярное обучение шахматам для всех (занятия 4 раза в неделю), активно развиваю внутреннее коммьюнити ~chess, которое выросло за год в 4 раза
✔️ Завершил несколько курсов по софт-скиллам: "Эффективный театр" и "Продвинутые джедайские техники"
✔️ Написал 3 селф-ревью и собрал для тим-лида достаточную доказательную базу для моего промоута в соответствии с матрицей компетенций для инженера на следующем уровне
также:
✔️ Принял участие в профессиональной конференции разработчиков Highload++
✔️ Провел около 15 технических собеседований (скрининг и платформа Go)
✔️ Снялся в ролике для Хабра и недели бэкенда
✔️ Принял участие в корпоративном интенсиве о том как развивать свой бренд и вести блог
✔️ Сделал ребрендинг канала
#итоги
❕Достижение поставленных целей❕
✅ Закрепился на позиции "крепкий мидл (middle+)" (перешел на E4 грейд в текущей компании). Следующий грейд уже сеньорский
✅ Разработал и развернул на своем VPS сервере бота, который радует коллег 3 раза в неделю шахматными задачками
✅ Выполнил дипломный проект в ВШПСБ и подтянул JavaScript до базового уровня, достаточного, чтобы делать несложные проекты
✅ Начиная с февраля, каждое воскресенье занимался английским с американским преподавателем по совету одного из авторов на Хабре
✅ Прокачал свои профили на linkedin (поправил описание опыта и расширил сеть контактов, осталось 18 коннектов до заветной 500-ки) и github (добавил ридми "о себе", виджет со статистикой + выложил новые проекты)
⭕️ Прочитал книгу "Get Programming with Go", половину книги "100 Go Mistakes and How to Avoid Them" и 1/3 "Изучаем SQL" (Алан Бьюли)
⭕️ Решил 12/15 задач на литкоде
❌ Не нашел время для прохождения тренажера по кибер-безопасности
❌ Планировал глубоко изучить TDD, но ограничился лишь вводными статьями
❌ Курс по Linux не прошел. Понял, что это низко приоритетная для меня активность
❕ Что еще было за год ❕
hard skills:
✔️ Прошел курс по верстке HTML / CSS (htmlacademy)
✔️ Сделал несколько MVP проектов для знакомого стартапа (добавил в копилку технологий beanstalkd)
✔️ Позанимался непродолжительное время с ментором, копнул глубже в сети и реализовал примитивный балансировщик нагрузки
✔️ Освоил ChatGPT. Прошел все стадии: от "вау, это меняет все" до "неплохой инструмент, можно использовать время от времени с осторожностью"
✔️ Закончил курс в ВШПСБ по парадигмам программирования. Познакомился с мультипарадигменным языком Julia
✔️ Сделал дипломный проект в ВШПСБ, познакомившись с веб-фреймворком Gin для Go
✔️ Начал погружение в объектно ориентированные анализ и проектирование (ООАП)
soft skills:
✔️ Вдохновил и организовал команду для участия в антихакатоне (заняли 2-е место)
✔️ Вдохновил и организовал команду для участия в хакатоне (топ 3 по результатам зрительских симпатий)
✔️ Организовал регулярное обучение шахматам для всех (занятия 4 раза в неделю), активно развиваю внутреннее коммьюнити ~chess, которое выросло за год в 4 раза
✔️ Завершил несколько курсов по софт-скиллам: "Эффективный театр" и "Продвинутые джедайские техники"
✔️ Написал 3 селф-ревью и собрал для тим-лида достаточную доказательную базу для моего промоута в соответствии с матрицей компетенций для инженера на следующем уровне
также:
✔️ Принял участие в профессиональной конференции разработчиков Highload++
✔️ Провел около 15 технических собеседований (скрининг и платформа Go)
✔️ Снялся в ролике для Хабра и недели бэкенда
✔️ Принял участие в корпоративном интенсиве о том как развивать свой бренд и вести блог
✔️ Сделал ребрендинг канала
#итоги
🔥3👍2
Привет! Меня зовут Александр Новиков и мне сегодня 30.
Хочу результировать свою экспертизу и рассказать про то, что можно увидеть на канале.
☀️ Сегодня
Бэкенд инженер в компании Авито. С 2022 года развиваю вертикаль Услуги в продуктовой кросс-функциональной команде.
Мой ежедневный инструмент - Go. Специализируюсь на построении серверной части высоконагруженных систем.
🧊 В прошлом
.NET разработчик настольных приложений на C#.
Сертифицированный эксперт в области информационного моделирования зданий (BIM).
BIM-менеджер, разработчик стандартов организации по использованию технологии (EIR, BEP, BS и др.).
Автор научных статей, преподаватель политехнического университета Петра Великого.
🎓 Мое образование
Магистр по направлению "Строительство".
✍️ О чем пишу
- Как я начинал писать код, как выбирал первый язык программирования и в каком направлении двигался
- Каким самообразованием занимаюсь
- С какими трудностями сталкивался и как не потерять мотивацию
- Где брать идеи для пет-проектов
- Какие полезные уроки извлек
- Какие цели ставлю и резюмирую чего удалось достичь
Несмотря на текущую позицию, мой путь в Big Tech только начинается. Уверен, что впереди океан интересного опыта, который будет здорово исследовать вместе.
👨💻 Как выглядит мой код
См. -> Github
📈 Как выглядит моя карьера
См. -> Linkedin
👨🎤 Как выгляжу я
См. -> Youtube
#️⃣ Тэги для навигации
#процесс (начало: мысли и действия)
#карьера (карьерные вехи)
#проект (разработка пет-проекта)
#результаты (за месяц)
#итоги (за год)
#цели
#go
#безопасность
Хочу результировать свою экспертизу и рассказать про то, что можно увидеть на канале.
☀️ Сегодня
Бэкенд инженер в компании Авито. С 2022 года развиваю вертикаль Услуги в продуктовой кросс-функциональной команде.
Мой ежедневный инструмент - Go. Специализируюсь на построении серверной части высоконагруженных систем.
🧊 В прошлом
.NET разработчик настольных приложений на C#.
Сертифицированный эксперт в области информационного моделирования зданий (BIM).
BIM-менеджер, разработчик стандартов организации по использованию технологии (EIR, BEP, BS и др.).
Автор научных статей, преподаватель политехнического университета Петра Великого.
🎓 Мое образование
Магистр по направлению "Строительство".
✍️ О чем пишу
- Как я начинал писать код, как выбирал первый язык программирования и в каком направлении двигался
- Каким самообразованием занимаюсь
- С какими трудностями сталкивался и как не потерять мотивацию
- Где брать идеи для пет-проектов
- Какие полезные уроки извлек
- Какие цели ставлю и резюмирую чего удалось достичь
Несмотря на текущую позицию, мой путь в Big Tech только начинается. Уверен, что впереди океан интересного опыта, который будет здорово исследовать вместе.
👨💻 Как выглядит мой код
См. -> Github
📈 Как выглядит моя карьера
См. -> Linkedin
👨🎤 Как выгляжу я
См. -> Youtube
#️⃣ Тэги для навигации
#процесс (начало: мысли и действия)
#карьера (карьерные вехи)
#проект (разработка пет-проекта)
#результаты (за месяц)
#итоги (за год)
#цели
#go
#безопасность
🔥6
Новиков > путь в Big Tech pinned «Привет! Меня зовут Александр Новиков и мне сегодня 30. Хочу результировать свою экспертизу и рассказать про то, что можно увидеть на канале. ☀️ Сегодня Бэкенд инженер в компании Авито. С 2022 года развиваю вертикаль Услуги в продуктовой кросс-функциональной…»
С Днем упавших тестов!
Первый рабочий день был ознаменован удивительным поведением мастер-ветки нужного мне сервиса, в которой падали тесты, начиная с Нового Года.
К счастью, на этот случай придумали фича-фриз, когда за неделю до больших Праздников блокируется любая выкатка в прод (кроме серьезных фиксов), чтобы сохранять его стабильность.
В свою очередь, я настоятельно попросил коллег не ограничиваться инкрементом значения в том месте, где упал тест (а то можно было бы передавать привет нам из 2025), а сделать рефакторинг, чтобы не зависеть от смены года.
Если бы меня попросили дать ровно 1 совет для написания юнит-тестов, то вероятно он был такой: не завязывайтесь на поведение, которое вы не можете контролировать.
Первый рабочий день был ознаменован удивительным поведением мастер-ветки нужного мне сервиса, в которой падали тесты, начиная с Нового Года.
К счастью, на этот случай придумали фича-фриз, когда за неделю до больших Праздников блокируется любая выкатка в прод (кроме серьезных фиксов), чтобы сохранять его стабильность.
В свою очередь, я настоятельно попросил коллег не ограничиваться инкрементом значения в том месте, где упал тест (а то можно было бы передавать привет нам из 2025), а сделать рефакторинг, чтобы не зависеть от смены года.
Если бы меня попросили дать ровно 1 совет для написания юнит-тестов, то вероятно он был такой: не завязывайтесь на поведение, которое вы не можете контролировать.
🔗 LinkedIn
Из всех социальных сетей, вероятно, самая полезная для построения карьеры будет - LinkedIn. Но она же является и самой требовательной, в первую очередь, к содержанию вашего профиля и той активности, которую вы демонстрируете.
Не скажу, что у меня каноничный профиль, но я стремлюсь к тому, чтобы он таким стал.
Какие вижу преимущества этой соц. сети с точки зрения разработчика:
1. Если у вас сильный профиль, то вы больше не ищете работу, а она сама находит вас. За последние полгода мне на почту пришло около 10 предложений с предложением пройти интервью в топовые тех. компании. Конечно, это не оффер, но теперь вы решаете: принимать ли приглашение рекрутеров или отказывать, как они вам когда-то в начале пути :)
2. Отличная возможность выйти напрямую на людей, в компанию которых вы хотите попасть, минуя стандартный hr-фильтр на площадках с поиском работы.
3. Так как многие пытаются выделить свой профиль, то зачастую встречаются хорошие подборки по техническим материалам. Например, подборка материалов для подготовки к собеседованиям в FAANG.
4. Интересно наблюдать за карьерой известных людей, а также своих знакомых. Плюс отличная возможность поддерживать контакт, особенно когда видишь, что вы можете потенциально зареферить друг друга в свои компании.
Недостатки:
1. На мой взгляд, всего один - вам нужно сделать сильный профиль (это займет время) и поддерживать его активность, чтобы он выглядел солидно и "свежо" для людей, которые хотят предложить вам работу.
Чек-лист по ведению своего профиля, основанный на моем опыте:
☑️ Красивое портретное фото, где видно ваше лицо и энергию
☑️ Лаконичный заголовок, который характеризует вас как специалиста и который релевантен вакансиям, на которые вы претендуете
☑️ Блок о себе желательно заполнить концентрированной информацией о своих навыках и важных карьерных вехах (раскрываем заголовок шире)
☑️ Опыт => Важнейший блок, который нужно заполнять по формуле: сделал X, можно измерить в Y, шаги к достижению Z
☑️ Образование / Волонтерский опыт => Полезно указывать (с указанным образованием предлагают подборки с открытыми позициями, где работают выпускники такого же ВУЗа или другого учреждения)
☑️ Рекомендации / Достижения => С рекомендациями профиль выглядит солиднее, поэтому можно при случае написать с коллегой друг другу
☑️ Активность => Проявляйте активность! Конечно, хорошо, когда вы эксперт и можете делиться своим опытом, но если нет, то неплохой альтернативой являются реакции к другим постам (конечно, профессиональным, так как встречаются и развлекательные), а еще важнее - комментарии, когда вы готовы обсудить что-то с другими под чьим-нибудь постом
☑️ Добавляйтесь в коннекты к тем людям, которые работают в вашей области, так ваша лента и рекомендации будут полезнее
☑️ Ведите профиль на английском
Из всех социальных сетей, вероятно, самая полезная для построения карьеры будет - LinkedIn. Но она же является и самой требовательной, в первую очередь, к содержанию вашего профиля и той активности, которую вы демонстрируете.
Не скажу, что у меня каноничный профиль, но я стремлюсь к тому, чтобы он таким стал.
Какие вижу преимущества этой соц. сети с точки зрения разработчика:
1. Если у вас сильный профиль, то вы больше не ищете работу, а она сама находит вас. За последние полгода мне на почту пришло около 10 предложений с предложением пройти интервью в топовые тех. компании. Конечно, это не оффер, но теперь вы решаете: принимать ли приглашение рекрутеров или отказывать, как они вам когда-то в начале пути :)
2. Отличная возможность выйти напрямую на людей, в компанию которых вы хотите попасть, минуя стандартный hr-фильтр на площадках с поиском работы.
3. Так как многие пытаются выделить свой профиль, то зачастую встречаются хорошие подборки по техническим материалам. Например, подборка материалов для подготовки к собеседованиям в FAANG.
4. Интересно наблюдать за карьерой известных людей, а также своих знакомых. Плюс отличная возможность поддерживать контакт, особенно когда видишь, что вы можете потенциально зареферить друг друга в свои компании.
Недостатки:
1. На мой взгляд, всего один - вам нужно сделать сильный профиль (это займет время) и поддерживать его активность, чтобы он выглядел солидно и "свежо" для людей, которые хотят предложить вам работу.
Чек-лист по ведению своего профиля, основанный на моем опыте:
☑️ Красивое портретное фото, где видно ваше лицо и энергию
☑️ Лаконичный заголовок, который характеризует вас как специалиста и который релевантен вакансиям, на которые вы претендуете
☑️ Блок о себе желательно заполнить концентрированной информацией о своих навыках и важных карьерных вехах (раскрываем заголовок шире)
☑️ Опыт => Важнейший блок, который нужно заполнять по формуле: сделал X, можно измерить в Y, шаги к достижению Z
☑️ Образование / Волонтерский опыт => Полезно указывать (с указанным образованием предлагают подборки с открытыми позициями, где работают выпускники такого же ВУЗа или другого учреждения)
☑️ Рекомендации / Достижения => С рекомендациями профиль выглядит солиднее, поэтому можно при случае написать с коллегой друг другу
☑️ Активность => Проявляйте активность! Конечно, хорошо, когда вы эксперт и можете делиться своим опытом, но если нет, то неплохой альтернативой являются реакции к другим постам (конечно, профессиональным, так как встречаются и развлекательные), а еще важнее - комментарии, когда вы готовы обсудить что-то с другими под чьим-нибудь постом
☑️ Добавляйтесь в коннекты к тем людям, которые работают в вашей области, так ваша лента и рекомендации будут полезнее
☑️ Ведите профиль на английском
👍1🔥1
В этом году я решил пересмотреть свою методику целеполагания в сторону использоваться ОКР'ов.
Такой подход активно используют ведущие IT-компании и с ним постоянно сталкиваюсь в работе.
Основная суть в следующем:
1. Берем довольно протяженный отрезок времени. Год отлично подходит
2. Ставим 3-5 амбициозных целей - это наши "objectives"
3. Для каждой цели добавляем 3-5 измеримых ключевых результата - "key results"
Важно потратить надлежащее время к составлению целей и ключевых результатов, иначе - время в пустую.
Лучшие практики Google:
- Цели должны быть амбициозны и доставлять некоторого рода неудобства (отвечаем на вопрос "Чего я хочу достичь?")
- Ключевые результаты должны быть измеримы и подаваться оценке с помощью удельного веса, например, от 0 - 1.0 от общей цели (отвечаем на вопрос "Как я могу их измерить?")
- ОКР публичны и доступны для всех (прошлые и настоящие)
- Идеальное значение по достижению ОКР лежит между 0.6 и 0.7 (если у нас 1.0 в результате, значит ОКР не был достаточно амбициозен, при этом, если значение меньше, то не следует строго к этому относиться, а стоит сделать выводы и учесть такой опыт в постановки будущих ОКРов)
Полезный к прочтению Google Playbook.
Такой подход активно используют ведущие IT-компании и с ним постоянно сталкиваюсь в работе.
Основная суть в следующем:
1. Берем довольно протяженный отрезок времени. Год отлично подходит
2. Ставим 3-5 амбициозных целей - это наши "objectives"
3. Для каждой цели добавляем 3-5 измеримых ключевых результата - "key results"
Важно потратить надлежащее время к составлению целей и ключевых результатов, иначе - время в пустую.
Лучшие практики Google:
- Цели должны быть амбициозны и доставлять некоторого рода неудобства (отвечаем на вопрос "Чего я хочу достичь?")
- Ключевые результаты должны быть измеримы и подаваться оценке с помощью удельного веса, например, от 0 - 1.0 от общей цели (отвечаем на вопрос "Как я могу их измерить?")
- ОКР публичны и доступны для всех (прошлые и настоящие)
- Идеальное значение по достижению ОКР лежит между 0.6 и 0.7 (если у нас 1.0 в результате, значит ОКР не был достаточно амбициозен, при этом, если значение меньше, то не следует строго к этому относиться, а стоит сделать выводы и учесть такой опыт в постановки будущих ОКРов)
Полезный к прочтению Google Playbook.
🎯 Рад представить свои ОКР'ы на 2024 год!
Процесс затянулся, но уверен, что это время было на пользу конечному результату.
ОКР'ы будут жить в публичной страничке инструмента Notion и там же эволюционировать. Поэтому будет легко следить за прогрессом.
На выбор и адаптацию инструмента потратил не мало времени. Из серьезных конкурентов был Google Sheets, как наиболее простой и доступный. Но захотелось сделать красиво.
Итого
У меня 4 амбициозных целей:
1. Повысить свой грейд до E5 (стать синьор разработчиком)
2. Становление Full-Stack разработчиком (закрываю пробелы по фронтенду)
3. Развиваю мышление в направлении проектирования и сильных абстракций
4. Создаю свой профессиональный и сильный бренд, как инженер-программист
И 12-16 ключевых результатов, по которым легко отслеживать мой прогресс по целям, а также есть полное понимание о том, что нужно делать, чтобы двигаться вперед.
#цели
Процесс затянулся, но уверен, что это время было на пользу конечному результату.
ОКР'ы будут жить в публичной страничке инструмента Notion и там же эволюционировать. Поэтому будет легко следить за прогрессом.
На выбор и адаптацию инструмента потратил не мало времени. Из серьезных конкурентов был Google Sheets, как наиболее простой и доступный. Но захотелось сделать красиво.
Итого
У меня 4 амбициозных целей:
1. Повысить свой грейд до E5 (стать синьор разработчиком)
2. Становление Full-Stack разработчиком (закрываю пробелы по фронтенду)
3. Развиваю мышление в направлении проектирования и сильных абстракций
4. Создаю свой профессиональный и сильный бренд, как инженер-программист
И 12-16 ключевых результатов, по которым легко отслеживать мой прогресс по целям, а также есть полное понимание о том, что нужно делать, чтобы двигаться вперед.
#цели
👍3🔥1
Январь 2024:
навыки
✔️ Прошел курс по ООАП, где занимался проектированием классов на основе АТД. Результат работы можно посмотреть здесь
✔️ Изменил подход к изучению английского и поменял преподавателя. Теперь занимаюсь 2 раза в неделю по 50 минут вместо 1 занятия на 90 минут
канал
✔️ Подвел итоги прошедшего года
✔️ Написал интро-сообщение для канала
цели
✔️ Разработал файлик с ОКРами на 24-й год
#результаты
навыки
✔️ Прошел курс по ООАП, где занимался проектированием классов на основе АТД. Результат работы можно посмотреть здесь
✔️ Изменил подход к изучению английского и поменял преподавателя. Теперь занимаюсь 2 раза в неделю по 50 минут вместо 1 занятия на 90 минут
канал
✔️ Подвел итоги прошедшего года
✔️ Написал интро-сообщение для канала
цели
✔️ Разработал файлик с ОКРами на 24-й год
#результаты
🔥2