Привет всем. Много воды утекло с тех пор, как я написала свою первую статью, которая касалась исключительно мотивации и личных интересов. Настало время рассказать о моем первом опыте работы.
На вакансию я откликнулась чуть больше месяца назад, перед этим неделю смотрела на нее и не решалась. Мне понравилось то, что требований было не слишком много. Ведь я одна из тех, которые не прошли даже второй проект по профессии. Но я рискнула, потому что срочно нужна была работа, а идти куда-то, где нет программирования, разумеется, не очень хотелось. Собеседование проходило в офисе и длилось максимум двадцать минут. За это время у меня спросили только базовую, самую фундаментальную теорию по JS, при этом я четко сказала, что не могу пояснить ни за HTML, ни за CSS, про фреймворки и речи быть не может.
Но меня взяли. Дали небольшие задания на отработку, опять же, нативных возможностей языка и теорию к ним. Что-то в духе «Напишите такую-то функцию из lodash» или «Сделайте собственную реализацию классов и наследования». Я их сделала и после майских праздников пришла в офис на работу.
И тут понеслось!
Первое задание состояло в следующем: «Напишите задачник на React с Redux Toolkit на TypeScript, а в качестве хранилища используйте IndexDB». У меня, разумеется, глаза на лоб полезли, но я не отчаялась и принялась делать задание. Сначала набросала верстку в обычном HTML-файле, а потом принялась разбираться с React по ходу дела. В итоге за пару недель добилась минимального функционала. Что-то работало, и я радовалась. Только не радовались те, которые приняли меня на работу.
Оказывается, это задание нужно было сделать за две-две с половиной недели, а я его даже не закончила. Мне сказали отложить это задание и дали следующее: сделать таблицу с возможностью инлайнового редактирования на React, которая принимает данные из PostgreSQL посредством сервера, запущенного на Express, и также умеет отправлять их обратно (добавление значений, редактирование и удаление только после ответа от сервера). Можно использовать библиотеки стилей типа Material-UI (в прошлом задании было нельзя). Не знаю почему, но тут я сильно успокоилась (наверное в душе я бэкендер). Я сделала это задание в общей сложности за две недели. На скриншоте из Sandbox вы можете видеть, как это дело выглядит, только вместо данных из базы — выдуманные. Но тут мне говорят, что в компанию приняли на работу джуниоров и обучать меня у них нет времени и возможности.
Мораль сей басни такова: благодаря Хекслету я получила сильную базу в программировании на JavaScript и это было замечено работодателями. Я целиком и полностью поддерживаю политику Хекслета и сейчас криво, но уместно процитирую комментарий ментора, оставленный где-то на просторах «Обсуждений»: «Хекслет — это про программирование в целом, а не производство React-разработчиков». Мне это по душе. В любом случае, я очень ценю опыт, который я получила на своей первой работе. Необязательно должно получиться с первого раза. И вот мой совет всем: идите к своей цели и помните, что you'll never know until you try :)
Отдельную благодарность хочу выразить Георгию Баратели, который поддерживал меня во время стажировки. Иногда мне казалось, что ничего уже не имеет смысла: кругом одни профессионалы, студенты и выпускники технических специальностей, а я тут сижу и под шумок пишу никому ненужную программу, которая еще и не работает как следует. И следующая мысль тут же: но я ведь здесь, в окружении профессионалов, которые меня приняли, помогают мне и не бросают. А я делаю все, что в моих силах. И, благодаря сообществу программистов, случайным людям из Stack Overflow, отвечающим на мои глупые вопросы, коллегам, ментору, близким и друзьям из интернета, появлялись силы действовать.