Путь JavaScript Senior: подборка ресурсов для вдохновения
JavaScript Senior – звучит солидно и ответственно, но не предел. В этой статье 5 важных направлений для развития и подборка материалов по ним.
Сеньор хорошо разбирается в языке, поэтому простые курсы ему неинтересны. А что интересно? Мы немножко подумали и пришли к выводу, что JavaScript Senior может успешно развиваться в следующих направлениях:
- свежие идеи;
- повышение качества;
- новые глубины;
- новые вершины;
- полезные навыки, не связанные с программированием напрямую.
Свежие идеи: быть в курсе
У сеньора всегда сложно со свободным временем, и возможность вдумчиво спокойно почитать фундаментальный труд по языку выдается редко. Не страшно: современный JavaScript-мир молод и динамичен. Он буквально кипит новыми идеями: успевай хватать. И медиа у него соответствующие – динамичные и удобные.
Подкасты
Подкасты – идеальный способ для JavaScript Senior оставаться в курсе событий, узнавать новое и не тратить при этом много времени.
- Живой и энергичный канал Фронтенд Юность прямо в тему рассказывает о том, чем отличается сеньор от миддла и джуна.
- Frontend Weekend стимулирует к дальнейшему развитию, рассуждая о карьере IT-руководителя.
- Вадим Макеев держит в курсе новых веб-стандартов.
- Новости 512 следят за свежими релизами.
- uWebDesign сурово и по чесноку рассказывает об IT-рынке в России.
- Пятиминутка React обозревает хардкорные JavaScript-новости.
- Weekly Vue наблюдает за развитием Vue-экосистемы.
- Андрей Мелихов из devSchacht советует, как пересадить всех разработчиков в компании на свой велосипед.
- JS-jabber – для англоговорящих JavaScript-разработчиков.
А если вы не хотите ограничивать себя только рамками JavaScript, то взгляните на нашу подборку 58 подкастов для программистов.
Рассылки
Еще одна классная вещь – рассылки. Актуальные новости и случайные советы приходят каждый день, просмотреть их можно за минуту и выбрать только действительно интересные.
Почти все крупные IT-порталы предлагают свои подборки (нашу форму подписки вы найдете сразу после текста статьи) – выбирайте на свой вкус. А вот еще парочка:
- отличный еженедельный дайджест JavaScript Weekly;
- ежедневная рассылка Versioning по фронт- и бэкенду, дизайну, новым технологиям и еще десятку разных тем.
Повышение качества: лучше, чем простой JavaScript
JavaScript Senior имеет достаточные знания, чтобы легко ориентироваться в сложных концепциях и инструментах. Он может осознанно выбирать лучшие техники для создания более простого и надежного кода.
Качественный JavaScript
Умение отличать хороший код от плохого очень важно (особенно если вы работаете с джуниорами). Elijah Manor расскажет о коде "с душком" и предложит способы его рефакторинга.
И конечно, в этом пункте просто нельзя не вспомнить о Чистом коде Роберта Мартина. Книга хоть и не про JavaScript, но каждый пример в ней на вес золота.
Типизированный JavaScript
Если вы не идеализируете свой рабочий инструмент, то, вероятно, видите некоторые несовершенства JavaScript. Впрочем, в зависимости от стиля программирования они могут считаться и достоинствами или изюминками.
В любом случае полезно знать, что в JS могут быть реализованы удобные возможности других языков. Лучший пример этого – TypeScript. Вот небольшая подборка по нему:
- Официальный сайт с настройками, примерами и документацией (а здесь на русском языке);
- Полное руководство от metanit;
- Работа с TypeScript в VS Code;
- Mastering TypeScript – глубокое погружение в язык;
- TypeScript Design Patterns – шаблоны создания приложений.
Что новенького в TypeScript в 2018 году?
Тестируемый JavaScript
Конечно, JavaScript Senior прекрасно знает о важности тестирования и отладки кода.
В этом видео (все еще актуальном, несмотря на 2013 год) Mark Trostler из Google рассказывает об архитектуре тестируемых приложений.
Рекомендуем также отличную серию статей о тестировании JavaScript-кода (автор Gil Tayar):
Оптимизированный JavaScript
JavaScript Senior пишет не просто работающий код, а код, который работает лучше всего. Оптимизируйте бесконечно, а это видео вам поможет:
Удобный JavaScript
Какой бы продукт вы ни создавали, он предназначен для конечного пользователя, и именно его удобство должно стоять на первом месте. Сделайте юзабилити вашим приоритетом.
Сначала взгляните на юзеров с оригинального ракурса вместе с Andre Staltz :
Затем узнайте больше о доступности интерфейсов и о том, как их правильно тестировать.
Новые глубины: с уровня "как" на уровень "почему"
Джуниор пытается заставить код работать, миддл знает, как написать работающий код, а сеньор понимает, почему его код работает.
Тонкости языка
Что выбирает JavaScript Senior для легкого чтения? Конечно же, спецификацию языка. Вот самая свеженькая – от июня 2018.
А еще есть насыщенные примерами руководства Dr. Axel Rauschmayer, которые можно использовать как справочники:
Рекомендуем также вернуться к серии YDNJS, без которой не обходится ни один JavaScript-дайджест. Даже если вы уже знакомы с ней, в этих книгах всегда можно найти что-то новое или неожиданно вспомнить что-то хорошо забытое.
И напоследок еще одна неплохая книга Сила JavaScript (Effective JavaScript) Дэвида Хермана. 68 примеров, на первый взгляд несложных, но с углублением в тонкости языка.
А в этой короткой презентации сам Brendan Eich расскажет немного о своем детище:
JavaScript-движки
Если долго вглядываться под капот JavaScript, можно познать смысл жизни. Начните познавать его с презентации Матиаса Байненса на JSConf EU 2018:
А вот два замечательных материала по оптимизациям движков того же Матиаса:
Основы работы браузеров подробнейшим образом расписаны в этом лонгриде. Там же вы найдете отличную подборку ресурсов для более глубокого погружения в тему.
И напоследок вот вам для разминки Десять вопросов о Node.js, на которые вы не сможете ответить.
Новые вершины: глобальное видение
Одно из главных отличий JavaScript Senior от Middle – это способность видеть весь проект целиком как совокупность его отдельных частей. Это умение приходит с опытом, и не только собственным. Обобщенный и скомпилированный опыт профессионалов программирования – к вашим услугам:
- Реализация классических паттернов проектирования на JavaScript;
- Паттерны JavaScript: курс, который упростит разработку;
- Архитектура масштабируемых JavaScript-приложений от Nicholas Zakas;
- Рассказ о двух MVC от Yehuda Katz;
А Malte Ubl расскажет, как создавать очень большие JavaScript-приложения:
Полезные навыки: soft skills
JavaScript Senior – уже не только технический специалист. Ему приходится взаимодействовать со многими людьми, чтобы лучше понимать задачи и выбирать оптимальные пути их решения. Чтобы достичь успеха, нужно активно прокачивать soft skills.