Наконец-то дочитал "книгу" Артура Пантелеева из чата phpGeeks
Книгой это очень сложно, конечно, назвать - это, скорее, компиляция множества тем, которые должен знать и понимать мидл-разработчик
Иногда, там половина объявленых на странице тем вообще не раскрыта, но это очень хорошая отправная точка по бэкенду
Книгой это очень сложно, конечно, назвать - это, скорее, компиляция множества тем, которые должен знать и понимать мидл-разработчик
Иногда, там половина объявленых на странице тем вообще не раскрыта, но это очень хорошая отправная точка по бэкенду
backendinterview.ru
Введение - Backend interview
Книжка для подготовки к собеседованию на должность backend developer
🔥1
Время почитать
1. Книга о внутренностях пхп
2. Зачем изучать основы компиляторов
3. Всё что вы когда-либо напишите станет легаси
4. Практическое применение анонимных классов
5. О работе и преднамеренно наплевательском отношении к ней
6. О разнице ООП и ФП - раз и два
7. Как на самом деле работает форыч в пхп
8. Логирование медленных запросов в пхп
9. Корутины в пхп
10. Точно ли вам нужен graphql?
1. Книга о внутренностях пхп
2. Зачем изучать основы компиляторов
3. Всё что вы когда-либо напишите станет легаси
4. Практическое применение анонимных классов
5. О работе и преднамеренно наплевательском отношении к ней
6. О разнице ООП и ФП - раз и два
7. Как на самом деле работает форыч в пхп
8. Логирование медленных запросов в пхп
9. Корутины в пхп
10. Точно ли вам нужен graphql?
Совершенно случайно наткнулся на практический пример применения Fibers из php8.1
Очень рекомендую к ознакомлению, там достаточно хорошо описано какие именно операции имеет смысл заворачивать в файберы и как это правильно делать
Очень рекомендую к ознакомлению, там достаточно хорошо описано какие именно операции имеет смысл заворачивать в файберы и как это правильно делать
Что такое оптимизация?
Вообще, когда пришла задача по оптимизации на 3 неделе работы в компании, то я сначала дико обрадовался, а потом стало страшно. Такие задачи на самом деле что значат? Что ближайшие 3-4 дня ты проведёшь за исследованием кодовой базы на предмет слабых мест, а затем должен будешь оптимизировать эти слабые места, да ещё и так, чтобы хуже не стало. Это по факту подразумевает глубокое понимание внутренней работы системы, чего у меня пока что нет и что придётся получать в экстренном порядке.
В моём случае оптимизировать надо было ответ от системы на запросы по продвижению ипотечной заявки, при чём не один конкретный эндпоинт, а весь цикл центрального взаимодействия с приложением. Честно скажу - сидел и тупил очень долго. Кропотливо изучал как заявка ходит туда-сюда, какие эндпоинты дёргаются, что в каждом происходит, какие события кидаются, какие подписчики этих событий без надобности выполняются синхронно и так далее.
В итоге после целого дня рефактора получил более-менее вменяемый результат, который завтра надо будет презентовать перед командой, чтобы они хотя бы понимали как ревью проводить, и объяснить выбор своей тактики.
Собственно, мы и подошли к вопросу поста и ответ вроде бы очевиден - снижение нагрузки на систему и снижение времени ответа апишки. Вот только путей достижения этой цели 2:
1. реальная оптимизация - например, минимизация запросов к базе или переписывание целого класса, потому что вся логика помещается в 2 строки
2. мнимая оптимизация - вынос второстепенных синхронных операций в асинх
Мы пока что выбрали второй путь, так как он очевидно проще и его реальный прикладной эффект будет виден пользователям сразу
А вот дальше оказывается на мне уже висят задачи по реальной оптимизации и там я по-полной смогу повес_ел_иться :D
Вообще, когда пришла задача по оптимизации на 3 неделе работы в компании, то я сначала дико обрадовался, а потом стало страшно. Такие задачи на самом деле что значат? Что ближайшие 3-4 дня ты проведёшь за исследованием кодовой базы на предмет слабых мест, а затем должен будешь оптимизировать эти слабые места, да ещё и так, чтобы хуже не стало. Это по факту подразумевает глубокое понимание внутренней работы системы, чего у меня пока что нет и что придётся получать в экстренном порядке.
В моём случае оптимизировать надо было ответ от системы на запросы по продвижению ипотечной заявки, при чём не один конкретный эндпоинт, а весь цикл центрального взаимодействия с приложением. Честно скажу - сидел и тупил очень долго. Кропотливо изучал как заявка ходит туда-сюда, какие эндпоинты дёргаются, что в каждом происходит, какие события кидаются, какие подписчики этих событий без надобности выполняются синхронно и так далее.
В итоге после целого дня рефактора получил более-менее вменяемый результат, который завтра надо будет презентовать перед командой, чтобы они хотя бы понимали как ревью проводить, и объяснить выбор своей тактики.
Собственно, мы и подошли к вопросу поста и ответ вроде бы очевиден - снижение нагрузки на систему и снижение времени ответа апишки. Вот только путей достижения этой цели 2:
1. реальная оптимизация - например, минимизация запросов к базе или переписывание целого класса, потому что вся логика помещается в 2 строки
2. мнимая оптимизация - вынос второстепенных синхронных операций в асинх
Мы пока что выбрали второй путь, так как он очевидно проще и его реальный прикладной эффект будет виден пользователям сразу
А вот дальше оказывается на мне уже висят задачи по реальной оптимизации и там я по-полной смогу повес_ел_иться :D
Время пришло
Последнее время крайне остро встал вопрос нехватки оперативной памяти на моём макбуке. Свободной всегда было 1-2 гига, а своп доходил до 19 гигов из-за докера
Решил наконец-то собрать себе обычную печку и переехать на линукс
Камешек - Ryzen 5 7600, 32 оперативы, OS - PopOS
Посмотрим, как пойдёт полёт в ближайшие пару недель, но пока что меня всё устраивает, всё прям очень плавно и круто
Ну и конечно, куда же без rgb :D
Последнее время крайне остро встал вопрос нехватки оперативной памяти на моём макбуке. Свободной всегда было 1-2 гига, а своп доходил до 19 гигов из-за докера
Решил наконец-то собрать себе обычную печку и переехать на линукс
Камешек - Ryzen 5 7600, 32 оперативы, OS - PopOS
Посмотрим, как пойдёт полёт в ближайшие пару недель, но пока что меня всё устраивает, всё прям очень плавно и круто
Ну и конечно, куда же без rgb :D
Я оказывается совсем забыл, каково это - иметь ПК
Я сегодня весь день провёл, пытаясь оживить абсолютно внезапно умерший bluetooth. Просто вот прихожу с утра и ни мышка, ни клава не подключаются, а в настройках блютус даже включить нельзя - не видит железку.
Я чего только не перепробовал, и биос обновил, и ОС другую накатил, и fastboot вырубил. А знаете как всё решилось? Надо просто было выключить комп, отсоединить питание, ЗАЖАТЬ НА 30 СЕКУНД КНОПКУ ВКЛЮЧЕНИЯ и снова включить комп
Я просто в шоке, честно говоря, после мака, где, сука, всё работает из коробки
Ну ничего, так если в целом посмотреть, то я доволен новым компом :D
Я сегодня весь день провёл, пытаясь оживить абсолютно внезапно умерший bluetooth. Просто вот прихожу с утра и ни мышка, ни клава не подключаются, а в настройках блютус даже включить нельзя - не видит железку.
Я чего только не перепробовал, и биос обновил, и ОС другую накатил, и fastboot вырубил. А знаете как всё решилось? Надо просто было выключить комп, отсоединить питание, ЗАЖАТЬ НА 30 СЕКУНД КНОПКУ ВКЛЮЧЕНИЯ и снова включить комп
Я просто в шоке, честно говоря, после мака, где, сука, всё работает из коробки
Ну ничего, так если в целом посмотреть, то я доволен новым компом :D
На работе задачи никогда не уходят в тестирование, пока их не посмотрит другой разраб (лучше даже не один)
В связи с этим надо как-то благодарить коллег, тратящих своё время на ревью
Не придумал ничего лучше, чем кидать всратые картинки в ответ на апрувы😃
В связи с этим надо как-то благодарить коллег, тратящих своё время на ревью
Не придумал ничего лучше, чем кидать всратые картинки в ответ на апрувы😃
😁5
Отпуск
Съездил в отпуск. Взял за свой счёт, потому что не отдыхал уже 3 года. Вроде как бы круто, море и всё такое, но в следующий раз только вдвоём с женой и не на юг :D
После отпуска пришёл, смотрю - накидана куча задач :( так себе начало работы, НО! Раскидался с ними очень быстро, то есть получается есть абсолютно реальный эффект от отдыха. Кто бы мог подумать :D
В прошлый раз я отдыхал дома, неделю проведя дома за приставкой, как раз ровно 3 года назад. С тех пор и думал, что отпуск бесполезен
В общем, отдыхайте почаще, желательно далеко от дома и от любых дел, которые могут хоть как-то напомнить привычный образ жизни
Съездил в отпуск. Взял за свой счёт, потому что не отдыхал уже 3 года. Вроде как бы круто, море и всё такое, но в следующий раз только вдвоём с женой и не на юг :D
После отпуска пришёл, смотрю - накидана куча задач :( так себе начало работы, НО! Раскидался с ними очень быстро, то есть получается есть абсолютно реальный эффект от отдыха. Кто бы мог подумать :D
В прошлый раз я отдыхал дома, неделю проведя дома за приставкой, как раз ровно 3 года назад. С тех пор и думал, что отпуск бесполезен
В общем, отдыхайте почаще, желательно далеко от дома и от любых дел, которые могут хоть как-то напомнить привычный образ жизни
❤3🔥1
Недавно озадачился своими скиллами, давно ничего не читал и не изучал
В связи с этим нашёл пару ресурсов, с которых начну снова процесс обучения:
1. Роадмап. Очень обширный, от джуна до сеньёра, с кучей ссылок. Есть ещё вот такой, о нём я уже слышал, тоже много ссылок и много тем
2. До этого мне далеко, но Как и куда расти инженеру, если он уже Senior
3. Интервью по System Design
4. У меня большие проблемы с пониманием шифрования, поэтому - КАК РАБОТАЕТ ШИФРОВАНИЕ? С НУЛЯ ЗА ЧАС
5. Разработка и проектирование высоконагруженных систем
6. Как правильно выбирать очередь
Если у кого-то есть полезные ссылки, то делитесь, буду рад
В связи с этим нашёл пару ресурсов, с которых начну снова процесс обучения:
1. Роадмап. Очень обширный, от джуна до сеньёра, с кучей ссылок. Есть ещё вот такой, о нём я уже слышал, тоже много ссылок и много тем
2. До этого мне далеко, но Как и куда расти инженеру, если он уже Senior
3. Интервью по System Design
4. У меня большие проблемы с пониманием шифрования, поэтому - КАК РАБОТАЕТ ШИФРОВАНИЕ? С НУЛЯ ЗА ЧАС
5. Разработка и проектирование высоконагруженных систем
6. Как правильно выбирать очередь
Если у кого-то есть полезные ссылки, то делитесь, буду рад
GitHub
GitHub - bzick/oh-my-backend: Что нужно знать бэкенд-разработчику web-приложений. Backend Roadmap (from Junior to Senior).
Что нужно знать бэкенд-разработчику web-приложений. Backend Roadmap (from Junior to Senior). - bzick/oh-my-backend
Абсолютно случайно наткнулся на видео, где разраб объясняет новую фишку вскода - прокидывание портов
Фактически, альтернатива ngrok, когда надо кому-то из внешней сети показать своей проект в локалке без необходимости использования хостинга
Микромягкие молодцы, годноту пилят
https://youtu.be/Qi2hZ74_eyw?si=F3NBvdjjF6RRrl4j
Фактически, альтернатива ngrok, когда надо кому-то из внешней сети показать своей проект в локалке без необходимости использования хостинга
Микромягкие молодцы, годноту пилят
https://youtu.be/Qi2hZ74_eyw?si=F3NBvdjjF6RRrl4j
YouTube
Хостинг больше не нужен
В VSCode появилась удобная функция форвардинг портов.
Чето долго не писал, работы выше крыши, но все по порядку
1. Сегодня закончился испытательный срок, заявление на увольнение не попросили прислать значит все ок, работаем дальше😊 а если серьезно, то похвалили, сказали, что хорошо влился и хорошо работаю. Наверняка всем так говорят на всех работах, но от того не менее приятно.
2. Вчера был день рождения. В качестве подарка поехал кукухой и купил себе Гугл пиксель 7а. Зачем? Да хз, захотелось. Недавно меня посетила мысль с небес о том, что я телефоном пользуюсь только для телеги и музыки, поэтому какая разница на какой операционке сидеть. Хотя нет, разница определенно есть - никогда в жизни не возьму что-либо кроме айоси или чистого андроида
3. Перешёл на Ютуб музыку. Лучшее решение в жизни. Там есть абсолютно все, даже старые богом (а также Яндексом и спотифаем) забытые треки
4. Взял себе подработку на вечер в одной из прошлых контор. Мне не сложно, мозгу приятно, ну а кошельку тем более. Буду копить на xbox series x в новую квартиру
5. В прежнем режиме читаю статьи и посматриваю видосы про разработку. Надо заставить себя запилить свежий пост с подборкой.
6. Нашел очень интересную штуку - sql-подобный инструмент для работы с гитом. Если кто-то сможет придумать ей реальное применение, то напишите, я пока не въехал, хотя все равно удивлен функционалом. Ссылка - https://github.com/AmrDeveloper/GQL
1. Сегодня закончился испытательный срок, заявление на увольнение не попросили прислать значит все ок, работаем дальше😊 а если серьезно, то похвалили, сказали, что хорошо влился и хорошо работаю. Наверняка всем так говорят на всех работах, но от того не менее приятно.
2. Вчера был день рождения. В качестве подарка поехал кукухой и купил себе Гугл пиксель 7а. Зачем? Да хз, захотелось. Недавно меня посетила мысль с небес о том, что я телефоном пользуюсь только для телеги и музыки, поэтому какая разница на какой операционке сидеть. Хотя нет, разница определенно есть - никогда в жизни не возьму что-либо кроме айоси или чистого андроида
3. Перешёл на Ютуб музыку. Лучшее решение в жизни. Там есть абсолютно все, даже старые богом (а также Яндексом и спотифаем) забытые треки
4. Взял себе подработку на вечер в одной из прошлых контор. Мне не сложно, мозгу приятно, ну а кошельку тем более. Буду копить на xbox series x в новую квартиру
5. В прежнем режиме читаю статьи и посматриваю видосы про разработку. Надо заставить себя запилить свежий пост с подборкой.
6. Нашел очень интересную штуку - sql-подобный инструмент для работы с гитом. Если кто-то сможет придумать ей реальное применение, то напишите, я пока не въехал, хотя все равно удивлен функционалом. Ссылка - https://github.com/AmrDeveloper/GQL
GitHub
GitHub - AmrDeveloper/GQL: GitQL is a extensible SQL-like query language and SDK to perform queries on various data sources such…
GitQL is a extensible SQL-like query language and SDK to perform queries on various data sources such .git files with supports of most of SQL features such as grouping, ordering and aggregation and...
👍2
Наткнулся на интересную концепцию - стриминговые sql движки, которые на лету точечно обновляют результаты какого-то заданного запроса (например, при подсчете строк в таблице их количество хранится отдельно, а не высчитывается каждый раз заново)
Вот сама статья, легко читается, простым языком объяснено что к чему - https://www.epsio.io/blog/how-to-create-a-streaming-sql-engine
Вот сама статья, легко читается, простым языком объяснено что к чему - https://www.epsio.io/blog/how-to-create-a-streaming-sql-engine
www.epsio.io
How we built a Streaming SQL Engine
A streaming SQL engine keeps queries’ results up to date without ever having to recalculate them, even as the underlying data changes. To explain this, imagine a simple query, such as SELECT count(*) FROM humans
👍2
Шутки про дроп базы джуном же очень смешные, да?
Так вот, мне вчера было не смешно, потому что я уже не джун совсем
В пылу работы по воспроизведению критичного бага перепутал вкладки и сделал
Смертельный рев команды тестировки был слышен аж из самой Москвы
Сисадмин сказал, что дело житейское, но все равно выточит мне медальку!
А если смотреть чуть позитивнее, то наконец-то тестировщики в работу возьмут мою задачу по репликации данных на превью - очень даже хороший плюс :D
Так вот, мне вчера было не смешно, потому что я уже не джун совсем
В пылу работы по воспроизведению критичного бага перепутал вкладки и сделал
truncate table_name cascade на превью нашей компании вместо локалки. Ржака да и только :DСмертельный рев команды тестировки был слышен аж из самой Москвы
Сисадмин сказал, что дело житейское, но все равно выточит мне медальку!
А если смотреть чуть позитивнее, то наконец-то тестировщики в работу возьмут мою задачу по репликации данных на превью - очень даже хороший плюс :D
🔥3😁3🤯1
Забыл рассказать важную (для меня) новость
Наконец-то, спустя год ожидания мы с семьей переехали в другую квартиру🥳
У меня теперь есть свой отдельный уголок, где можно спокойно с комфортом работать за большим столом
Впервые в жизни мне предоставилась нормальная возможность работать с перерывами на еду, недалеко отходя от кровати😃
График теперь примерно такой: 8:30 проснулся, до 18 основная работа, до 21 с семьей, до 00 подработка. По выходным тоже, конечно же, в обед и ночью подработка.
Благодаря этому я в этом месяце на подработке отработал 80 часов, что не может не радовать, потому что наконец-то куплю себе xbox, почему-то прям чешется его купить🤔
Справедливости ради, у меня и до этого был такой график (уже чуть больше месяца), просто сейчас не надо тратить время на дорогу до офиса и ночью гораздо удобнее работать за рабочей станцией, чем на ноуте
На подработке фронт еще молодой, иногда пишет после 21, вопросы задаёт. На резонный вопрос "ебанулся? Выгоришь" - смеется. Хороший запал
Наконец-то, спустя год ожидания мы с семьей переехали в другую квартиру🥳
У меня теперь есть свой отдельный уголок, где можно спокойно с комфортом работать за большим столом
Впервые в жизни мне предоставилась нормальная возможность работать с перерывами на еду, недалеко отходя от кровати😃
График теперь примерно такой: 8:30 проснулся, до 18 основная работа, до 21 с семьей, до 00 подработка. По выходным тоже, конечно же, в обед и ночью подработка.
Благодаря этому я в этом месяце на подработке отработал 80 часов, что не может не радовать, потому что наконец-то куплю себе xbox, почему-то прям чешется его купить🤔
Справедливости ради, у меня и до этого был такой график (уже чуть больше месяца), просто сейчас не надо тратить время на дорогу до офиса и ночью гораздо удобнее работать за рабочей станцией, чем на ноуте
На подработке фронт еще молодой, иногда пишет после 21, вопросы задаёт. На резонный вопрос "ебанулся? Выгоришь" - смеется. Хороший запал
👍3❤1
Вот кстати и само рабочее место, а еще кошка, которая из-за стресса из-за переезда теперь от меня не отходит и даже спит со мной, хотя раньше даже подумать бы не мог о таком ❤️
❤1👍1
О важности автогенерации документации вашего api
Tl;dr: дока только через автоген, а чтобы этого достичь иногда можно и нужно срать на стандарты
Как-то меня последний год обходила стороной необходимость вручную писать доку. Сначала был graphql, где доку вообще делать не надо, а потом перешёл на проект на симфони, где дока генерится при деплое исходя из аннотаций на экшене контроллера.
Я даже и не подозревал, во-первых, насколько это удобно, а во-вторых, насколько это важно для скорости разработки и главное для желания вообще хоть что-нибудь разрабывать и менять.
Извечная проблема программистов в том, что программу постоянно надо менять и чем легче это делать, тем нам проще.
Так вот я все это к чему: на подработке используется yii2 и еще мои собственные наработки, максимально облегчающие разработку апи, НО! совершенно не трогающие момент с документацией. Из-за этого приходилось руками писать доку на аннотациях в пхп, следя, не забыл ли я случайно где-то параметр или тот ли я указал тип. Это жопа. Это трудоемко, это пустая трата времени.
Плюнул, потратил 3 часа на полную переработку подхода и в итоге получил автогенерацию доки при деплое, прямо как на основной работе. Вдовесок к этому получил полную типизацию всех возвращаемых значений при обработке данных. Двойной выигрыш.
Есть очевидный минус - в классе, производящем обработку данных, мы теперь имеем аннотации, относящиеся к документации апихи, о которых класс знать не должен вообще. Плохо ли это? Очень! Но мне абсолютно все равно🤣 В конце концов, код выполняет свою цель, не сильно при этом засираясь. Более того, такой подход куда практичнее, чем многоуровневый маппинг с "запросов" на "команды", а потом на "ответы".
Но давайте я все же подчеркну основную мысль - это не энтерпрайз и это не команда из 10 человек, я тут один. Тут срать все хотели на подобные мелочи, заказчику важен результат здесь и сейчас. Соответственно, и подходы мной выбираются исходя из этого.
Писать чистый совершенный код невозможно, абсолютно в любой ситуации придется чем-то жертвовать и уж лучше это будет небольшое нарушение разделения зон ответственности, чем мое время и нервы
Tl;dr: дока только через автоген, а чтобы этого достичь иногда можно и нужно срать на стандарты
Как-то меня последний год обходила стороной необходимость вручную писать доку. Сначала был graphql, где доку вообще делать не надо, а потом перешёл на проект на симфони, где дока генерится при деплое исходя из аннотаций на экшене контроллера.
Я даже и не подозревал, во-первых, насколько это удобно, а во-вторых, насколько это важно для скорости разработки и главное для желания вообще хоть что-нибудь разрабывать и менять.
Извечная проблема программистов в том, что программу постоянно надо менять и чем легче это делать, тем нам проще.
Так вот я все это к чему: на подработке используется yii2 и еще мои собственные наработки, максимально облегчающие разработку апи, НО! совершенно не трогающие момент с документацией. Из-за этого приходилось руками писать доку на аннотациях в пхп, следя, не забыл ли я случайно где-то параметр или тот ли я указал тип. Это жопа. Это трудоемко, это пустая трата времени.
Плюнул, потратил 3 часа на полную переработку подхода и в итоге получил автогенерацию доки при деплое, прямо как на основной работе. Вдовесок к этому получил полную типизацию всех возвращаемых значений при обработке данных. Двойной выигрыш.
Есть очевидный минус - в классе, производящем обработку данных, мы теперь имеем аннотации, относящиеся к документации апихи, о которых класс знать не должен вообще. Плохо ли это? Очень! Но мне абсолютно все равно🤣 В конце концов, код выполняет свою цель, не сильно при этом засираясь. Более того, такой подход куда практичнее, чем многоуровневый маппинг с "запросов" на "команды", а потом на "ответы".
Но давайте я все же подчеркну основную мысль - это не энтерпрайз и это не команда из 10 человек, я тут один. Тут срать все хотели на подобные мелочи, заказчику важен результат здесь и сейчас. Соответственно, и подходы мной выбираются исходя из этого.
Писать чистый совершенный код невозможно, абсолютно в любой ситуации придется чем-то жертвовать и уж лучше это будет небольшое нарушение разделения зон ответственности, чем мое время и нервы
❤1👍1
Очередная статья против микросервисов
К сожалению, пока не за моим авторством
https://habr.com/ru/articles/779362/
Почему-то с каждым разом как про них заходит разговор, мне все меньше хочется с ними работать. Звучит как дроч и решение зачастую несуществующих проблем
Хотя нет, работать с ними хочется - обычно там платят много😃
К сожалению, пока не за моим авторством
https://habr.com/ru/articles/779362/
Почему-то с каждым разом как про них заходит разговор, мне все меньше хочется с ними работать. Звучит как дроч и решение зачастую несуществующих проблем
Хотя нет, работать с ними хочется - обычно там платят много😃
Хабр
Смерть от тысячи микросервисов
пролог и ссылка на оригинал Это перевод-адаптация https://renegadeotter.com/2023/09/10/death-by-a-thousand-microservices с вкраплениями моих собственных мыслей. Я не профессиональный переводчик,...
🙈1
Говно с дымом!
Первый год, когда сложно подвести итоги, потому что дома просто атас
У нас по факту с новым годом празднуется и новоселье, поэтому толпа родственников с радостным гулом сейчас играет в мафию, я естественно с ними)
Кратко итоги года:
1. Вас стало 37, это +25 с прошлого нового года🥳
2. Поменял 2 работы, щас наконец-то прям всем доволен🥳
3. Переехал 🥳
За год чисто по техническим моментам была куча изменений и новшеств, поэтому сложно все упомнить
Я каждый год думаю, что стал умнее, но в конце года каждый раз осознаю как был глуп; звучит грустно, но я этому рад😃
Всех с новым годом! Спасибо, что остаетесь со мной и читаете! В новом году желаю сумасшедшего роста всем, как карьерного, так и личностного!❤️
Первый год, когда сложно подвести итоги, потому что дома просто атас
У нас по факту с новым годом празднуется и новоселье, поэтому толпа родственников с радостным гулом сейчас играет в мафию, я естественно с ними)
Кратко итоги года:
1. Вас стало 37, это +25 с прошлого нового года🥳
2. Поменял 2 работы, щас наконец-то прям всем доволен🥳
3. Переехал 🥳
За год чисто по техническим моментам была куча изменений и новшеств, поэтому сложно все упомнить
Я каждый год думаю, что стал умнее, но в конце года каждый раз осознаю как был глуп; звучит грустно, но я этому рад😃
Всех с новым годом! Спасибо, что остаетесь со мной и читаете! В новом году желаю сумасшедшего роста всем, как карьерного, так и личностного!❤️
❤6🎉3👍1