Фронтенд-архитекторы: N вопросов и ответов о пути роста фронтенд-инженеров

внешний интерфейс
Фронтенд-архитекторы: N вопросов и ответов о пути роста фронтенд-инженеров

Ответчик на вопрос: Хуан Йи, в настоящее время работает в Zoom архитектором интерфейса, работал в Didi и Baidu, окончил Пекинский университет науки и технологий.

1. Фронтенд-разработка

проблема

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

отвечать

  • Есть ли болевые точки в развитии бизнеса, которые можно решить техническими средствами?
  • Какие технологические стеки и окружающие их экологические цепочки я обычно использую для развития бизнеса, хорошо ли я в них разбираюсь и каковы принципы их реализации?
  • Обычно я сталкиваюсь с ошибками в процессе разработки и отладки в течение длительного времени. Могу ли я улучшить свою способность быстро находить ошибки и решать проблемы?
  • Если требование указано выше, а готового колеса нет, могу ли я его быстро построить?
  • Если есть проблема с использованием стороннего руля, могу ли я найти подходящее решение или даже поучаствовать в собилде?
  • Эти вопросы были упомянуты выше.Вы могли бы также спросить себя, если вы не делаете достаточно хорошо, все направления, которые вы можете улучшить.

проблема

Я хочу знать, почему вы всегда интересуетесь фронтенд-профессией (индустрией), продолжаете исследовать каждый день, продолжаете учиться и прогрессировать каждый день, как вы проявляете настойчивость?

Так же, как врач (профессор/эксперт) в больнице, который большую часть своей жизни усердно работал в этой отрасли, как поддерживать дух обучения каждый день? Дух исследования? И долго к ней привязываться? Сделал большой вклад в общество.

Я знаю, какая решимость и настойчивость у вас есть, чтобы продолжать учиться каждый день, продолжать исследовать и двигаться вперед?

отвечать

  • В основном движимый интересом, сохраняйте энтузиазм и любопытство к технологиям.
  • Второе — это чувство выполненного долга: когда я приобрету новый навык и решу сложную проблему, я испытаю большое чувство выполненного долга.
  • Первые несколько лет работы очень критичны.Это этап с наибольшим пространством для роста и самой энергичной энергией.На этом этапе необходимо получить больше знаний.
  • Учиться бесконечно. Вы Да сказал одну вещь, которая меня очень впечатлила: «Те, кто занимается умственным трудом, склонны копать глубже, и тем больше они обнаруживают собственную ничтожность и невежество».

проблема

Недавно я получил предложение стажировки от Didi Chuxing.Я хотел бы спросить вас, что вы можете посоветовать стажерам (или студентам, которые впервые пришли в ИТ-индустрию) с точки зрения интеграции и продвижения?

отвечать

  • Стажеры должны больше заниматься бизнесом, работать на опережение и стремиться к тому, чтобы стать постоянными клиентами.
  • Кроме того, я настоятельно рекомендую перейти в мою предыдущую команду.Теперь главный босс Мяо.Вы можете связаться с ним в частном порядке~

проблема

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

отвечать

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

проблема

Г-н Хуан И, есть ли у вас какие-либо идеи по внедрению модели BFF в проект? Я надеюсь, что вы можете ответить немного более широко, и с нетерпением жду вашего ответа.

отвечать

  • BFF по-прежнему очень выгоден в агрегации сервисов, особенно сегодня, когда микросервисы очень популярны, клиентскому интерфейсу нужно обращать внимание только на необходимые данные, а не на базовые сервисы, которые предоставляют эти данные. Я так играл, когда был на Didi и Zoom~

проблема

Извините, если вы работаете неполный рабочий день, на каких аспектах вы обычно сосредотачиваетесь? Кроме того, какие каналы рекомендуются для поиска подработки?

отвечать

  • Главной проблемой является эффективность затрат, потому что за счет моего свободного времени это либо заработать больше денег (сложно), либо улучшить свои способности.
  • Лучше всего познакомить со знакомым.Если у вас его нет, то можете зайти на форум Shuimu, чтобы найти его (я уже находил его раньше).Если у вас нет опыта работы с другими каналами, то рекомендовать не буду .

проблема

Г-н Хуан, я хотел бы узнать ваше мнение о передовом опыте взаимодействия с внешними и внутренними данными, ajax? аксиомы? Подождите, есть какие-нибудь рекомендации для систематического обучения?

отвечать

  • Обычно существует два метода связи для взаимодействия с интерфейсом и сервером: HTTP и WebSocket. Рекомендуется сначала систематически изучать знания, связанные с HTTP. Рекомендуется прочитать «HTTP авторитетное руководство» или «Иллюстрированный HTTP».
  • К тому же упомянутые вами аксиомы это всего лишь инкапсуляция Ajax.Если вы хотите понять принцип его реализации, то я только что прошел курс "Рефакторинг аксиосов с нуля на основе TypeScript" на МООК. Детали реализации аксиомов будут освоены, а в то же время многие знания, связанные с HTTP, могут быть объединены.

проблема

Г-н Хуан, я только начинаю работать с интерфейсом, и у меня много недостатков. Я хочу найти несколько видео для обучения. Сейчас я в основном использую платформу Vue. Можете ли вы порекомендовать мне какие-либо видео?

отвечать

  • Здесь без рекламы не обойтись.Вы можете пройти мой практический курс на MOOC.com~ Трилогия Vue, как вводный, так и продвинутый.
  • Тем не менее, в дополнение к просмотру видео для обучения, я также рекомендую вам читать больше официальных документов и использовать приведенные выше примеры. Последняя ссылкаwww.imooc.com/t/3017249

проблема

В настоящее время я работаю бэкэнд-инженером почти пять лет. Когда я только начал работать, я думал, что внешний интерфейс — это просто написание страниц и взаимодействие с небольшими требованиями к навыкам. Сам я предпочитаю фронтенд, потому что те, кто занимается бэкендом, также будут касаться и фронтенда, поэтому я пока не переключился на фронтенд. Работа также направлена ​​на укрепление базовых технических навыков. Постепенно я обнаружил, что интерфейс — это не то, о чем я думал сначала.Текущий интерфейс может быть применен к различным клиентам, серверам, а также компонентизация и модульность, что стимулировало мое желание узнать больше о интерфейсе, поэтому я использовал свое свободное время, чтобы узнать больше о технологиях, связанных с интерфейсом. Сейчас популярно разделять фронт и бэкенд, бэкенд служит только интерфейсом, и не касается фронтенда, что мне вообще нравится, мне нравятся технологии, но не бизнес, но бизнес тоже очень важен. По моему опыту, после того, как проект завершен и запущен, это в основном бэкенд, Терминал решает проблемы в работе или использовании пользователем, поэтому рассматривается переход на полноценный фронтенд. За последние несколько лет я написал интерфейсы, написал встроенные приложения h5, написал проекты, которые не разделены до и после, а также написал проекты, которые разделены до и после.Я хотел бы спросить, что Хуан Дасянь думает спереди- конечная перспектива?

отвечать

  • На самом деле, если у вас есть богатый опыт работы с бэкендом, вы можете перейти сразу к полному стеку, а не к постоянному фронтенду.
  • Даже если фронтенд и бэкенд разделены, один человек может завершить разработку обоих концов.
  • И чем выше вы поднимаетесь, тем дальше вы можете продвинуться, если вы хорошо разбираетесь как в передней, так и в задней части.
  • Так что хорошо, что ты идешь в направлении фронта, но не оставляешь тыл.
  • Back-end это не просто творог.Когда бизнес сложный и количество пользователей велико, задач гораздо больше, чем перед front-end.Если в вашей компании такой задачи нет, то рекомендуется перейти на большой завод, чтобы испытать это.

проблема

Касательно front-end разработки, как улучшить собственный рабочий процесс? Текущий рабочий процесс очень примитивен. Процесс четкие требования - разработка проекта (среда разработки/формальная среда) - тестирование - онлайн. Если вы проходите собеседование на большом заводе, вы пострадаете от рабочего процесса. Как г-н Хуанг изучил различные связи, включая инициализацию проекта, локальную разработку, совместную отладку, тестирование и запуск?

отвечать

  • Всех их обучают на больших фабриках, и программисты должны больше думать обо всех аспектах запроса от генерации до реализации.
  • Теперь большинство людей могут достичь атрибутов каждого процесса от разработки проекта до запуска, Фактически, в Zoom мы начнем с дизайна продукта, и мы разработаем, как продукт должен быть реализован и какие функции он должен выполнять. потребности пользователя С точки зрения владельца Проектировать и разрабатывать, а также нести ответственность за тестирование и запуск продукта — это качество, которым должен обладать инженер.
  • Таким образом, даже в компании со многими менеджерами по продукту инженеры могут больше участвовать в разработке продукта и обсуждениях.

проблема

Большой парень, что ты думаешь о флаттере, станет ли он полноценным решением в будущем? Особенно после того, как флаттер превращается в паутину.

отвечать

  • Веб-разработку он точно не заменит, а что касается дуал-энд приложений, то можно обратить внимание на практику применения некоторых крупных мобильных компаний, таких как Didi, Ali, Tencent, Toutiao и т.д.

проблема

Как промежуточный уровень пробивается до старшего фронтенд-инженера? Вы пробовали сами писать фреймворки и библиотеки?

отвечать

  • Промежуточный интерфейс в основном может быть разработан независимо, чтобы соответствовать основным функциональным требованиям, а качество среднее.Трудно выполнить сложные бизнес-требования и требует руководства и контрольных показателей по сравнению с Alibaba p5.
  • Перед продвинутым уровнем у него есть способность работать в одиночку, быть в состоянии выполнить работу с высоким качеством, быть компетентным в разработке сложных бизнес-требований, быть в состоянии понять общую реализацию системы/команды и быть в состоянии усовершенствовать новые методы или решения в процессе внедрения или предложить улучшения существующих решений Предложено и доказано, что оно эффективно, бенчмаркинг Ali p6.
  • На самом деле, прорыв уровня, побочная обратная связь - это рост способности, так как же улучшить способность? Будьте ленивы и трудолюбивы. Упомянутый здесь термин «ленивый» означает не выполнение меньшего количества требований, а большее обдумывание и обобщение результатов развития бизнеса, обучение абстрагированию, повторное использование кода и уменьшение дублирования труда. Научитесь использовать инструменты, которые помогут нам решить проблему человеческой плоти.
  • Например, самые популярные идеи программирования в интерфейсе в последнее время — это модульность и компонентизация, которые, по сути, предназначены для повторного использования кода и улучшения его ремонтопригодности.Например, нам нужно разработать общие библиотеки компонентов, библиотеки JS и т. д. для вспомогательных наш деловой кодекс. И почти все проекты теперь используют инструменты построения, чтобы помочь нам в разработке, наиболее представительным является веб-пакет, который может помочь мне инициализировать код, отладить, скомпилировать и упаковать и т. д., что очень помогает нам сэкономить время разработки, не так ли? изучите его конфигурацию и даже исходный код.
  • Таким образом, если вы потратите время на изучение этих идей программирования и овладение этими инструментами, это может помочь нам очень хорошо улучшить нашу технологию. Помимо того, что мы «ленивы», мы должны быть еще и усердными.Хоть мы и заняты делом, мы часто не настолько заняты, чтобы писать код по 8 часов работы.
  • Если мы будем экономить время на ежедневном изучении технологий в группе, просмотре моментов WeChat и т. д., я считаю, что пока мы придерживаемся этого, технология определенно будет улучшаться быстрее, чем другие, особенно младшие студенты, у вас все еще есть много возможностей для совершенствования Обязательно уделяйте больше времени учебе, вместо того, чтобы тратить время на вопросы типа «Я работаю 1-3 года, сколько нужно выходить?» Зарплата должна соответствовать способностям.
  • Что касается направления обучения, то пока оно связано с вашей работой и у вас нет глубоких технических знаний, все в порядке.

проблема

Доучившись до определенного уровня, я не могу войти и не могу перестать читать. Я хотел бы спросить, сталкивался ли начальник с подобной ситуацией, и можно ли как-то посредничать? Спасибо~

отвечать

  • Когда ты не можешь учиться, ты можешь сделать что-нибудь, чтобы расслабиться, а потом оглянуться назад, когда будешь в хорошей форме~

проблема

Нужен ли Node.js для фронтенда, но у компании пока нет сценариев применения, если вы не сможете его использовать после обучения, то забудете.

отвечать

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

проблема

Мне как младшему фронтенд-инженеру предстоит очень запутанная дорога, и я не знаю, как учиться и совершенствоваться Учитель, вы можете дать мне совет?

отвечать

  • Во-первых, это фундамент, который представляет собой не только внешний фундамент, но и базовые знания, связанные с компьютером (структура данных, сеть).Фундамент должен быть заложен прочно. Это можно сделать с помощью многократного чтения и практики кодирования.
  • Второе - разработка проектов.Вы используете в работе стек технологий.Вы должны им владеть.Начать можно по официальным документам,закрепить на кодинге на работе,посмотреть качественные обучающие видеокурсы для повышения квалификации(есть здесь подозреваются рекламные объявления).
  • Вышеупомянутое - главное, что нужно сделать на начальном-среднем этапе. На самом деле, это постоянно тратить время на изучение +кодирования и сначала найти способ стать квалифицированным работником.Есть еще много возможностей для улучшения в начальный уровень.
  • Intermediate-Advanced, аналогичный вопрос ниже.

проблема

Г-н Хуанг, могу я спросить, какие компетенции требуются для разработки интерфейсов среднего и продвинутого уровня?

отвечать

  • Промежуточный интерфейс в основном может быть разработан независимо, чтобы соответствовать основным функциональным требованиям, а качество среднее.Трудно выполнить сложные бизнес-требования и требует руководства и контрольных показателей по сравнению с Alibaba p5.
  • Перед продвинутым уровнем у него есть способность работать в одиночку, быть в состоянии выполнить работу с высоким качеством, быть компетентным в разработке сложных бизнес-требований, быть в состоянии понять общую реализацию системы/команды и быть в состоянии усовершенствовать новые методы или решения в процессе внедрения или предложить улучшения существующих решений Предложено и доказано, что оно эффективно, бенчмаркинг Ali p6.

проблема

В Node ts я действительно играю один, ts изучается лицом к лицу с вашим курсом, но некоторые интервьюеры переспрашивают меня, Node ts не играл в реальной производственной среде и осмелился выйти и сказать «да», поэтому они отвергли меня, Эти вещи есть, но у компании не было возможности играть раньше, но я не знаю, как вести себя с таким интервьюером, надеюсь, вы сможете ответить. Еще много чего нужно собрать, чтобы играла хорошая команда, а сейчас такой возможности нет.

отвечать

  • На самом деле, вы также можете создать несколько собственных игр и опубликовать их на GitHub, это могут быть статьи или проекты.
  • Я ранее брал интервью у парня из Ctrip, их стек технологий — React, но он изучил реализацию Vue.js и написал мини-версию реализации Vue, что вызывает у меня хорошее чувство.
  • Так что хотя некоторые технологии не применялись в производственной среде, но вы их освоили путем самостоятельного изучения и подкинули какие-то результаты, я буду думать, что вы человек, который любит технологии и любит подбрасывать.
  • Если вы это сделаете, а интервьюер все равно вас не узнает, значит, ваши ценности не совпадают, то не о чем сожалеть, если вы провалите собеседование.Собеседование изначально представляет собой двусторонний процесс отбора~

проблема

Как можно более разумно классифицировать различные компоненты для среднего и крупного внешнего проекта? Например, основные компоненты, бизнес-компоненты.

отвечать

  • Обычно он делится на базовые компоненты, бизнес-компоненты и компоненты представления.Базовые компоненты обычно решаются в библиотеке компонентов.

проблема

Босс, сейчас я работаю в относительно крупной компании, занимаюсь интерфейсом и аутсорсингом. Я заканчиваю работу в среднем каждый день в 9:10, и я чувствую, что у меня обычно слишком мало времени на учебу, я хочу дополнить базовые знания. Я могу читать электронные книги только в пути, а затем некоторое время вводить код, когда возвращаюсь домой. Иногда в 11, 12 часов. Я немного поработал над этим и немного запутался. Я прошу совета у босса.

отвечать

  • Независимо от того, относитесь ли вы к аутсорсингу рабочей силы или аутсорсингу проектов, если рабочая сила передана на аутсорсинг крупной компании, попытайтесь найти способ стать постоянным.
  • Кроме того, вам нужно оценить, совершенствуетесь ли вы, работая так долго каждый день, или просто повторяя работу.
  • Если есть улучшения, то вы можете продолжать это делать.Если нет улучшений и нет хорошей возможности улучшить, тогда вы можете рассмотреть возможность пойти посмотреть на возможность ~

проблема

Окончил три года, первый год в небольшой компании, второй год в крупной аутсорсинговой компании по настоящее время. Текущее состояние таково.У компании есть старые проекты (13 лет использования до сих пор), которые нужно поддерживать, а также новые проекты (vue + микросервисы).Короче говоря, моя работа в основном заключается в поддержке этих старых проектов, на самом деле, работе я уделяю мало времени, у меня есть определенное количество свободного времени каждый день, соответствующая зарплата не растет, и нет корректировки зарплаты через год, так как важность старых проектов, естественно, снижается, будущее, кажется, не так много, чтобы с нетерпением ждать. На самом деле, я также участвовал в новых проектах, и я также проделал некоторую работу, такую ​​как общая модернизация строительных лесов, так что на работе не так много направлений обучения и улучшений, поэтому я сейчас учусь кое-чему. базовые вещи (протокол http, структуры данных и алгоритмы, сетевое оборудование и даже компьютеры). Поскольку я не изучал эти вещи систематически, я взял их и сказал, что они полезны, но в краткосрочной перспективе это не приносит никаких очевидных изменений.Мой вопрос, если мы исходим из реальности, как мы должны планировать на годы Уместно, какие направления обучения могут принести пользу в краткосрочной перспективе (например, проведение интервью?)?

отвечать

  • Если вы готовитесь к интервью в краткосрочной перспективе, я думаю, с одной стороны, вам нужно подготовиться к интервью.Вы можете прочитать буклет Nuggets, посвященный интервью, чтобы проверить наличие упущений.
  • С одной стороны, вам нужно хорошее резюме вашей существующей работы.Даже если кажется, что работа не очень техническая, будут ли какие-то яркие пятна, чтобы интервьюер мог увидеть ваши мысли о работе.
  • В конечном счете, если вы хотите сделать свой потолок выше, вам все равно нужно получить некоторые базовые знания о компьютерах.
  • Если в своей работе вы столкнетесь с родственными знаниями, которых не понимаете, вам следует усердно учиться, пока вы не поймете их.

проблема

Мой ВУЗ тоже в направлении .net.Сейчас на третьем курсе я обратился к фронтенду, понял базовые знания и готов учиться vue. Я сейчас немного волнуюсь, осенью собираюсь набирать, а проекта еще нет, что мне делать? Решать.

отвечать

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

проблема

Участвовал в наборе в школу Didi, но к сожалению не прошел собеседование, потом уже почти год как ушел в стартап компанию, отвечая за разработку webapp компании (Cordova+vue) и официального сайта, node и mysql для нормальных Я умею им пользоваться, я также отвечаю за back-end интерфейс и совместную отладку front-end и back-end, но я очень хочу пойти на большой завод, чтобы быть с отличными людьми и совершенствоваться. , так что я немного потерялся в будущем, потому что я действительно очень хочу пойти на большой завод, что мне теперь делать, я слишком нетерпелив?

отвечать

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

проблема

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

отвечать

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

проблема

Мистер Хуанг, как мне развить собственное архитектурное мышление?

отвечать

  • Это требует длительного накопления опыта, сказать несколько ключевых слов, учиться, думать, обобщать и общаться.
  • Учиться — значит стоять на плечах гигантов.Например, вы можете узнать из блога Чжан Юньлуна:github.com/fouber/blog
  • Мысль состоит в том, чтобы больше думать о том, какой дизайн является наиболее разумным, может ли он решить болевые точки текущего бизнеса, как быть дружелюбным к разработчикам при разработке и удобным для пользователя при запуске.
  • Резюме состоит в том, чтобы записывать, накапливать и осаждать каждое переживание словами. В это время вы также можете больше подумать об этом, есть ли места, которые неразумны, и есть ли лучший план.
  • Коммуникация заключается в том, чтобы поделиться некоторыми случаями, обсудить и пообщаться со всеми, а также столкнуться с разными искрами мышления.

проблема

Как создать хорошую систему знаний для начального карьерного роста?

отвечать

  • Глубина во-первых, не забывая о широте развития, система знаний, связанная с интерфейсом, может ссылаться на эту картину г-на Пу Линга:GitHub.com/Jackson TI Press….
  • Конечно, эта картинка является лишь ориентиром.Ваша система знаний все еще должна быть построена в процессе работы, поэтому вы должны принять свою работу в качестве критерия, глубоко изучить окружающие технологии цепочки инструментов, больше думать в процессе обучения и подводить итоги. часто Это пункт знаний, лучше изучить его полностью и не глотать финики целиком.
  • За некоторыми популярными технологиями не следует слепо следовать новым, если они вам не нужны для вашей работы, если вы не очень заинтересованы, вы можете просто узнать о них.

проблема

Здравствуйте преподаватель,я начинающий фронтенд работаю год.В настоящее время я немного запутался.Не знаю в каком направлении будет развиваться мой карьерный план в дальнейшем,будет ли он горизонтальным или вертикальным , попросить совета?

отвечать

  • В первый раз я предлагаю больше заниматься бизнесом, улучшать технологии, подождать 2-3 года, а потом уже думать о будущем направлении развития.
  • Что касается планирования карьеры, у меня есть ответ ниже.

проблема

Хуан Лао, фронтенд-тенденции последних лет — это mvvm, компонентизация, инженерия и машинопись. Как вы думаете, в каком направлении будет концентрироваться фронтенд в ближайшие несколько лет? Какие болевые точки еще нужно решить во фронтенде? Ждем вашего ответа, спасибо!

отвечать

  • Фронтенд обычно бывает нескольких направлений, сложных приложений (таких как веб-документы), визуализации данных (2D, 3D), фронтенд-инжиниринга и архитектуры.
  • Болезненные точки, такие как очень популярная в настоящее время многотерминальная структура, являются направлением, которое стоит изучить, но из-за противоречивых стандартов и реализаций каждого терминала текущее состояние трудно отлаживать и имеет много подводных камней.
  • Кроме того, если вы заинтересованы, вы можете расширить свой кругозор, например, сосредоточиться на ИИ, начать работу с машинным обучением и т. д.

проблема

Когда вы были новичком в веб-интерфейсе, сколько книг вы читали каждый день? Улучшить каким образом?

отвечать

  • Я не читаю много книг по фронтенду, и это далеко не несколько книг в день.Я неоднократно читал классическую Red Book и Rhino Books.Ранний этап в основном представляет собой ритм кодирования-чтения-кодирования-чтения.
  • Кроме того, я также рекомендую читать книги, связанные с широтой, такие как «Полное руководство по http», «Освоение регулярных выражений», «Шаблоны проектирования Head First», «Путь к очистке кода» и т. д.

проблема

Большой парень, я единственный front-end специалист в компании, и нет опытных людей, которые могут общаться и учиться. Могу ли я пройти путь от начального до среднего front-end инженера, полагаясь на собственное обучение?

отвечать

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

проблема

Что учителя думают о будущих перспективах развития настольных приложений, таких как электрон?

отвечать

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

проблема

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

отвечать

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

проблема

Чем обычно занимаются фронтенд-архитекторы?

отвечать

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

2. Оптимизация производительности

проблема

Есть ли рекомендуемые книги по оптимизации производительности?

отвечать

  • Расширенное руководство по созданию высокопроизводительных веб-сайтов

3. Vue.js

проблема

Здравствуйте, учитель, какой у вас опыт для повышения эффективности разработки, если вы используете стек технологий vue во фронтенде?

отвечать

  • Знание Vue.js может способствовать вашему быстрому развитию.
  • Глубокое понимание принципов Vue.js очень полезно для быстрого обнаружения ошибок и понимания границ его ответственности.
  • Кроме того, старайтесь использовать сторонние проверенные библиотеки, чтобы избежать повторного создания колес.

проблема

Через год после обучения три основных фреймворка знают только vue, и я готов сменить работу, но я чувствую, что моя база js не является прочной, vue не особо силен, а react совершенно неизвестен.Я хотел бы спросить о следующем пути обучения Что?

отвечать

  • Проверьте наличие пробелов и заполните пробелы.Если вы знаете, чего вам не хватает, найдите время, чтобы научиться.
  • Направление стека технологий Vue.js может рассмотреть возможность изучения моего курса, но это будет сложно, а также потребует вашего времени и терпения для обучения.
  • Другой - учиться и расти на работе.Если у вас есть один год опыта, вы должны больше заниматься бизнесом, больше думать и подводить итоги в бизнесе и использовать Vue, чтобы сначала использовать Vue, а затем изучить его принципиальную реализацию и изучить ее полностью. .
  • Позже будет проще изучить React и Angular, если потребуется.
  • Короче говоря, на начальном этапе позвольте себе сначала стать квалифицированным работником, а затем делать какие-то сложные вещи.

проблема

Господин Хуан И, вместе с вами мы изучили исходный код vue.js. Кроме того, я также изучил ts, сеть и основы построения. Далее, что мне следует изучить, если я продолжу изучать интерфейс? Я все еще смотрю исходный код веб-пакета для углубленных алгоритмов? благодаря.

отвечать

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

проблема

Как следует развивать и улучшать Vue?Я всегда чувствую, что нахожусь на техническом уровне бизнесмена.

отвечать

    1. Делайте сложные приложения, думайте, как решать различные сценарии под Vue, и выясняйте границы ответственности Vue (то есть, что Vue может и чего не может делать).
    1. Узнайте о принципах реализации окружающих экологических инструментов, таких как vue-router и vuex, и попробуйте написать несколько простых колес, таких как пользовательские инструкции, плагины и т. д.
    1. Прочтите исходный код, чтобы понять основные принципы реализации Vue.
    1. Участвуйте в совместной разработке исходного кода Vue или окружающих экологических инструментов.
  • Рекомендуется изучить исходный код используемого в работе тулчейна, например, если вы используете webpack, вы можете изучить webpack, будет лучше, если вы попутно напишете один-два плагина для webpack.
  • Кроме того, вы также можете прочитать некоторые классические книги и некоторые продвинутые видеокурсы.

4. Личностный рост

проблема

Может ли учитель дать некоторые справочные предложения для будущего планирования?

отвечать

  • Как правило, рекомендуется планировать обучение только на 3 года. Если вы только что закончили обучение, ваша цель в первые несколько лет – расширить бизнес и улучшить технологии.
  • Что касается планирования карьеры, аналогичный вопрос ниже.

проблема

Г-н Хуан, когда вы работали в Didi, вы были первым человеком в своей команде, вы создали команду? Можете ли вы поделиться своим мнением об игроках, которых вы хотите выбрать при создании команды, и как вы назначаете и оцениваете их работу?

отвечать

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

проблема

У небольшой компании нет крупного опыта и отличных проектов, как они могут встать на путь фронтенд-архитектуры?

отвечать

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

5. Исходный код

проблема

Хотелось бы спросить у великого мастера, с чего начать, когда он впервые изучил исходный код и организовал open source. В то же время, необходимо ли изучение исходного кода для реализации работы? Как его контролировать?

отвечать

  • Возьмем, к примеру, Vue.js: сначала это было вызвано интересом и любопытством, потом — написанием статей, что требовало глубокого изучения, потом их стали читать одну за другой на работе, а потом систематически читать. несколько раз перед записью курса исходного кода.
  • Преимущество просмотра исходного кода заключается в том, что он может укрепить внутреннюю силу, быстро найти и устранить ошибки, возникающие в работе, и полностью понять свои обязанности и границы. знакомство с исходным кодом, безусловно, является плюсом.

проблема

Какие фреймворки знакомы, какие больше подходят?

отвечать

  • Обычно желательно владеть фреймворком, используемым в работе, и достаточно других знаний. Поскольку многие идеи дизайна фреймворка одинаковы, как только вы овладеете одним, позже очень легко изучить другие фреймворки.

проблема

Когда людям исполняется 30 лет, как планировать следующие 5 лет?

отвечать

  • Планирование карьеры У меня есть ответ ниже.Я лично считаю, что это время все еще должно быть временем для технологий и написания кода.

проблема

Как вы относитесь к планированию карьеры? Прошло несколько лет во фронтенде, и я чувствую, что нахожусь в узком месте, в настоящее время я запутался, и цель не ясна.

отвечать

  • Обычно делают технологию вверх по 2 направлениям.
  • 1: Чисто технический маршрут: Архитектор-технолог
  • 2: Технология + маршрут управления.
  • Сначала найдите свое направление, если вас интересуют технологии, рекомендуется выбрать маршрут 1, в противном случае перейдите на 2.
  • Я не очень силен в управлении.Мой опыт таков, что во-первых, собственная техника должна быть отличной, чтобы люди, находящиеся под вами, узнавали вас, а во-вторых, вы должны думать о том, как максимизировать ценность команды, выгоду членов команды и обратите внимание на их рост.
  • Но какой бы путь вы ни выбрали, ваша технология должна быть хорошей, и я не рекомендую переходить на чистый менеджмент через 5 или 6 лет работы — слишком мало времени.
  • Поэтому вам все равно нужно совершенствовать свою технологию в настоящее время.Чтобы прорваться через узкое место и пройти, вам нужно выпрыгнуть из зоны комфорта и решить некоторые проблемы, которые нужно решить в прыжке.Лучше всего найти какие-то болевые точки в текущую работу и решать их техническими средствами.
  • Я вижу, что вы на ByteDance, и вы также можете обратить внимание на то, что делают другие команды.
  • Я знаю, что у Тутяо есть очень сильный начальник - Чжан Юаньвэй, он был моим наставником во время Байду, с ним тоже можно поговорить.

6. Наконец

Все вышеперечисленные вопросы и ответы исходят из:Я автор библиотеки с открытым исходным кодом, лучше прокрутите -- Йи Хуан, у вас есть вопросы ко мне?

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