Uncategorized

Итоги 2019. Что учить фронтендеру в 2020?

Итоги года 2019 // Max Frontend

Покажи мне свой гитхаб, и я скажу работал ли ты (если коммиты летят в githab и с личной почты :))

Таким был мой 2019:

План статьи:

  • Что было сделано в 2019м году для паблика?
  • План на 2020й год
  • Что учить в 2020м?
  • Как я переехал в Мюнхен
  • Советы за «жили-были»
  • Ответы на вопросы

Активность паблика в уходящем году

Все что было до мая этого года у меня как-то из головы вылетело, а было 3 вебинара:

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

Кроме вебинаров, я написал несколько статей и создал раздел Elm на maxpfrontend.ru

Статья про обучение программированию на vc, нашла своего читателя. С вашей помощью был набран стартовый рейтинг, статья вышла на главную, где ее доплюсовали до топ-1 читатели сайта. Спасибо. Приятно было находится на первом месте в ленте сайта, который я регулярно почитываю.

Планы на следующий год

Мне бы хотелось завершить первую версию проекта по Elm до конца зимы. На практике посмотрим как использовать TypeScript для webcomponents, как «релизить» приложение с CircleCI. Подтянем в проект уже существующий js-код библиотек, чтобы не писать все самим.

После релиза первой версии, прикинем что делать дальше.

Что учить в 2020?

Английский язык

Если получается учить самостоятельно, при наличии некоторой базы рекомендую сериал «Друзья» и Гарри Поттера в оригинале.

Для грамматики рекомендую «красный учебник Мерфи«.

Если не получается самостоятельно — ищем себе преподавателя онлайн или оффлайн.

Цель: чтение статей в интернете (с переводчиком для отдельных слов, разумеется).

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

Flutter для мобильной разработки

Как бы мне хотелось поставить сюда Elm, но увы. Против статистики не попрешь. RUVDS как раз подкинули статейку по этому поводу. В пересказе: flutter (основной язык — Dart) показал большой рост за 2019й год.

Для меня главным минусом в истории с изучением флаттера было то, что я все настраивал какие-то виджеты, на js-подобном языке. Скучновато. Но я думаю, если у меня будет идея приложения для заработка, я выберу именно этот стэк.

Elm

На сайте я публиковал материал «Почему мне стоит изучать Elm«, повторяться не буду, добавлю лишь, что этот язык вытянул меня из технологической спячки и я получаю новую базу, которому могу использовать дальше, если мне захочется разобраться с Elixir, например.

Это дивный новый мир. Это программирование, от которого вновь горят глаза. На практике полезность elm’а ясна как день — стабильность приложения.

Потенциал для карьеры — хороший. Изредка бывают вкусные предложения. Популярность языка неспешно растет.

TypeScript, React/Vue/Angular

Здесь все по прежнему. Вакансий уйма, предложений от соискателей тоже уйма. Спрос превышает предложение в больших городах.

Как я переехал в Мюнхен

В апреле 2019 года, я откликнулся на вакансию на Моем круге (теперь это Хабр Карьера) и получил тестовое задание в виде двух репозиториев. В одном была заготовка для задачи на react, во втором — на elm.

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

Для переезда необходимо получить визу. Для получения визы — высшее образование. Без «вышки» можно, но сложно.

Информация гуглится. Так же есть telegram-группа muenchentraktor, в которой помогут (тролли там тоже есть).

Про деньги: в Москве у вас будет оставаться больше денег, плюс многие услуги стоят дешевле. Таким образом, копить в Москве легче.

Я думаю интереснее для вас, зачем я поехал, учитывая что денег здесь меньше. Причины:

  • любопытство
  • elm
  • прокачка в английском

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

Прошло уже полгода, я не жалею о принятом решении. В минус не живу, но и накопления не растут. Путешествую по округе. Недавно открыл сезон в австрийских Альпах (1-2ч в пути!). Кто катается на лыжах/сноуборде — тот поймет, чего это стоит

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

Английский язык прокачивается. Из-за того, что я вечерами учу elm, а не грамматику, я не могу сказать, что говорю красиво, но понимать стал на слух гораздо лучше. Я стал разбирать слова в песнях.

Расширилась география знакомств. Я уже выяснил у бразильцев, смотрели ли они «Клон» и «Секреты тропиканки», скачивали ли хоть раз немцы что-нибудь с торрента и какая еще «дичь» происходит в Пакистане.

Советую ли я вам попробовать пожить в другой стране? Определенно да!

Советы за «жили-были»

Что помогает мне сохранять фокус продуктивности:

Отдых

Желательно подальше от монитора, но обычно это twitch Я смотрю канал back2warcraft. Аргументирую это тем, что помимо игры я еще и прокачиваю английский. Так же иногда посматриваю Quake Champions.

На выходных я один день трачу на природу, один день на код.

Спорт

Хожу в зал. В свое время, мне понадобилось больше года, чтобы привыкнуть. Если вы ищете человека (в Москве), который вдохнет в вас здоровый дух — добро пожаловать в клуб Онегин. Скажите, что хотели бы заниматься у Павла Емельянова.

План / Список дел

На бумаге или в туду-приложении. Не откладывайте, просто напишите список дел, которые вы бы хотели выполнить. Затем расставьте приорететы. Затем разбейте на мелкие задачи. Затем — полный вперед! Обычно я использую бумагу или файлы в markdown синтаксисе. Редактор — macDown.

Ответы на вопросы

Как насчёт вебинара по SSR?

К сожалению, пока планов по освещению этой темы нет, в связи с тем, что на своих проектах я практически не затрагивал эту тему.

Достаточно ли знать react и redux чтобы пойти на джуна? И на какую зп расчитывать?

Достаточно. Заработная плата зависит от региона проживания, чтобы ориентироваться можно посмотреть hh.ru и вычислить среднюю.

Расскажи как переезжал, пожалуйста. Какие визы и т.д.

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

Как в Мюнхене ЗП относительно МСК?

Если вы простой специалист (фронт/бэк без супер навыков), то с зп в Мюнхене копить как в Москве не получится. В ноль жить можно, при этом путешествовать и бывать в ресторанах. Цифры для старта здесь — 60000-70000 евро в год. Посмотрите налоговый калькулятор, чтобы понимать сколько будет на руки.

Есть ли опыт тестирования на puppeteer, как впечатления?

Опыт небольшой есть. Впечатления положительные. Работает хорошо, документация есть. Cypress кажется «моднее», но для сравнения производительности у меня еще нет достаточно данных.

Согласно отчета https://2019.stateofjs.com/javascript-flavors/ фронтендеры сначала переползают на эльм, потом на кложу. А денег больше всего платят за ризон. Что ты думаешь об этих языках (в контексте денег, интереса, простоты, распространенности)?

Я думаю, что это пограничные случаи. То есть, парочка человек с хорошими мозгами, кто полюбил ризон, ответили, что им много платят. Но скорее всего, им бы и за js много платили, так как они классные специалисты. Я думаю, стоит учить то, что потенциально имеет будущее и интересно вам лично. На данный момент, таким языком для меня оказался Elm. Closure имеет хороший потенциал, reason — под вопросом. Но изучение reason и Ocaml считаю хорошим вложением до определенного уровня: посмотреть технологию, пощупать интересно ли, попробовать что-то сделать на работе и если «прет» — продолжать.

На 2ality можно найти материалы про Reason и Ocaml.

Про верстку: что ты считаешь хорошей версткой? Знание каких либ/технологий из мира html/css маст-хев?

Хорошая верстка — адаптивная, которая не ломается на разных экранах. Так же неплохо бы поддерживать a11y.

Маст-хэв — флексы, гриды. Единицы измерения.

Хочу перейти из бэкенда во фронтэнд. Какой сейчас самый короткий путь? Верстка + JS + React? Стоит ли заморачиваться с версткой?

Верстка + js (typescript желательно) + React/Vue/Angular.

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

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

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


Спасибо, что были со мной в этом году! С наступающим и успехов вам в 2020м!

Макс

View Comments

    • Тема понравилась) а wp выбрал, потому что с gatsby было лень разобраться. Не могу сказать, что рад всему, как wp работает, но в целом пойдет.

  • Макс привет! Удачи в 2020.
    Спасибо за контент, который делаешь!

    Вопрос, почему не советуешь углубляться в алгоритмы?(последний вопрос в статье)

    « но для работы, возможно, нет»
    В плане все равно все сводится к map, filter, reduce? :grin:

    • > В плане все равно все сводится к map, filter, reduce?
      В принципе, да =) Конечно, я думаю знания алгоритмов помогут вам и в процессе устройства на работу и даже в работе, но если мы говорим про обычного трудягу-фронтендера, такие знания не будут необходимостью. Я бы сказал, чаще нужно не только уметь использовать map, filter, reduce, а правильно и быстро смекать по документации как должно работать и как сделать правильно.

Share
Published by
Макс

Recent Posts

Elm #2: Загрузка и отображение json

Сегодня будем использовать parcel и IntelliJ IDEA Community Edition. Все инструменты бесплатные. Инициализация elm проекта…

5 лет ago

Elm для React/Redux разработчиков (Elm #1: Знакомимся с Elm)

На данном вебинаре мы знакомились с языком Elm проводя параллели между Elm и Redux, поэтому…

5 лет ago

Масштабируем Elm-приложение (конспект)

Richard Feldman рассказывает как масштабировать Elm приложение без боли. Показаны техники: extended records, подход narrow…

5 лет ago

Elm видео, за ноябрь 2019

В данной заметке вы найдете конспект видео по Elm, которые я посмотрел в ноябре 2019.…

5 лет ago

Почему мне стоит изучать Elm?

Почему стоит изучать Elm? Потому что это интересный вызов, редкие (но вкусные) вакансии и хороший…

5 лет ago

Делайте невозможное состояние невозможным в Elm

В докладе разобраны различные техники создания модели данных в Elm, чтобы сделать невозможное состояние приложения,…

5 лет ago