Получи случайную криптовалюту за регистрацию!

Road to IT 🚀

Логотип телеграм канала @roadtowebdev — Road to IT 🚀 R
Логотип телеграм канала @roadtowebdev — Road to IT 🚀
Адрес канала: @roadtowebdev
Категории: Карьера
Язык: Русский
Количество подписчиков: 148

Рейтинги и Отзывы

3.00

2 отзыва

Оценить канал roadtowebdev и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

1

4 звезд

0

3 звезд

0

2 звезд

0

1 звезд

1


Последние сообщения

2023-04-21 19:09:19 Испытательный срок пройден!

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

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

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

Да я и сам своего рода интроверт. Иногда, люблю побыть наедине с собой. Зачастую, предпочитаю тихую спокойную обстановку в кругу самых близких, чем тусу на шумном пати. Редко делюсь своими мыслями и переживаниями. В свое время, начитавшись умных книжек, я понял, что не нужно сваливать стресс и сомнения на свой темперамент. Быть проактивным и врываться во все авантюрные движухи, не чувствуя стыда, укоров и боязни - это то, что я выбрал пару лет назад. И я не прогадал. Благодаря поддержке семьи, супруги и близких друзей я двигаюсь с таким настроем каждый день. И каждый мой день - лучше предыдущего.

В общем, продолжаю работать над собой, ответственно выполнять задачи, приносить пользу бизнесу и пользователям из мед учреждений, прокачивать техническую компетентность и софт скиллы и наслаждаться каждым днем. Новые цели намечены. И есть дорога только вперед. Работаем!
73 views16:09
Открыть/Комментировать
2023-03-28 22:41:59 Вот и прошел первый месяц испытательного срока. До сих пор не верится. С каждым днем чувствую себя увереннее и с полной отдачей погружен в работу с головой. Какие бы хотелось сделать выводы за прошедший месяц?

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

Не прошла мимо моя заинтересованность к тайм-менеджменту и повышению собственной эффективности. Я пришел в компанию, которая уже начала тестировать некоторые методики из скрама и находится на стадии поиска эффективных способов повысить продуктивность команд в каждом проекте. На каждом митинге стоят эти вопросы на повестке дня. Не составило труда четко планировать время на задачи различной сложности, не смотря на то, что я еще далек к пониманию многих нюансов проекта. Как и в обучении, в работе я также применяю разбивку задач на подзадачи и трекинг времени. Понаставил себе в редактор и в браузер всякие связанные с этим полезные расширения. Конечно же поделился со всеми своими методиками и с некоторой скромностью ("народ, я всего лишь месяц в этой компании, какой из меня скрам мастер?!"), но при этом с огромной радостью раздаю советы в этом направлении.

Напомню, что мы трудимся над второй версией приложения для учета фармацевтических препаратов. И тем временем я почти закончил целый раздел, связанный с реестром справочников из Минздрава. В основном все блоки содержат информацию для чтения. Кое-где необходимо было прикрутить целый арсенал CRUD запросов. И я уже набил руку проходить весь путь реализации подобных блоков: SQL запросы - сервис для коннекта с БД - контроллер - документация и валидация в DTO для Swagger - API в store на фронте - подключение к роутеру - компоненты вьюшки и их функционал. На днях полностью закрою раздел и перейду к более сложным задачам. Поговаривают, самая веселуха начнется когда мы зарелизим эту версию.

Несомненно, за месяц работы я хорошенько прокачался во Vue и других смежных технологиях. У тебя просто не остается выбора изучить технологию, чтобы выполнить задачу. Но со временем осознаешь, что впитываешь новую информацию быстрее и не застреваешь. Все потому что фреймворки и библиотеки, необходимые тебе на данном этапе просто-напросто облегчают тебе жизнь. А самое сложное было позади. Главное - база. Полностью понимая нативный JS, ты с ходу разбираешься с его работой под капотом в том или ином фреймворке. Теперь ты просто с кайфом изучаешь новую информацию, просто понимая, что с помощью нее ты в несколько раз быстрее напишешь код. А SQL, внутренности бэка, да и в целом DevOps учишь не только для того, что это нужно для работы, а просто потому что у тебя уже сформировалось мышление программиста и ты уже с огромным любопытством лезешь во все эти необъятные дебри. От себя рекомендую, но ни в коем случае не призываю, изучить Vue. Знал бы его раньше, топил бы за написание командного проекта на нем. Тем более в связке с Quasar - это просто пушка. Но, как говорится, все познается в сравнении. И, да, я теперь типичный адепт Vue 3.

В общем, нисколько не жалею, что выбрал этот путь и считаю, что мне действительно повезло с первой работой. Потихоньку вписываюсь в коллектив, проявляю какую-никакую инициативу, трудолюбиво и с интересом исполняю задачи. Делаю все, чтобы закрепиться и стать действительно крутым специалистом. Цель ясна. Дело в дисциплине и времени. Продолжаем двигаться вперед. Самое интересное впереди!
95 views19:41
Открыть/Комментировать
2023-03-10 19:42:05 Первые впечатления.

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

В первый день после знакомства с командой и экскурсии по офису, мне провели презентацию архитектуры проекта и помогли настроить мой рабочий компьютер. Дали достаточно времени, чтобы ознакомиться со структурой проекта, продакшн версией, таск трекером, код стайлом и другими необходимыми инструментами. Вот тут то я и столкнулся с тем самым синдромом. Такого я ранее не видел. Проект в десять раз больше, чем все вместе взятые проекты, с которыми мне приходилось работать. Более того, почти любая задача на этом проекте стоит на трех китах - SQL, бэк на Nest и фронт на Vue. Сюда также можно добавить безопасность, CI/CD и многие другие важные аспекты, которые нужно учитывать. Хотя с этим можно разобраться в процессе работы, я все же выделил несколько дней после работы для более глубокого изучения. Приятно подбодрили слова тим лида о том, что это нормальный процесс и все через это проходили.

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

Наслаждаюсь каждым днем. Безумно рад, что все так сложилось. Но сейчас не время расслабляться. Постараюсь сделать все, что в моих силах, чтобы пройти испытательный срок и закрепиться. Уверен, что на этом месте я найду множество возможностей для роста и развития.
89 views16:42
Открыть/Комментировать
2023-02-28 13:22:08 Официальное заявление:

Я СДЕЛАЛ ЭТО! Я ЗАБРАЛ СВОЮ ЦЕЛЬ!

После двух недель волнительного ожидания, трех нелегких этапов собеседования, тестового задания с неизвестным для меня стеком мне наконец-то пришло положительное решение! Только что вернулся из офиса компании, на котором мне сделали официальное предложение. С завтрашнего дня приступаю к работе в должности Junior Fullstack разработчик!

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

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

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

Друзья, нет ничего невозможного. Не слушайте никого и не смотрите всякие видео про кризис в айти, высокую конкуренцию и перенасыщенный рынок. Сконцентрируйтесь на себе. Только усердная работа и безумное желание. Непрерывно обучайтесь, прокачивайте софт скиллы, стучитесь во все двери, не опускайте руки, мотивируйтесь и вы 100% придете к своей цели. Дорогу осилит идущий!
79 views10:22
Открыть/Комментировать
2023-02-24 13:42:48 48 неделя.

● Часы: 10ч (739ч)
● Темы:
Командный проект "RS Clone" (Практика)
Тестовое задание "E-mail App" (Практика)

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

За выходные я управился с тестовым заданием и отправил работодателю. Нужно было написать простенький клон электронной почты, который принимает рандомные входящие письма и отправляет на сервер созданные черновики. Если на то, чтобы сформировать бэкенд на Nest с несколькими запросами для получения, отправки и удаления писем и привязать к SQlite ушло буквально пару вечеров, то фронтенд на Vue 3 был самой сложной частью работы над заданием. Хоть и логика приложения была довольно простой, приходилось большую часть времени углубляться в теорию незнакомого для меня стека. Благодаря Quasar над версткой думать не пришлось. В доке дается конструктор макета, который ты можешь сформировать под себя. Трудности возникли с реализацией логики компонентов. Шаг за шагом, разбираясь в документации и перебирая различные варианты, мне все же удалось сделать рабочее приложение, используя Composition API в скрипте каждого компонента и Pinia (аналог Redux во Vue) для хранилища писем.

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

Я сделал все, что мог, чтобы представить себя в лучшем свете, и теперь дальнейшее решение находится в руках работодателя. На данный момент я решил сконцентрироваться на отдыхе и решении своих бытовых дел, чтобы лишний раз не думать об исходе. В случае отказа я не буду расстраиваться, потому что понимаю, что это не означает неудачу, а может быть лишь шагом к новым возможностям. Буду использовать этот опыт, чтобы выявить свои сильные и слабые стороны и использовать их для улучшения своих шансов в будущих интервью. В найме всегда есть элемент случайности, и отказ не обязательно может быть связан с твоей производительностью или навыками. В общем, держу себя в руках, остаюсь позитивным и продолжаю двигаться вперед!
50 views10:42
Открыть/Комментировать
2023-02-17 15:08:06 47 неделя.

● Часы: 26ч (729ч)
● Темы:
Командный проект "RS Clone" (Практика)
Тестовое задание "E-mail App" (Практика)

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

Заключительное интервью по курсу состоялось в среду. Меня кошмарили более двух часов. Но я держался бодренько и уверенно. Мы прошлись по всем модулям из списка вопросов. Даже затрагивали такие темы, как Design Patterns, тестирование, HTTP. Порешали несколько задачек на тему Event Loop, прототипов, каррирования и замыкания. Как итог - 10 из 10. Я не отвечал идеально на все вопросы, да и знать все от корки до корки невозможно. На мой взгляд, нет никакого смысла зазубривать определения. Главное не волноваться, мыслить вслух и говорить от своего понимания.

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

Первая компания занимается автоматизацией здравоохранения. На старте нашего общения сразу же отметил, что ценю разработку технологий, которые могут помочь людям. Заговорив о социальной ответственности, тех лидер рассказал мне впечатляющую историю о работе в красных зонах во время ковида. В общем, собес шел замечательно и на технических вопросах я также чувствовал себя уверенно благодаря позитивному общению. В конце дали тестовое задание по стеку Vue, Quasar, Nest JS, SQLite, которое нужно выполнить в течение двух недель. Половину работы я уже сделал, хотя стек для меня абсолютно чужой. На следующей неделе отправлю и буду ожидать результата. Эта компания мне определенно понравилась.

Второй собес прямо противоположен первому. Если коротко, то это небольшой завод и в их IT команду требовался веб-разработчик, который умеет писать на PHP, строить 3D модели и даже чуть-чуть сисадминить. Вряд ли бы я пошел туда, если бы такая информация была указана в вакансии. Но я решил пообщаться хотя бы ради опыта собеседований. Технических вопросов не было от слова совсем. Вот ряд вопросов, которым я, мягко говоря, был удивлен: "Какая у вас машина?", "Как давно вы женаты?", "Почему уехали из Москвы?", "Готовы забирать работу домой?". Насколько я понял, это проверка на реакцию. Но зачем? Под конец дали тестовое наверстать лендинг, но не дома, а сидя у них в офисе. Сколько времени мне пришлось бы просидеть там? Естественно я отказался, поблагодарив за уделенное время. Довольно необычный и интересный опыт. Рекомендую.

Приучил себя не строить никаких надежд, чтобы лишний раз не расстраиваться. Однако за шанс, предоставленный первой компанией я обязан ухватиться. Поэтому продолжаю работать над тестовым, вложив всю душу и силы. Дел невпроворот, чтобы отдыхать!
56 views12:08
Открыть/Комментировать
2023-02-10 15:11:39 46 неделя обучения.

● Часы: 27ч (703ч)

● Темы:
Командный проект "RS Clone" (Практика)

● Что я сделал за эту неделю:

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

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

Я занимался страницей аналитики, на котором должен быть инпут-календарь, задающий период для аналитики, три различных диаграммы и список последних транзакций. Для календаря я использовал библиотеку компонентов React Suite, а для диаграмм Recharts. Для установки диаграммы на страницу недостаточно просто установить пакет и вставить кусок в страницу. Нужно учитывать массу нюансов, такие как ui, адаптив, внутренняя логика диаграммы. Здесь то я и столкнулся с проблемами. Часами изучал API библиотеки, подбирал нужные пропсы и связывал компоненты между собой. А так как мы следуем структуре Future Sliced, всегда нужно помнить о паттерне независимости компонентов.

Помнится, мне кто-то доказывал, что решение задач на CW - бессмысленная трата времени, так как на реальных проектах мне это не пригодится. Однако, решения различных алгоритмических задач на протяжении всего курса не прошли бесследно. На текущем проекте, по моему мнению, мне удалось элегантно решить пару таких. Например, нужно написать функцию, которая принимает массив объектов от сервера, в которых содержится информация о транзакции: название категории, дата транзакции, тип транзакции (расход или доход), сумма, и возвращает отсортированный по дате массив объектов со следующими свойствами: название месяца и баланс юзера за данный месяц. Другая функция принимает такой же аргумент, но должна вернуть массив объектов со свойствами: название категории, сумма расходов по данной категории. Решая подобные задачи на реальных проектах, получаешь истинное удовольствие.

Основная бизнес-логика почти готова и нам остается только доделать настройки пользователя, потестить приложение, задеплоить фронт и бэк и подготовиться к презентации. Кроме того, на следующей неделе во вторник состоится заключительное хард интервью, которое определит соответствую ли я необходимым знаниям. Хоть все силы и брошены на проект, но в свободную минутку штудирую доку и пересматриваю видео с собесами. Постараюсь выложиться на максимальную мощность. Работаем, дамы и господа!
63 viewsedited  12:11
Открыть/Комментировать
2023-02-03 18:33:28 45 неделя обучения.

● Часы: 22ч (676ч)

● Темы:
Командный проект "RS Clone" (Практика)

● Что я сделал за эту неделю:

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

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

Наивно полагать, что так гладко разработка продолжаться не будет, ведь мы ещё не приступили к основному функционалу и бизнес-логике. Нет никаких сомнений, что с любыми трудностями мы справимся. Первая неделя дала это понять. Приятно осознавать, что в команде единомышленников с горящими глазами мотивация успешно закончить проект растёт многократно. Работаем!
52 views15:33
Открыть/Комментировать
2023-01-27 12:22:25 44 неделя обучения.

● Часы: 22ч (654ч)

● Темы:
Модуль "Design Patterns" (Теория, тест и Codewars)
Командный проект "RS Clone" (Практика)
Модуль "React. API" (Теория и практика)

● Что я сделал за эту неделю:

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

Пару точечных откликов на этой неделе я сделал, но всё таки перед тем, как с головой погрузиться в рынок вакансий, нужно закончить одно важное дело - написать с командой финальный проект. Во время первого митинга, на котором я был удостоен чести принять на себя роль условного тим лида команды, мы определились со стеком и с предварительной задумкой проекта. Фронтенд будем писать на React + TS, бэкенд на Node JS + Express + MongoDB. Ничего не остается, как схватывать все на лету. Может показаться банальным, однако идея по написанию клона приложения Expense Tracker пришлась всем по душе. Не стоит исключать, что в дальнейшем этому приложению будет применение среди друзей и близких. Так сказать, повысим финансовую грамотность населения. В общем, эту неделю я посвятил поиску хорошего образца с нужными нам фичами, а также занимался самообразованием в области планирования и организации работы в команде. Со следующей недели распишем ТЗ, скрупулезно распределим обязанности и разложим все по полочкам.

Также, на этой неделе продолжил погружаться в реакт, попутно делая проектики с нарастающей сложностью. Как бы не спугнуть этот превосходнейший "фреймворк" (~150k установок create-react-app в неделю тоже не шутки), я наслаждаюсь работой с ним больше, чем сталкиваюсь с проблемами. Однако начал осознавать, что чем больше проект, тем становиться тяжелее следить за состояниями. И вот тут я наткнулся на Redux. Этого монстра оставил на потом, потому что и поспать как бы надо, и работа есть, и дела бытовые присутствуют.

Давно не говорил про новую работу. Там кстати тоже все хорошо. Увеличили нагрузку в два раза. Теперь разбираю вопросы и задания учеников в специальной форме. Код-ревью стало больше. Вообще классно, когда получаешь искреннюю благодарность от ученика, которому помог встречными вопросами выйти на ошибку и он сам наконец-таки ее понял. Болею за них, особенно за тех, кто пришел учиться не из-за хайпа, а просто кайфует от разработки. И таких много. Есть все таки у нашей айтишки будущее. =)
85 views09:22
Открыть/Комментировать
2023-01-20 16:21:20 43 неделя обучения.

● Часы: 17ч (632ч)

● Темы:
Модуль "JavaScript Error Handling" (Теория и тест)
Модуль "CoreJS Interview #1" (Интервью)
Проект "Presentation. Recorded" (Презентация)
Проект "Async Race" (Практика)
Модуль "React. Hooks" (Теория и практика)

● Что я сделал за эту неделю:

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

Ко вторнику завершил работу над Async Race. Считаю его одним из лучших проектов на протяжении всего курса. Постоянные ошибки асинхронности и ESLint, настроенного под Airbnb не давали заскучать. Да и реализация некоторых фич давалась сложнее чем в интернет-магазине. Например, долго бился над синхронным стартом после асинхронного запроса на сервер запуска всех двигателей. Непростой задачей также был отлов ошибки 500 (двигатель сломался) во время анимации авто. Загвоздка в том, что время отправки такого запроса совпадает с временем движения и после прибытия на финиш ответов на этот запрос быть не должно. В общем, повозиться пришлось, но зато с большим интересом. Таким образом, удалось окунуться в суровую реальность общения с сервером на фронте, что очень даже полезно для дальнейших разработок. Понимание асинхронной природы JavaScript - это в принципе одно из самых важных знаний на любом проекте и задача сделать интерфейс для CRUD запросов присутствует при разработке практически любого сайта, который работает с какой-либо базой данных.

Первое промежуточное интервью прошел успешно и на максимальный балл. Вопросы касались самых базовых знаний JS и работы с DOM, порешали несколько задачек и даже поговорили про Event Loop, принципы ООП и структуры данных. Держался достойно на протяжении полутора часов, однако есть некоторые пробелы, которые нужно залатать. К примеру, затруднялся ответить про основное отличие onclick (и т.д.) от addEventListener. Не сразу смог догадаться, что значение new Set([...]) выведет не массив уникальных значений, а экземпляр объекта Set с коллекцией. Ответы на подобные вопросы должны отскакивать от зубов. Впереди еще заключительное интервью, в котором подобных вопросов в помине не будет. С благодарностью за такую возможность, принимаю этот пройденный опыт и работаю над своими пробелами, чтобы продемонстрировать свои знания и навыки на высшем уровне.

Еще в прошлом году, работая над интернет-магазином и познакомившись с компонентным подходом, сразу же решил ворваться в изучение React. В свободное от курса время почитываю документацию и пишу на нем мини-проекты для себя. Понимая, как работает под капотом виртуальный DOM и роутинг, не составило труда быстро разобраться с тем, как работает JSX, пропсы, стейты и жизненные циклы. Поигравшись с ними сначала на классах, осознал как можно круто работать с хуками в функциональном подходе. Продолжаю погружаться в продвинутые темы с широко открытыми глазами. Ведь то, что я мог написать в сотни строк на JS, на реакте пишется гораздо короче и эффективнее.
149 viewsedited  13:21
Открыть/Комментировать