zoukankan      html  css  js  c++  java
  • 面试题 面试准备

    面试准备

    #前言

    #面试分为三部分

    • 技术面试:问技术问题。

    • 负责人面试:考察综合能力。比如:项目把控能力、项目深度、项目架构、业务等。

    • hr 面试:侧重于性格、沟通、潜力等。

    每轮面试在一小时左右。

    #每轮面试的知识点

    一面:

    主要考察基础知识。

    • 页面布局

    • CSS盒模型、DOM事件

    • HTTP 协议、原型链

    • 面向对象、通信

    • 前端安全、算法

    二面:

    • 渲染机制

    • JS 运行机制

    • 页面性能

    • 错误监控

    三面:

    不再关注技术层面。

    • 业务能力

    • 团队协作能力

    • 带人能力

    终面:

    • 职业竞争力

    • 职业规划

    面试成功需要:技术过关、面试技巧等。

    #校招和社招各自看中的层面

    校招:

    • 知识:40%

    • 能力:59%

    • 经验:1%

    社招:

    • 知识:30%。比如协议、业务的认知程度。

    • 能力:50%。比如架构、业务的抽象能力、项目的把控能力。

    • 经验:20%。项目的体现。

    以上仅供参考。

    #面试准备

    面试准备包括以下四个部分:

    • 职位描述(JD)的分析

    • 业务分析

    • 技术栈准备

    • 自我介绍

    每个公司又有一套成熟的技术栈。比如在构建工具上,百度用 fis3、美团用 Gulp。

    你要面哪个公司,要先看看对方要求的技术栈。

    上面四个部分,我们接下来详细介绍。

    #职位描述(JD)的分析

    #介绍

    概念:

    • 职位描述:注重的是工作职责。

    • 任职要求:要求的是工作能力。通常描述得很细致。

    PS:前端的知识庞大,不可能所有的内容都准备好,但是要向“任职要求”靠拢。

    分析职位描述(JD)的目的是:

    • 快速识别出这个岗位是否是自己喜欢的、想要的。

    • 目前的技能是否能胜任岗位的要求。短期内的准备能否胜任。

    #举例1:京东 web 前端的职位描述

    如下:

    职位描述:

    (1)面试时,会同时考虑到 PC 端和移动端两个部分。

    (2)App H5开发指的是两层意思:

    • Hybrid 技术栈。

    • 纯 H5 开发。和 native 开发没有关系,比如活动、专题。

    (3)调试数据接口:要学习一下怎么模拟数据。

    (4)前端组件库的建立:要求较高但非常重要。体现在:

    • 基本功要扎实,原生 js、css的理解要到位。

    • 之前有没有前端组件库相关的项目经验

    • 是否通读过其他的 UI 组件库。

    (5)优化与重构:难度比第四条更大。

    PS:前三条是基本知识,第四条、第五条属于进阶。

    任职要求:

    (1)3年以上工作经验:不要太较真工作年限。精通 H5 特性:说明公司很看重移动端。了解H5最新规范:贵公司希望我对新技术是有追求的,比如ES6等。

    (2)要求我们对面向对象部分有足够的了解。组件化的编程也离不开面向对象。

    (3)体现了几点:

    • 熟悉 Web 标准:熟悉最新的标准即可。

    • 表现与数据分离:MVC框架。

    • 语义化:这个词千万不要忽视。不是什么都用 div。

    • 实际经验:利用框架开发的过程中,遇到过哪些问题?没有实际经验的话,也要提前准备几个问题。

    (4)以下几点:

    • 前端架构分析与设计...:说明此岗位并不面对初级岗位。因为工作一至两年的人,大部分都是做业务开发,缺少系统的架构能力。

    我们要准备一个项目的架构(比如公司现有的项目)重新梳理,包含:目录结构的设计、复用性设计、模块化设计、自动化测试、上线流是什么。

    • 易读、易维护的代码:面试过程中一定会让你写代码,来体现。要求;每个函数的功能要单一、能抽象尽量抽象。符合这两个原则,基本就满足了“易读、易维护”。

    • 高质量、高效率的代码,短时间内不好准备。

    (5)用户可用性、用户体验、用户研究:考察的不是技术,而是候选人对于产品体验的理解。不仅仅只是完成功能而已。

    (6)强烈兴趣等,是公司企业文化的一种要求。多去GitHub上看看别人的项目里用的什么新技术、多看博客。短时间内无法准备。

    (7)了解SassLess:这是基本技能。

    (8)熟悉web构建工具:新手推荐学习 Glup,而不是 grunt。当然,你要知道 Glup 和 grunt 的区别。

    PS:了解、熟悉、精通,是有区别的。

    (9)暂时可以忽略。如果 职位描述里没有要求Node.js,而你只会一点点 Node.js,那不建议你面试的时候把Node.js体现出来。否则是给自己挖坑。

    #举例2:艺龙的 web 前端的职位描述

    如下:

    此方位

    职位描述:

    (1)系统化设计:说的比较笼统。其实指的就是模块化设计、前后端分离(数据渲染交给前端)。

    (2)几点:

    • 前半句:并没有说 H5 是放在移动端做,可能同时包含 PC 和移动端。

    • 后半句:可以看出公司对 H5 动画的要求很高。动画有三种方式:用DOM写、SVG 的path做动画、canvas。canvas 又分 2D 和 3D。我们要看岗位描述里怎么要求的。既然提到CSS3,那么CSS3里面的animation、tansition也要了解。

    (3)微信项目,要准备:

    • 小程序:比如看贵公司有小程序吗?我们自己要准备简单的开发和文档、组件化的内容。

    • 微信支付。

    • 对微信开发中的哪些坑,要了解

    (4)和京东的第四条很像,既要会框架,也要会组件化设计。但京东的侧重从零开始,而艺龙侧重于:有的就维护,没有的就开发。

    岗位要求:

    (1)各种web前端技术:用词不严谨。

    (2)几点:

    • Web标准:JS的最新标准是ES6。

    • 可用性、可访问性:侧重于网站的性能。 前端要做性能监控、错误监控。JS异常分为两种:运行异常、资源加载错误。一般人只能说出第一种异常。

    (3)工程化:工程化已经是前端的必备技能。webpack是必须的工具,grunt已经过时了,如果公司提到,还是要了解。Gulp用的很多。

    (4)写得比较虚,面试时基本很难考察。面试时,如果写代码,要注意代码风格,该用 class、id、标签时,要注意区分。

    (5)要准备一下 Node.js。至少熟悉一门:可能要求全栈开发。

    (6)逻辑性强:能说出123。

    #业务分析

    业务分析

    CSS3 动画是重点准备的内容。

    jQuery 要准备事件委托、选择器等。

    ES6语法:import、export等。

    比如http://jr.jx.com/这个网站:

    通过简单分析源码,我们初步得知网站的以下几点:

    • jQuery

    • vue 框架

    • ES6

    • webpack 打包工具

    #技术栈准备

    上图中,左侧是前端技术核心,右侧是前端工程化。

    左侧:

    • jQuery:要注意看源码。看源码时,要看这几个:核心架构、事件委托是什么、插件机制、兼容性。

    • 三大框架:都是mvvm框架,准备一至两个即可,或者精心准备一个。面试时会问得很细。比如阿里会经常问Vue的源码。建议找网上的源码分析的文章。

    • Node.js:如果没有相关项目经历,就尽量不要提。

    右侧:

    • npm:npm的常见命令、npm scripts 怎么用的。

    • webpack:有个中文网站,讲的内容比较全。

    #自我介绍

    面试问的问题,很大层次上,取决你的简历和自我介绍。

    #简历

    简历中最重要的四个信息:

    • 基本信息:姓名、年龄、手机、邮箱、籍贯。

    • 学历:从大到小写。硕士 -> 本科。

    • 工作经历:时间、公司、岗位、职责、技术栈、业绩。业绩是大多数人所忽略的。

    • 开源项目、Github、说明。

    自我评价可以不写。

    项目的业绩上,要包括:技术收益和业绩收益。

    #自我陈述

    1、把握面试的沟通方向。

    如果陈述中谈到项目,面试官可能会问:

    • 负责了什么项目,项目是做什么的

    • 和前端的结合点是?你的角色是?项目中承担了什么责任?

    • 你在项目中的成绩?

    如果你说自己是项目负责人,会被问到:

    • 该项目怎么分配?有几个人参与?

    • 作为负责人,你的角色是什么?是项目管理还是技术管理?

    • 遇到技术难点,如何解决?

    #提问题

    如果在深入问题时,碰到不会的,不要说“我不知道”。建议回答:

    • 我要回去思考一下。

    • 这方面我没有经验,能不能指点一下?

    • 有什么建议或者参考资料吗?我想把这个东西弄懂。

    2、阔达、自信的适度发挥。

  • 相关阅读:
    Sprint2-3.0
    6/13 Sprint2 看板和燃尽图
    6/8/9/10/11 Sprint2 看板和燃尽图
    相互观看与评价
    复利计算器结对2.0
    汉堡包1.0
    复利计算5.0 结对
    《构建之法》第四章 二人合作 读后感
    复利计算器单元测试测试报告
    实验一、命令解释程序的编写实验
  • 原文地址:https://www.cnblogs.com/yzy521/p/14133269.html
Copyright © 2011-2022 走看看