如何面试候选人-前端早早聊笔记

站着面试官的角度考虑应聘策略

额台-如何考察候选人的能力与潜力

基本要求

  1. 层级
    1. 校招 P5
    2. 社招 P6 起
  2. 工作年限与稳定性
    1. P6 要求工作 2 年及以上
    2. 稳定性: 5 年不能跳槽 3 次以上
      1. 如果确实跳的多, 有可能是
        1. 职业规划不清楚
        2. 团队协作/业务落地有问题
        3. 心态浮躁
  3. 面试记录
    1. 在阿里体系内所有面试都会有面试记录
    2. 半年内如果有非常不好的记录, 会受影响
    3. 不要随便面试, 不要留下不好的记录, 避免影响到后续
  4. 专业及职业经验
    1. 是否对口. 擅长方向是否和岗位相关----这时可能会选择转推荐/拒绝

层级标准

  1. P5
    1. 计算机技术的基础. 思考问题和表达问题的思维方式.
    2. 尝试据此判断未来地潜力
  2. P6
    1. 一般会招 P6+, 即, 招进来之后, 好好培养, 一年内能够升到 P7
    2. 资深工程师, 解决问题的能力
    3. 你做过什么事, 你解决过什么问题, 怎么解决的, 解决完成后沉淀了哪些东西
  3. P7
    1. 技术专家, 深度, 广度, 是否可以综合深度广度能体系化的解决一系列问题/大问题
    2. P6 => 解决前端复杂问题的能力
    3. P7 => 结合整个技术链路(前端+后端+其他), 体系化的思考架构/技术选型/解决工程化问题
  4. P8
    1. 高级专家, 前瞻性, 业务思考, 领导力
    2. 要求会比较虚
    3. 前瞻性思考, 怎么通过技术推动业务来解决业务的问题
    4. 对团队在技术, 在职业上有足够强的领导力

能力与潜力

  1. 如何判断候选人经历/经验
    1. 重点问候选人最近二三年最近在做什么事情, 做什么项目.
    2. 期望候选人重点描述所做的产品
      1. 业务模式是什么
      2. 产品结构是什么
      3. 背后的整体技术架构是什么
      4. 你在这里边你的位置, 你做了什么事情
    3. 结合回答往内挖
      1. 例如, 如果说做了一套可视化搭建系统, 可能会继续往里问候选人在这里
        1. 遇到了什么问题
        2. 解决了什么问题
        3. 沉淀了哪些东西
      2. 挖的过程中肯定会遇到候选人没考虑到的情况: 假设, 我给你提了一个 XXX 要求, 你要怎么实现它, 怎么考虑技术的架构或方案
        1. 观察候选人如何思考问题, 怎么分解, 怎么找到中间的关键点, 结合关键点怎样设计技术架构, 怎么推动落地. 推动落地的过程中, 如何处理质量/效率/团队协作的问题
  2. 如何在面试中判断潜力(二面)
    1. 面试前会先看面试记录, 如果已经面过的问题, 就不会再提问
      1. 换言之, 面试记录中要有: 提了哪些问题, 候选人回答的情况如何
    2. 会按候选人高一档的标准去问问题(例如, 第一面定级 P6, 那么按 P7 的标准提问)
      1. 一方面挖掘候选人是否可能能到下一个层级.
      2. 另外, 通过超出他本身经验和能力的问题, 考察他思考未知问题的思维方式. 来判断他往下一级的潜力
  3. 定级
    1. 一般充分尊重前一个面试官的定级

给应聘者的信息与建议

  1. 招聘及面试流程
  2. 如何最高效的投递简历
    1. 分析 jd
      1. 从 jd 中, 分析关键词
        1. 这个岗位是做什么的, 他要求什么能力, 要求什么经验
        2. 是否和能力契合
    2. 投递简历
      1. 内推/有人背书, 直接给到团队主管, 会更有针对性
      2. 找到岗位后, 最好找相关人帮你推荐
  3. 如何准备面试
    1. 把之前基础能力/经验要做充分的梳理准备
    2. 之前做了什么事, 沉淀了什么经验
  4. 面试过程
    1. 自我介绍时要互动, 讲面试官感兴趣的部分, 不要拖沓. 要和面试官进行充分的沟通和互动
  5. offer 的选择
    1. 判断哪个部门/职位对未来的职业发展更契合.
      1. 和部门主管聊聊, 了解清楚
      2. 这个部门是做什么的, 这个业务当前的情况如何, 未来会如何
      3. 进来之后我的职责是什么
      4. 我未来一年/三年, 您对我的期望是什么
    2. 确认之后, 慎重的做新职业的选择

荐书

  • 系统之美:决策者的系统思考
    • 大智慧, 用系统理论思考和分析问题
      • 大的系统如何分解成小系统
      • 系统间的关系(正反馈/负反馈), 如何评估一个系统
      • 教授思考方式, 如何将复杂问题抽象成小问题, 系统性的思考和梳理问题, 做出最佳决策
    • 分享者多年前读后, 虽然已经忘记内容, 但永远的改变了分享者

Q&A 环节

负责的这么多方向, 精力如何分配. 每个方向深入到哪个阶段, 是业务架构还是模块代码

团队 leader 有两个事情比较重要:

第一件事: 为团队找到方向, 打开足够的空间. 只有帮团队向上打开了足够大的空间后, 下边的小同学才能朝着这个方向发展才有更大的空间和机会.

这样就涉及: 1. 对业务的判断. 你要知道技术的核心价值, 要往哪走. 2. 向上管理, 要搞定老板, 搞定业务方. 来帮团队找到事情, 划好地盘.

第二件事: 要让团队的每一个同学能找到位置, 能好好地做事, 并且做的事情能得到公平公正的回报.

最近比较忙, 因为有业务融合, 需要把融合来的另一个团队的事情搞清楚. 和各种业务方/老板去聊, 融合后未来一到两年怎么发展. 基于发展来设计团队的核心事项, 以及团队同学需要朝哪个方向去发展.

等业务团队比较稳定了, 会关心团队的技术方向落地的计划是什么样子, 中间的技术方案是什么, 我们怎么去帮助技术方向找到落地场景.

个人分配不是固定的, 会基于前面两个原则, 进行动态调频

阿里 P7 的能力, 需要有哪些具象的要求, 需要做哪些事情

第一

对 P7 的要求: 技术开发的核心骨干. 一定要写代码, 写得好, 写得快, 这是最基本的要求

第二

在本专业的技术深度要足够, 对上下游, 或者相关的技术广度, 对他们的理解, 对它的工作方式, 工作原理要比较清楚. 结合了深度广度之后, 具象能力就是: 如何分析一个综合性的问题. 例如: 复杂系统中, 前端和服务端/客户端/其他相关方, 你的技术方案, 怎么设计, 系统的效率最高, 投入产出比最高, 大家的分工协作效率最高, 质量最高.

在某一个具体问题上, 例如多端输出, 可视化搭建, 复杂的前后端表单系统业务. 方案设计, 方案中间的细节(技术的具体选型, 选什么型, 技术选型间的区别和适应性), 要能够理解.

第三

这个事情要落地的话, 怎么驱动团队同学, 或上下游, 让大家一起好好配合. 例如单元测试/数据解耦让其可以好好落地

第四

系统量级有了变化后, 如何应对系统的变化

系统有多少用户, 数据量有多少, qps 有多少 => 直接影响技术判断/思维方式

伐薪-如何考察候选人的能力与潜力

我们为什么要招人

大纲

  • 招聘驱动来源(从最基本到最高)
    • 最基本:资源
      • 业务需求繁重,招聘干活的人
      • 踏实认真
      • 技术过关
      • 也可能招低 P/外包解决
    • 业务(P6+/P7)
      • 招聘骨干: 寻找能和业务方良好沟通并且发现机会
      • 好奇心
      • 沟通能力
      • 想象力
    • 技术
      • 寻找某个技术领域的专精者
      • 技术热情
      • 专注度
      • 严谨度
      • 独立思考
    • 文化
      • 寻找有横向能力的人
        • 做技术运营
        • 做技术发声
        • 将团队正在做的东西宣传出去
      • 组织能力
      • 热爱生活
      • 感染他人
    • 发展(要求是最高的)
      • 破局/开拓/未来的人
      • 未来观
      • 全局观

要求详述

以下基本要求过关, 至少能到二面三面

  • 技术过关: 代码测评
    • 思路是否合理(有没有将简单问题复杂化)
    • api 是否熟悉
    • 有没有考虑边界条件
    • 30 分钟之内想做出来不容易
  • 是否踏实
    • 被动跳槽还能讨论
    • 主动跳的话: 一年一跳, 很可能是有问题的
  • 认真
    • 细节是否注意
    • 在某一块领域是否专注

进阶要求:

  • 是否有好奇心
    • 大部分都是业务, 开发者是否关心业务
    • 做事情时, 有没有考虑到背后的业务流程是否合理, 需求的背景是什么
    • 能否识别到业务背后的背景
    • 示例
      • 京东:新通路同学来面试(向便利店供货, 为便利店提供货源), 会问以下问题
      • 背后的品牌商如何入驻
      • 小店通过什么系统采购京东的货品
      • 京东能为小店提供什么服务
      • 应收是如何做的
      • 目前遇到了哪些困境
      • 如果一个有好奇心的人, 除了做业务需求, 还是会关注这些问题
  • 沟通能力
    • 做业务团队, 大部分是要跟运营/产品沟通, 所以沟通能力也很重要
    • 沟通能力不行, 没法推事情
  • 想象力
    • 能否想象到业务中的机会
    • 例如今年新冠疫情期间, 线下展会能否放到线上. 如何把工厂的业务流程搬到线上
      • 产品: 工厂直播
      • 厂房: 通过 VR 展示, 通过全景方式数字化, 搬到线上
    • 然后才会有技术驱动业务的机会
  • 技术驱动
    • 技术热情
    • 对某一块领域的专注度, 严谨度, 独立思考(是因为风口才研究, 还是确实关心. 看到了这个领域对整个前端的驱动才去做)
  • 文化驱动
    • 组织能力
      • 能否带动人去搞事情
    • 热爱生活
      • 是否有自己的爱好, 能否自带人格魅力(让别人觉得像一个小太阳一样)
  • 破局者
    • 未来观(对历史/未来的判断)
      • 对未来有没有思考
      • 对自己的职业是否有规划
      • 对前端发展的判断
      • 对前端发展历史是否有自己的理解
    • 全局观(空间感)
      • 你对自己的事情, 全局的定位是什么.

我要招什么样的人

我对候选人和团队的要求

反面(会回避这种人)

  • 只想安静编码,不关心业务、团队和公司,只想做自己
  • 喜欢的工作,而不是业务或组织需要的事情
    • 需要能为公司产生商业价值
    • 不要搞屠龙之技
  • 没有专注的领域或者业余爱好(定力和专精度)
    • 能力的复制:
      • 只要有一块能做得好, 证明有机会迁移到其他领域
    • 优秀的人的特质是能迁移的
  • 把工作仅仅当做一份差事,而不是事业,缺乏自驱
  • 没有终生学习意识和好奇心的人

正向

  • 新人能折腾,老人能扛事
    • 好奇心,学习能力,人才培养和招聘能力
  • P7->P8
    • 重要产品和项目的 PM 及产品负责人
    • 在 CBU 技术部有较大影响力
    • 能承担技术部级别技术或业务项目
    • 在某一个领域有集团级独树一帜的研究和落地
  • P6->P7
    • 在大团队(50~100 人)有没有影响力
    • 你做的东西能不能分享到团队以外, 能不能被其他团队的人用
    • 某块领域(技术、业务或综合)有钻研
    • 在 CBU 前端及合作伙伴有较大的影响力
    • 有产品或技术领域能辐射到团队外部
    • 业务⻣干,合作方口碑好
  • P5->P6
    • 有冲劲和惊喜
    • 有技术特色,爱专研,有小产出
      • 有没有冲劲
      • 有没有小的惊喜
      • 有没有技术特色(喜欢钻研那一块, 有没有捣鼓出一些东西)

如何发掘人才特质

  • 技术热情如何考察
    • 保安三问(灵魂拷问)
      • 你是谁
      • 你从哪里来
      • 你要到哪里去(职业规划/体现对技术的理解)
    • 示例: 校招时提问: 你为什么要做前端
      • 可以考察出:你对前端领域是真的热爱, 还是只是觉得好进一点/门槛低一点
    • 分享精神
      • 如果真喜欢前端, 一定是会做一些小东西
      • 比如写一些博客, 小工具, 小项目, 小 demo
    • github 小项目
  • 好奇心如何考察
    • 业务理解
      • 为什么要做这个事情
      • 整个业务流程是什么
      • 这个项目在部门中大的定位是什么
    • 份内之外
  • 专注度如何考察
    • 深耕领域
    • 跳槽频率
    • 有无⻓期的爱好
      • 技术上的爱好(Go/Python/函数式编程)
  • 严谨度如何考察
    • 代码测评
    • STAR 面试法则
      • 情境(situation)、任务(task)、行动(action)、结果(result)
  • 热爱生活如何考察
    • 业余爱好
  • 独立思考如何考察
    • 会问一些为什么的东西
      • 例如: 候选人说自己做的是安全系统的行为监控, 如何打点/回放用户在系统上的操作
      • 故提问:
        • 你做这个事情的目的是什么, 一个黑客如果真要供给系统, 它的行为是否能被这个系统监控到 -> 考察独立思考的能力. 如果偏执行就答不出来
      • 候选人回答:
        • 这个是监控不出来的. 因为黑客要攻击你的系统, 都是通过后门或底层的东西去扫描注入. 不可能靠人肉点击, 在界面上留下痕迹. 这个功能主要是发现产品上的体验问题
    • 思辨精神
    • 业务价值
  • 感染力、激情如何考察
    • 一个有感染力, 激情的人, 一听就能听出来, 明显会很有精神

书籍推荐

深入理解计算机系统

前端是一个技能,不要把他当做一个角色,希望前端同学能够多掌握一些计算机系统知识,做一专多能的人才

Q&A

招聘过程中对跨行业面试会如何看待

看潜力和对技术的理解层度----看技术热情. 业余转行的话, 平常是怎么学习的, 平时有没有记录学到的知识, 甚至有没有进行分享. 看是不是对前端是真爱

面试过程中, 面试者一般会提出哪些方面的反问. 提什么问题可以增加好感, 促进相互了解

不要问技术点. 因为是可以去查到的

希望能问一些, 和业务相关的. 比如, 你负责的业务目前是怎么一个情况, 你团队现在规划的方向是什么, 这种开放性的问题

或者问, 有没有一些建议给他

不要问: 你觉得我这次能不能过----没什么意义

贵重-如何考察候选人的能力与潜力

做充分的准备, 投递合适的岗位

招聘理念

招(找)人是 leader 的事情. 为了找人, 会经常去脉脉上找人

  • Leader 的三 R
    • HR(招聘,建团队)
    • PR(团队结果被⼈感知, 提升团队在整个集团/BU 的影响力)
    • GR(关系处理, 跨团队协同)
  • 数据成果
    • 1000+社招简历筛选
    • 50+社招复试通过(二面)(粗算面试通过率 5%)
    • 240+校招面试

前端招聘全流程

  • 寻找候选人
    • 外部渠道
    • 内部推荐(更受重视, 能够第一时间安排面试)
    • 内部转岗
    • 内部人才系统
    • 定向挖掘
  • 评估候选人
    • 工作经历
      • 关注跳槽频次
        • 一年一跳就不合适
      • 因为希望看到候选人在岗位上的沉淀, 一定要花一定时间才能完成沉淀, 时间太短没有结果
    • 学历背景
    • 过往面试反馈
      • 作为一个参考
  • 面试候选人
    • 核心
      • 技术能力和组织影响力
      • 关键贡献和结果
      • 技术价值与业务判断
    • 扩展
      • 综合素质
      • 动机和意愿
        • 是否认同钉钉最近在做的事情
      • 潜力
  • 吸引候选人
    • 2B 市场价值
    • 钉钉价值
    • 团队价值
    • offer 价值
    • 个人成就
  • 候选人入职
    • 体检
    • 背景调查

容易被忽略的面试原则

  • 面试是双向选择的过程
    • ⾯试官视⻆考察候选⼈
    • 候选⼈视⻆看到是⼀个公司的形象代表
      • 候选人也在考察集团
  • 切忌和候选⼈⽐拼知识技能
    • 知识技能和每个⼈的经历关系很⼤,考察其能⼒,同样考察其学习能⼒
    • 展示⾯试官⾃身技能并⾮⽬的
  • 招聘是我们找未来的同事
    • 回答问题陷⼊困局,不妨点拨他下,想⼀想团队同学遇到不会的问题你会怎么做?
    • 如果可过可不过的话, 为要不要通过犹豫时,要考虑愿不愿意和他并肩作战
  • 要发现候选⼈会什么,⽽不是候选⼈不会什么
    • 他会的,能否为我们所⽤,是我们所需要的
    • 它的能力能否帮助到我们的业务
  • 候选⼈怎么"说"不要重要,怎么"做"才重要
    • STAR
    • 问题背后的问题(Question Behind Question)

⾯试候选⼈⾯什么

  • 硬实⼒
    • 代码
    • 架构
      • P7
        • 能够解决复杂的问题
        • 能够定义一个问题
  • 软实⼒
    • 学习能⼒
    • 沟通、协作、组织能⼒
      • 在阿里, 往往有多个团队在做同样的事情, 关注能否快速拿结果
      • 这里沟通/协作/组织就很重要, 并形成产出(快速拿到结果)
    • 聪明
    • 业务理解和判断能⼒
      • P7/P8
        • 要了解所在的业务, 能够判断今天业务的痛点在哪里, 市场在哪里
        • 以及我们今年的目标, 业务的一张图是什么, 整个业务的策略是什么, 然后再回到技术的一张图, 技术的策略
  • 动机和意愿
  • 潜⼒
    • 背景
    • 看到其厚积,等待薄发
      • 厚积: 过往所做的项目本身有很多积累, 只是限于他所在的团队/环境/业务导致其没能得到充分的发挥.
      • 所以在面试官当前所在团队能够给他空间去发挥, 可以等待发挥
    • 技术热情
    • ⾃我学习、⾃我管理、⾃我驱动

⾯试⽅法论-STAR+QBQ

  • STAR
    • Situation:事情是在什么情况下发⽣的
    • Task: 你是如何明确你的任务的
    • Action: 你采⽤了什么⾏动⽅式
    • Result: 结果如何,你学习到了什么
  • Question Behind Question
    • 考察的重点不是他/她怎么说,重点是他/她怎么做

STAR+QBQ 示例

  • Situation
    • 你做过这个 X 项⽬,项⽬的背景和要求是什么?
      • 可以随便问: 你最有成就感/骄傲/最成功/最失败的项目是什么, 选定项目
  • Task
    • 问题
      • ⾥⾯最有挑战的三个点是什么?
      • 为什么这些会是挑战?
    • QBQ
      • 总结能⼒: 有没有将项目涉及到的东西总结出来
      • 系统性思考能⼒: 有没有系统性的思考
  • Action
    • 问题:你当时是怎么解决的?
    • QBQ: 总结能⼒/系统性思考能⼒
      • 查看解决问题的复杂度如何. 避免项目结果很好, 但他在其中只是负责打酱油这种情况
      • 真实是有灰度地带的
      • 要看他到底是什么角色, 以及他是怎么解决这些问题的
  • Result
    • 问题
      • 结果是什么?你从项⽬中得到了什么/学到了什么
        • 取得了什么样的结果, 这个项目因为他而有什么样的改变
      • 如果重做⼀次,你会怎么做
    • QBQ:
      • 总结能⼒
      • 反思和⾃省的能⼒

例子: 某一个候选人, 每次做完一个项目, 回去想哪些工作是可以用工具替代的, 哪些是可以沉淀为系统, 哪些可以沉淀为机制, 最后带来整个效率的提升

而不是: 我今天做了一个项目, 明天又做了一个项目, 成为流水线上的力工

鼓励做总结, 写文章, 进行分享, 和业界同行进行交流

设计 STAR

根据候选⼈的经历/背景来设计 STAR,过程中可以再加新的 STAR,通过完整的 STAR 了解问题背后的/简历中没有体现的信息(例如候选⼈本⼈的贡献是什么, 是不是真如简历上所说的负责人/架构师. 如果确实如此, 那么候选人到底架构了什么, 负责了哪些, 这个项目因为他的改变是什么. 最终反映出候选人有哪些能力)

谨防假的 STAR

其他⾯试问题参考

  • 你离职后团队会有什么影响?
    • 看重候选人在团队中的角色, 重要性如何
    • 候选人在团队中为什么重要, 重要性体现在哪些方面
  • Code Review 你最看重什么?如何保障?
    • 对技术的判断
    • 更关注代码的哪些方面.
    • 如果真的很看重这些方面, 候选人为此做了什么
    • 能够作为一个引子, 通过详谈了解候选人的价值观/偏好, 关注的重点
  • 你的朋友或者同事是怎么评价你的?
  • 你怎么激励你的团队成为更好的团队?(⾯向 TL)
  • 请分享⼀次团队任务陷⼊僵局或遇到困难的情况,当时你是如何扭转局⾯、推动进展的?(P7 候选⼈)
  • 请举⼀个你通过协调各⽅资源,有效推进⼀件事情的例⼦。
  • 请你分享⼀次最让你印象深刻的受到批评的事件?在这个过程中具体经历了什么?
  • ⽬前为⽌,你坚持做得最久的事情是什么?

能⼒要求和评估模型

岗位 技术能⼒及组织影响⼒/专业知识 技术实现 业务理解 关键贡献及结果 技术价值和业务判断
资深前端开发(P6) 知识全⾯
1. 全⾯了解前端知识体系
2. 掌握⽇常开发所涉及的前端知识(开发语⾔、标准协议、⼯作原理、⼯程⼯具、前端框架、⽤户体验等)
3. 能够辅导新⼈
能提效、可复⽤
1. 能通过开发或引⼊效率⼯具来提升团队效率
2. 能提炼可复⽤组件,为组件库贡献⾼质量的代码
可对话
1. 能理解业务的主要规则和背后逻辑.
能够和产品对话, 而非产品提什么需求就做什么, 而是知道在一段时间内, 产品整个实现的路径是什么
独⽴负责多个技术模块, 并可参与团队内或跨团队项⽬ 对业务、技术有局部性优化/驱动
前端技术专家(P7) 知识专精,领域专家
1. 精通⾄少⼀个领域的前端知识体系
2. 掌握常⽤的设计模式
3. 精通常⽤框架的设计原理,能合理运⽤
4. 具备部⻔级影响⼒
能定义并解决技术领域问题(或)推动/主导某领域技术变⾰(新技术落地, 例如 web 版到桌面版),系统化解决问题,为业务价值增值 可影响
1. 能理解业务的市场竞争和客户诉求,能准确判断其业务价值。
了解业务的一张图是什么, 怎么通过技术来影响业务. 能够判断业务的痛点, 找到解决办法.
创新技术可以为他⼈复⽤(或)可领导跨团队合作项⽬ 考虑技术投⼊产出⽐(ROI), 什么不做, 什么做;哪个先做, 哪个后做

如何判断候选⼈对技术有没有热情

  1. 对 Coding 这件事情有独到的⻅解和坚持
    1. 是实现功能, 还是花很长时间优化代码(并拿到好的结果)
  2. 解决有挑战的技术问题后的⾃我满⾜感
    1. 是业务拿到了好的结果, 还是找到了业界之前没有的, 特别好的解决方案, 并与身边人分享
    2. 面试时也可以问: 解决过哪些有挑战的技术问题, 挑战在哪里, 是怎么做的
  3. 对技术有好奇⼼,关注技术演进,积极实践
    1. 关注完之后, 能否和当下的工作进行一个结合
  4. 研习源代码,梳理和总结,改进⾃⼰的编程能⼒
    1. 技术的精进, 包括看一些有设计模式的书
    2. P7: 了解整个代码设计背后的原则, 如果再做类似的设计, 会如何处理

如何判断候选⼈有没有潜⼒

  1. 学校和学历背景
  2. 对技术充满热情,但限于环境/团队/平台限制了发挥
  3. 具备体系的思维,回答问题具备深度
    1. 能否对面试问题进行结构化的表达
    2. 而非讲到哪儿算哪儿, 没有主干/准备的不够充分
  4. ⾼效学习+积极实践
  5. ⾃我要求⾼,良好的习惯,⾃律
  6. 有清晰的⽬标和实现路径
    1. 未来三年/五年的规划, 是否清晰
    2. 对事情的取舍上, 价值判断是什么样的

书籍推荐

横向领导力

推荐给候选人: 不是主管,如何带⼈成事

授权

如何激发全员领导⼒

  • 第一阶段
    • 领导者-分配工作
  • 第二阶段
    • 领导者-追随者
    • 因为相信/信任你做的事情有价值所以追随
    • 工作核心: 把控方向, 分解任务
  • 第三阶段
    • 领导者-领导者
    • 怎样让团队有自驱力
    • 怎样挖掘潜力

剑宗-如何考察候选人的能力与潜力

面试总结

  • 通过者-优势特征
    • 专业技能扎实
    • 主人翁意识
      • 不仅是完成任务本身, 还会从合伙人心态去看待事情, 主动花心思去思考, 去推进, 拿结果
    • 结果明确突出
      • 比如性能优化提升了多少数据
    • 总结与规划
      • 有阶段性的复盘和思考, 通过阶段性的提炼和总结, 让自己不断提升, 然后再设立新的目标, 进行新一轮的循环
  • 未通过者-共性问题
    • 专业基础不够
    • 缺少方法论
      • 不知道怎么制定成长计划来提升自己, 或者在公司里不知道怎么成为一名明星员工, 把自己做好
    • 结果不明显
      • 做事情比较重复, 整体挑战和复杂的不够
    • 思考不足
      • 大部分工作状态只是完成老板交代的任务, 对自己的业务,团队, 对技术很少有自己的思考

招聘流程

  1. 简历筛选
    • 过去有成功经验的会直接通过
      • 成功经验指
        • 有大厂经验
        • 学校比较好
        • 项目挑战度/结果比较亮
    • 代码评测, 看一下候选人的代码基本功和解题思路
  2. 技术一面
    • 专业基础
      • 专业能力
      • 专业水平
      • 项目的复杂度如何
      • 在项目中到底做了什么事情, 在里面解决了什么问题, 他平时考虑的场景是什么样子
    • 项目经验
  3. 技术二面
    • 综合素质
      • 软能力: 除代码以外, 沟通/做 PM 的能力
      • 匹配度情况: 擅长的和团队需要的是否匹配
    • 人才发展(T 字型人才)
      • 长短版
        • 是否有明显的短板, 会不会影响他做事情
        • 自己擅长的, 有深度的地方在哪里
      • 整体的管理成本
  4. 技术三面
    • 人才特质
      • 考察未来潜力如何
      • 入职后未来两年三年, 可以给公司/部门带来什么样的突破
    • 场景突破

岗位剖析

  • P6-记到这里了
    • 概要
      • 独挡一面、辅导团队
    • 特征
      • 独当一面
        • 技术本身比较扎实, 拥有良好的基础知识及运用能力, 能够独立的负责一块业务.
        • 并且, 对业务和技术有局部的优化和驱动. 不仅是把事情做了, 期望有一些额外的想法, 能够把事情优化或者驱动出来.
      • 辅导他人
        • 在专业领域有辅导他人的能力
  • P7
    • 概要
      • 领域专家、影响团队
    • 特征
      • 知其所以然
      • 专业领域影响力
      • 跨部门领导项目
    • 详述
      • 技术上是某个领域的专家, 主导对应的前端架构设计, 拥有系统化的思维
      • 能定义和推动解决该领域的问题, 最终拿到结果.
      • 在这个领域里, 能够发现有什么问题, 能够解决什么样的问题, 带来什么样的价值.
  • P8
    • 概要
      • 领域突破、业务增值
    • 特征
      • 领域前瞻性
      • 业务创新
      • 统筹规划
    • 详述
      • 核心业务/核心技术的负责人
      • 拥有创新思维/全局意识
      • 能够识别业务中的核心问题, 突破现有框架, 有效的解决问题并实现业务增值
      • 业务增值
        • 通过技术能不能给业务带来增量, 带来突破

应聘建议-怎么提升前端技术

职场面试准备学校考试准备有什么区别,要怎么做

  • 主要区别在于面试官, 会根据具体情况针对性的进行提问.

  • 考试时千人一面, 面试时会看这个知识点到底掌握的怎么样, 会进行细问.

  • 所以只靠死记硬背, 多刷面试题目/文章是不够的, 很容易就被问出来. 对工作也没有实际帮助

  • 刨根问底

    • 对于单点知识, 要刨根问底, 进行深入的研究和思考, 掌握它的研究和本质, 多问几个为什么
  • 触类旁通

    • 把相关知识点进行融合汇总, 得到全面的理解
    • 比如 BFF 解决方案, 各公司的 BFF 方案有什么共同点和区别, 他们是怎么做的取舍
    • 这些问题单个看没感觉, 但合并到一起看, 就很不一样, 可以加深自己的理解(类似整理面试攻略. 看一篇两篇没有感觉, 但多收集几篇, 会发现有些点被反复强调, 有些点则只有几个面试官会零散提到. 则反复强调的点就是重点对象)
  • 点线面体

    • 逐渐有系统化, 全面性的总结与思考

按以上三步做, 会非常花时间. 因此需要日常养成习惯, 而非面试前现准备.

第一条线会非常困难麻烦, 但随着了解深入, 会逐步轻松, 同时自身前端技术也会有系统性的提升

剑宗 11 年入职阿里, 面试前花了三个月时间, 将前端知识做了体系化的梳理

应聘建议-怎么成为明星员⼯

  • 什么是明星员工
    • 在公司表现比较突出的员工
    • 能力属于拔尖, 中流砥柱, 能够解决业务中的核心问题
    • 个人在团队中影响力较大, 比较有话语权
    • 也是其他员工的标杆和榜样
  • 特征
    • 客户第一
      • 确保我们在做正确的事情
      • 需要知道自己的目标客户是谁
        • 确认客户是谁
        • 可以帮客户解决什么问题
        • 如果客户是用户的话, 那么
          • 我们能给用户带来什么
            • 高效的开发
            • 维护好我们的业务产品
          • 确保业务的稳定性/质量/扩展性/性能/用户体验
          • 需要思考现有的技术架构除了满足现有业务发展之外, 也要充分考虑未来业务发展的需求
          • 对业务的充分了解和规划都是工作的重要内容
        • 如果是团队管理者
          • 那么需要关心团队成员的成长
          • 在开发维护的过程中锻炼同学的各种能力
            • 专业技术能力
            • 执行力
            • 沟通能力
            • 时间管理能力
            • 项目管理能力
            • 推动力
            • 规划力
          • 帮助他们通过工作进行迅速成长
        • 如果是写了组件/维护的文档/开发的工具, 需要考虑
          • 目标用户是谁
          • 能否快速上手, 上手门槛有多高
          • 东西好不好用
          • 是否解决了用户的问题
          • 站在客户的角度想问题
        • 反例
          • 做体验优化,
            • 询问用户在产品流程中的核心痛点是什么 => 不知道
          • 做工具
            • 是否知道使用者的情况 => 不知道
    • 合伙人心态
      • 做事情是当作事业(老板心态), 还是当成任务(打工心态)
      • 如果是老板心态
        • 会先办法提升自己/团队的
          • 效率
          • 开发成本
          • 公司成本
          • 关心用户
          • 提升用户的性能/使用效率
          • 让用户在这个地方用的更爽, 而非把事情做完, 差不多就行
        • 关心业务, 从自身角度出发产生一些主动/创新的行为
      • 对应面试中
        • 除了老板安排的事情, 你额外有什么思考, 额外做了什么事情
      • 若是打工心态, 长期维持后可能会缺乏
        • 创新的想法
        • 成本观念
        • 质量意识
        • 对业务线的长远规划
    • 追求卓越
      • 不断走出舒适区
      • 不断突破自我
      • 同样的事情, 第二次做的时候提升在哪里
      • 不要一直重复
      • 突破的角度
        • 能否通过抽象/复用来提效
        • 能否通过工具解决问题
        • 业界有没有更好的解决方案
        • 视野扩大: 同样的问题其他地方有没有遇到, 非本行业之外, 有没有对解决同类问题的诉求.
          • 他们是怎么解决的.
          • 如果他们有好的方案, 我们是否可以尝试引入
        • 一定是想办法去解决问题, 而非被问题解决掉躺地上了
      • 对人而言
        • 怎样让效率更高/性能更快/体验更好/工具更好用

应聘建议-⼈才特质

阿里人才的特质(说明, 优秀人才的特质是差不多的, 阿里是这种, 谷歌也类似, 政府选择官员标准也差不多----很难想象逆着这些标准来)

  • 聪明
    • 智商
      • 做事的基础
        • 快速学习能力
        • 方法论
      • 专业性
    • 情商
      • 同一团队/上下游关系中展示的与人相处的能力
      • 在与人的合作中如何彼此成就, 互相共赢
  • 皮实
    • 抗打击能力
    • 遇到困难/压力很大如何快速自我调节, 走出挫折状态
    • 经得起折腾
  • 乐观
    • 对生活保持开放的好奇心和充满乐趣, 不要未老先衰
    • 历久弥新, 愿意看到新的东西, 新的机会
    • 在充分客观理解当下真实情况之下, 仍然充满好奇心和向上的精神
  • 自省
    • 对自己进行总结反思
    • 不要因为忙碌而拥有安全感, 而是停下来看看, 这种忙是值得还是不值得, 有没有做一些重复的事情, 或者有没有捷径可走
    • 学会偷懒(偷懒是有技术含量的)

应聘建议-表达

  • Situation
    • 背景/挑战/困境
    • 为什么要这么做, 遇到了什么样的困难
  • Task
    • 目标/策略/计划
    • 要做什么, 要达成什么样的目标
  • Action
    • 有细节/过程改进
    • 事情的细节和过程, 具体做了什么事情, 突出了你的什么能力
  • Results
    • 业务结果/技术结果
    • 整个数据可感知, 最后取得的成绩是什么

书籍推荐

少有人走的路

  • 人生会有很多磨砺,是一个不断修炼的过程。如果你是一个渴望成熟的人,或者正在遭遇人生的挫折,那么你可能会需要这本书。

Q&A

女性开发者想转管理岗位, 日常需要培养那些方面, 或者有哪些职业规划上的指导意见

  • 女性相对男性的优势在哪里
    • 心细/在人际上的感觉可能会更好
  • 管理岗要解决什么问题
    • 带着团队把行为给做好 => 那么需要有对业务的理解能力.
    • 了解业务里需要做什么事情能让业务更好, 走的更远, 需要一个什么样的团队
    • 组建团队的要求
      • 需要什么样的人
      • 这些人他大概是什么样的水平
      • 需要构建哪些能力, 做什么样的系统
      • 长期向前走的时候, 如何把团队成员的战斗力提升起来, 团队的技术选型是什么, 团队的成长空间在哪里----然后才能留得住人, 或者招更多人进来
    • 对反馈的要求
      • 事情往前推进后, 如何知道:
      • 今天的事情做的好不好
      • 线上是否有反馈渠道, 是否有监控/数据化指标, 产品化指标
  • 管理的阶段性
    • 并不是成为管理后技术就可以放下.
    • 如果放下技术, 那么对业务的判断, 对技术的判断, 对团队成长的建议都可能会跟不上
  • 若从技术走向管理, 那么需要更多的人际交流/横向的能力
    • 沟通能力
    • 项目能力
    • 对业务的认知能力

前端技术日新月异, 很多知识学过后没有怎么使用也没有输出, 过几个月就忘了, 这种情况有没有什么好建议

  1. 不要空学, 要通过实战结合业务去加强应用
  2. 结合自身的兴趣和目标, 带着目标感做事情
  3. 人要理解自己的精力是有限的, 不能什么事情都做得好, 那么一定有取舍:当下阶段我做什么, 第二阶段做什么, 第三阶段做什么
  4. 完成后进行阶段性的总结: 最近的学习有没有效果, 效果怎么样.
    1. 有效果 => 坚持
    2. 没有效果 => 复盘看一下, 为什么这段时间的学习没有效果.
  5. 通过总结, 才能知道学习这个事情, 从有强烈意愿开始落地到行动, 中间有没有变形, 有没有真的做到

堂主-如何通过面试考察候选人的能力与潜力

  • 求职⾯试,是⼀个双向匹配的过程
  • 企业在选择合适候选人的同时, 候选人也要根据个人未来两三年的职业发展方向&诉求去选择企业, 需要看企业能否给出对应的平台与空间

面试数据(政采云团队)

  • 时间跨度: 2 年
    • 社招简历筛选: 1000+ (个⼈勾搭、熟⼈推荐、招聘⽹站、猎头渠道)
    • 社招二⾯通过: 60+ (通过简历筛选到我这轮⾯试通过,⾮ Offer 数)
    • 社招⼊职: 2%
    • 合作伙伴⼊职: 5%
  • 基本概要
    • 第 1、2 轮为技术⾯
      • 偏向技术基本功、主流框架能⼒、原理性掌握、个别算法知识;及过去的业务相关主导内容,聊的多是技术细节以及对岗位的理解
    • 3、4 轮一般是经理面或总监面
      • 多维度考察候选人
        • 对过去业务的理解
        • 项目管理能力
        • 面向不同业务场景问题的技术解决方案的积累
          • 看技术认知, 方案沉淀
        • 会观察候选人的职业能力
          • 沟通/反馈/协调
        • 性格
        • 判断其能力和潜力
    • 对于 P7 以上及管理
      • 还会聊聊⾏业理解
      • 团队管理与协作
  • 目前持续面试了 1 年零 11 个月
    • 简历筛选: 1000+(邀请参加面试)
    • 社招二面通过: 60+
    • 社招入职率(入职/简历投递数 ≈2%)
    • 目前前端团队 50 人, 研发团队 300 人, A 轮公司(政采云)

优势特征-通过的候选⼈

  • 基本功扎实
    • 良好的技术基本功
    • 良好的开发流程理解
      • 对既往负责业务的理解
      • 不要仅知道业务的概念
      • 在 api 调用外, 对原理也要有⼀定的探究
  • 要性强
    • 良好的主动性
    • 能主动探寻更多可能性
      • 不仅仅是做完即可
      • 是否调查了有没有其他方案
      • 对不同方案是否进行过对比, 不同方案的适用性/优劣度/适用场景
    • 对平庸的低忍耐
    • 抓机会及落地能⼒
      • 不要只是说的好听, 落不了地
  • 曾证明过⾃⼰
    • 主导过的业务
      • 作为业务接口人, 把相关事情搞定
    • 推动过的建设
      • 不是指作为执行角色横向被动参与
      • 而是推动一件事情, 从目标到过程到拆解落地
    • 解决过的复杂度
    • 个⼈作品
      • 开源项目
      • 博客文章
  • 较好的认知
    • ⾮被动执⾏思维
    • 对技术的嗅觉
    • ⾮⼆元论认知
      • 不认为这个世界非 A 即 B, 非好即坏, 非黑即白
      • 而是认知到世界从左到右存在一个光谱, 从黑到白之间存在大量的灰阶
      • 如果坚持二元论, 工作中容易出现: 不是朋友就是敌人, 影响合作开展
    • 良好的合作性格

共性问题-未通过的候选⼈

  • 专业能⼒问题
    • 相关基本功不⾏
    • 7 年时间 2 年经验
      • 一直在重复之前的事情, 没有很好的自我发展
    • 不要只会说关键词, 只会背面经…
      • 有没有自己实现过
      • 关键词背后对应的代码怎么写, 功能如何实现, 自己是否尝试过
      • 不要硬扯…
  • 职业能⼒问题
    • 3 年 4 跳(稳定性)
    • 基本的沟通能⼒堪忧
      • demo: 对抗式沟通
    • 业务经验差,被动执⾏
      • demo: 提到负责过用户系统, 但对用户相关业务没有概念,单点登录不了解, 对用户服务涉及基本功能/系统功能/业务情况也没有概念
      • 不知道自己写的代码是做什么用的, 在系统中起到什么功能
    • 综合深度浅,做完⽽已
      • 不会要求自己从 50 分到 60 分, 而只是在一个很浅的维度进行尝试
      • api-boy
  • 性格问题
    • ⼆元论认知
    • 偏执型⼈格
      • 你在搞我/你一定是在搞我/你看了我一眼你一定是在搞我…
  • 匹配度问题
    • 简历造假(诚信是红线)
      • 学历造假
      • 不是自己做的东西说成是自己做的
    • 匹配度(双向阶段匹配)
      • 也碰到过非常优秀的候选人, 但最后综合考虑下来还是放弃了, 并劝说他去别的公司
      • 因为他目前的阶段和公司的匹配度有问题
      • 示例: webgl 专家/纯交互专家, 更适合去专门做组件库的 antd/ui 团队, 才能放大自身价值, 但不是日常业务团队所需要的
    • 背调、⼝碑
    • 背⾯经、过渡包装⾃⼰

招聘流程-以政采云团队 P6 层级为例

  • 简历渠道
    • 猎头
    • 内部推荐
    • 自主投递
  • 说明
    • 内推是主要⽅式之⼀,猎头渠道⾯向专家级(P7 及以上 level)
    • ⽬前看成功率最⾼的,是熟⼈内推及招聘⽹站主动勾搭

特定轮次考核点

以 P6 为例,不同⾯试官在特定轮次中的主要考察⽅⾯

每⼀轮 45 ~ 60 分钟,⼀般 1~ 2 周⾛完全部流程

  • ⼀轮技术⾯
    • 技术基本功
    • 框架选型掌握
    • 常⽤⽅案掌握
    • 过去工作中主导的工作, 工作结果沟通
  • ⼆轮技术⾯
    • 技术基本功
    • 业务经验及⽅案
    • 综合深度考察
    • 基本的职业能⼒考察
  • 三轮现场复⾯
    • 体系型还是体系内
      • 体系内
        • 之前在大厂/好公司/好团队/研发流程比较成熟的地方工作过, 可以在体系内发挥出很大的价值(但往往离开体系就玩不转了)
      • 体系型
        • 自带体系/可以自建体系
      • 体系内型候选人会看有没有短期内搭建体系的能力与意愿(背景: 政采云团队相对较小, 前端只有 50 人, 不能和大厂比体系完善度, 所以更青睐体系型选手)
    • 认知段位及落地能⼒
      • 对前端行业的理解/技术综合性的理解/技术业务之间结合点的理解
      • 如何推动业务/解决业务问题
      • 过程中的优先级, ROI, 落地能力
    • ⻓短板、匹配度
    • 管理成本及⻛险评估
      • 不要经常吵架/偏执/拍桌子

P4~P7 层级关键能⼒

  • P4 前端⼯程师(做完)
    • 应届生/毕业一两年
    • 独⽴承担
    • 独⽴执⾏
  • P5 ⾼级前端⼯程师(做好)
    • 能思考并践⾏如何能做得更好
    • 在工作中是否考虑到
      • 代码注释/分层
      • 系统架构/组件化/工具化/自动化
      • 流程优化/业务反馈/业务反哺
      • 团队内的分享
  • P6 资深前端⼯程师(影响)
    • 是否具备影响别人的能力
    • P4/P5 把自己的事做好
    • P6 看能否对外做输出
    • 能否通过影响和带动他⼈,帮助业务和团队拿到更多结果
  • P7
    • 前端技术专家(改变)
    • 前瞻性、⽬标感、主导性、整合⼒
    • 推动⼒、拿结果、影响⼒、领导⼒

P6 关键能⼒拆解

核心: 自驱力, 不需要别人 push, 是否有对技术的热爱与自驱

  • 专业能⼒
    • 良好的基础知识及运⽤能⼒
    • 熟悉常⽤规范、类库及周边应⽤
    • 能完成相对复杂前端技术⽅案设计
    • 快速定位及解决疑难杂症的能⼒
    • ⼀定的 Node.js 或其他服务端语⾔能⼒
  • 场景⽅案
    • 业务场景的有效⽅案沉淀
    • 能承担团队体系内某专项的建设突破
    • 思考处理业务场景/问题的通⽤⽅式
    • 通过处理⼀个问题,解决⼀类问题
    • 考虑必要的投⼊产出⽐
  • 职业能⼒
    • 良好的沟通,沟通及时有效
    • 独⽴的前端业务接⼝⼈能⼒
      • 是否可以独立的自己去做评审
      • 进行需求拆解/方案评估/时间估计/过程跟进
      • 对过程中面临风险的预知/过程中的反馈
      • 业务上线后的复盘/沉淀总结
      • 业务数据的分析能力/基于数据寻找业务中的痛点, 然后针对问题进行推动优化
    • 领导跨部⻔项⽬的 PM 能⼒
    • 理解业务优先级,有效管理业务预期(而不是业务说什么就做什么, 完全把自己作为被动执行人)
    • 跳出前端看问题,寻找最优解决⽅案
  • 推动及落地能⼒
    • 抓住⼯作重点,解决关键问题
    • 主导职能领域某⼀⽅向的建设
    • 有效利⽤团队的⼒量获取更⼤结果
      • 考虑投入产出比
      • 能否通过影响别人, 推动别人一块去实现这个结果
      • 过程中如何规划路径, 落地既定的目标
      • 如何争取更多资源推动落地
    • 有效影响团队同学在专业上获得提升
    • 规划路径,落地既定⽬标,永不放弃

⾯试必要准备

  • 表述清晰的简历
    • 真实陈述,勿造假
    • 避免关键词堆砌,空洞
    • 倒序,提炼,避免 “万字⽂“
    • PDF 格式优先
  • 必要的基本功复习
    • 前端三件套(js/css/html)
    • 基础的算法
    • 常⻅的业务场景⽅案
    • 别背概念,有价值的是如何应⽤
  • 复盘既往⼯作中的关键价值点
    • 过往工作中业务的背景、⻆⾊、过程、结果
      • 面对的是什么问题
      • 解决过的问题, 场景是什么, 在这里角色过程中起到的作用, 拿到的结果
    • 重点要体现个⼈产⽣的影响
    • 减少执⾏性陈述的堆砌
    • 结构性认知、体系化思维 (如有)
      • 分条例, 不要意识流说到哪是哪儿
      • 参考<金字塔原理>
    • 过去⼀段时间最⼤的成⻓
      • 很多 hr 都会问到, 如果没准备的话现想想不出来
      • 如果没想法, 说明过去一段时间都是在被动执行, 没想过自己的成长是什么, 说明没有挑选环境的思维, 只是在随波逐流
  • ⾃⼰后续的职业规划
    • ⽬前的⻓短板
    • 后续的职业成⻓⽅向
      • 未来两三年之后想到哪个方向去
    • 这个⽅向需要什么样的空间
    • 为新团队带来的价值是什么
    • 什么能放⼤你的价值

团队最看重的能⼒项

  • The Most Important
    • 下⾯是我们的团队,对成员最看重的⼏个点,也是⽇常团队运作和基于业务、技术建设所提供的核⼼成⻓空间,亦是同学绩效⽅⾯的主要影响点。
  • 业务⽀撑 的能⼒
    • 独立搞定业务, 做好业务支撑
    • 拿⼯资该做的最基本的事,独⽴、做完、做好。
  • 推动改变 的能⼒
    • 不要被动执⾏,能主动发现,并推动问题的解决。
  • 学以致⽤ 的能⼒
    • 持续的学习、沉淀,不放弃个⼈的成⻓,持续的输⼊和输出。

书籍推荐

超越 CSS-Web 设计艺术精髓

  • ⼈会失败,会死去,但思想会永远留下来。
  • 时间的流逝,并不影响本书对 HTML 结构、CSS 样式深刻理解和优雅应⽤的智慧⾼光。本书在代码的艺术思维及审美⾼度,并⾮ Well Done ⽽是更⾼阶的 Beyond。

注意, 这是 2007 年的书, 可以看除 css 以外的部分

Q&A

怎么在业务代码中去提升自己的职业能力

  • 可以查看之前前端早早聊的专场: 不同阶段前端的破局方式
  • 只有做业务, 才能成为业务专家. 而业务专家是成为技术专家的前提. 因为技术的价值是解决业务问题, 否则就是屠龙之技
  • 有这个疑惑说明目前的认知/能力还停留在如何把一件事搞定, 而非做好
  • 所以需要从做完到做好之间, 进行认知层面的升级.
  • 例如编码阶段
    • 编码阶段如何才能做得更好
    • 如何能让你的代码在三个月/六个月后还能看得懂
  • 代码的分层架构
    • 代码的组件化/接口设计的合理性
  • 做业务
    • 如何与业务方保持好沟通
    • 如果是业务接口人, 是否具备业务 PM 的能力, 如何带着别人一起做业务
    • 包括业务中的通用方案是什么, 如何通过定义一个问题来定义一类问题, 如何通过解决一个问题来解决一类问题. 如何用这种方式帮助业务团队, 进行经验输出
    • 如何预判过程与风险, 如何推动业务架构的升级, 如何推动面向业务支撑的流程方面的升级
  • 这些都是可以优化/提升的点, 而不是仅仅靠写代码堆代码就能把事情搞成

作为入职新公司的架构师, 之前是开发. 那么如何转变思维, 需要做哪些事情, 然后又有哪些事情是不需要做的

  • 可以理解为是这个同学刚入职一个新公司, 之前在上家公司是偏业务执行的角色, 但并不是一个完整全职的架构师, 而新岗位的定义是架构师
  • 首先, 这实际上是工作上职能的升级, 从之前面向业务单点解决问题, 升级到面向架构, 用通用的方式去解决业务问题
  • 那么, 如何在新公司中体现个人价值
  • 首先, 先了解当前的业务架构. 因为架构师脱离业务就是垃圾
    • 除非特别了解业务, 否额就要先拥抱业务, 了解业务目前的玩法, 运作的方式, 未来要奔哪块去
  • 然后, 看业务里的前端/研发同学, 他们目前焦虑和痛苦的是什么, 去寻找问题.
  • 架构是解决通用问题的, 架构的价值就在于可以解决业务的通用问题.
  • 所以要先拥抱业务, 了解业务痛点.
  • 如果要找落地方案, 目前政采云的玩法是: 面向业务研发的整个闭环构建数据反馈
    • 从编码前的需求确认, 到编码中的联调, 到构建部署上线后
    • 看目前整个研发闭环中最大的成本卡在什么地方
    • 团队最大的痛点要么是成本最高的, 要么是稳定性最差, 要么是体验最不好
    • 然后基于通用性的方案去解决
  • 架构最忌讳的
    • 不要去做脱离业务的事. 不要不了解业务上来就指点江山.
    • 不要借着做架构的机会去给自己尝鲜找理由.
      • 有些架构师不考虑
        • 团队接受程度
        • 对业务的价值是什么
        • 高频问题还是低频问题
      • 上来就强推之前没尝试过的新选择
      • 很容易形成技术债

完颜-如何通过面试考察候选人的能力与潜力

简历来源渠道

  • 熟⼈内推
  • 猎头
  • 招聘平台
    • 拉勾、脉脉、Boss、猎聘…
  • 社区
    • V2EX、知乎、Github、掘⾦…
  • 技术⼤会
    • D2、SEE Conf …
  • ⾃主投递

  • 推荐简历投递渠道
    • 熟⼈内推
    • 猎头
    • 技术⼤会和社区
  • 求职建议
    • 先定向考察目标前端团队, 看是否符合自己的诉求,然后和该前端团队联系, 定向投递简历

蚂蚁⾦服 RICHLAB 招聘流程

  • ⼀⾯
    • 前端初⾯:前端基础
  • ⼆⾯
    • 前端复⾯:前端综合能⼒, 看对技术的实际运用能力, 也会考察基础素质: 学习能力/上升潜力/沟通主动性
  • 三⾯
    • 总监终⾯:整体技术素质
  • 四⾯
    • HR ⾯:⼈·味道
    • 整体价值观是否和阿里匹配
  • 每轮 20-50 分钟,2 周内完成全部流程

⾯试成功的⼈才特质

  • 基础扎实
    • 基本功
      • 前端三大件
      • 流行框架
    • 代码能⼒
      • 手写代码(在在线编辑器中写代码)
    • 技术品味
      • 不要求有代码洁癖(但有的话肯定是家分店)
      • 关注在项目开发过程中, 是否有追求细节, 最求极致的体现
      • 例如, 组件开发完成后是否有单元测试, 是否有 lint
  • 独特亮点
    • 基础扎实的同学其实很多, 因此如果想在这些同学中脱颖而出, 需要有一些自己的核心竞争力
    • 核⼼竞争⼒
      • 深度
        • 对代码的深度掌握
        • 在做项目过程中, 能否在了解一个知识点基础之上, 能否更进一步的去看他底层的一些原理, 了解内部的实现
        • 例如
          • 使用 react 做项目时, 了解 react 的底层实现机制
          • 进行性能优化时, 了解网络的连接过程, 浏览器的渲染原理
      • ⼴度
        • 有更大的技术视野, 了解前沿领域的技术
      • 领域
        • 比如交互方面, 在技术基础能力之上, 了解一些 WebGL 的原理, 能够做一些互动图形
        • 在服务端方面, 能够使用 Node.js
      • 业务
        • 在过去的业务上, 有自己的独特的思考
        • 公司的业务发展/业务数据分析/数据的使用和消费
        • 业务意识
  • 热情上进
    • 爱钻研
    • 爱折腾
    • 爱学习
    • 爱总结
      • 做这个事情的价值在哪里
  • 充满要性
    • 积极主动
    • 善于思考
    • 推进⼒强
    • 能否积极主动地去做一件事, 在做事情的时候, 能否想清楚为什么要做这些事
    • 推进能力考核方法
      • why/what/how/result
      • 为什么要做这件事背后的想法和原因, 是否有过充分的思考
      • 在做这件事的过程中, 是否有更好的推进这件事的落地
      • 最终产生的业务结果是什么

⾯试失利的通性问题

  • 基础功⼒问题
    • 基础不扎实
      • 知其然不知其所以然, 只解决了这个问题, 但没有深入挖掘问题背后的原因
    • 动⼿能⼒弱
    • 偏科严重
  • 职业能⼒问题
    • 沟通不顺畅
    • 主动性不⾜
    • 稳定性差
    • ⾃我认知不清晰
  • 技术发展问题
    • 知其然不知其所以然
    • 知识⾯窄
    • 项⽬实践少
  • 潜⼒问题
    • 学习总结少
    • 不善思考
    • 埋头执⾏
    • 思路单⼀

我常⽤的⾯试⽅法

  • 聊聊最深刻的项⽬
    • 业务⽬标
      • 对项目的业务目标是否了解的比较清楚
    • ⽅案选型
      • 有没有和其他方案进行比较
    • 技术细节
    • 最终结果
      • 例如性能优化后, 有没有明确的一个数据, 可以证明你的最终结果
    • 学习思辨

应聘建议

  • 第⼀印象:⼀份有诚意的简历
    • 明确意向:明确个⼈诉求,确定⽬标团队
      • 前端这么多领域方向, 你希望往哪个领域方向去走, 你的目标团队是什么
    • 回顾总结:过去的⼯作经历、沉淀、成⻓、收获
      • 除了罗列项目, 也要把对项目的思考, 包括一些有亮点的部分着重的在简历里凸显出来
      • 如果字数不够, 可以贴链接
      • 进阶版: 你希望面试官通过面试给你一份怎样的面评, 提前写好用链接贴上去(例如贴到个人博客里), 真の客户第一
    • ⾃我认知:有哪些核⼼竞争⼒和不⾜
    • ⾯谈技巧:STAR (SITUATION/TAST/ACTION/RESULT)
    • ⾯试复盘:总结⾃⼰⾯试中的表现、经验教训
  • 误区:
    • 死记硬背概念、知识速成、海量刷题
    • ⼀问⼀答、不问不答、话痨、东拉⻄扯
    • 不知道⾃⼰是谁、⾃⼰有什么、⾃⼰要什么、该去往何处
      • 目前的定位是什么
      • 核心竞争力是什么
      • 换工作的原因是什么
      • 换工作背后希望这份工作能够给自己带来什么, 能够给团队带来什么.
      • 最终自己的未来规划/定位是什么样的
    • 诚信问题

Q&A

蚂蚁招人是否有年龄上的限制, 或者有更细的年龄分层, 例如 30 岁以上需要 P7 才能进入

  • 能力模型需要能够对上成长结果
  • 十年经验如果还是 P6, 可能就有问题

渚薰-如何考察候选人的能力与潜力

对这个分享印象很好, 可以重点听下

第⼀轮技术⾯

  • 优秀人才
    • 基础扎实
      • 技术能力是停留在使用框架的 api, 还是思考过这些 api 是如何实现的这些功能, 以及这些功能在不同的环境下有没有差异化的表现(例如: 浏览器兼容问题)
    • 勇于破圈
    • 善于应变
      • 遇到紧急事情的时候能够快速制定方案并迅速推进(不推荐, 提前准备预案更好)
      • 在面对复杂问题的时候能够改变固有思维发现新的突破口
    • 敢于判断
  • 能⼒不符
    • 不懂原理
    • ⼀知半解
    • 知识⾯窄
    • ⽆⽅法论

如何考察

  • 基于候选人
    • 最擅长的作品
    • 最出色的经历
  • 询问: why/how/what, 以判断候选人是如何思考以及他的思考路径是否正确
  • 专业能⼒
    • 业务理解
    • 专业知识
    • 技术实现能⼒
    • 关键贡献及结果
    • 技术价值和业务判断
  • ⼈才特质
    • 聪明
    • 乐观⽪实
    • ⾃省

⾯试习惯

  • 基础知识(举例)
经常⽤的东⻄不⼀定会细究它的原理
箭头函数同⾮箭头函数中 this 的区别
const 定义的变量编译成 ES5 后如何保持块作⽤域的特性
  • 采用理由

    • 实测数据: 90%的同学可以答出来, 但很少有人深入刨析到 v8 内核实现或者如何用 es5 的写法去保存变量的作用域(其实<你不知道的 javascript>里有)
    • 不要因为会用, 就会认为懂了
  • 其他问题

其他问题 考察内容
⼯作中的亮点 是否清楚⾃身的核⼼⽅向和竞争⼒, 如果有的话, 可以很清楚的说出来
为什么会有这份产出 对原始问题/原始需求的分析和判断
剖析下某个技术产品/技术⽅案的细节 ⽅案的健壮性、通⽤性
如果变得更复杂如何解决, 看在更复杂的环境/场景下如何思考 知识⾯和逻辑思维
如何学习新知识 ⼀贯的⽅法论

⾯试技巧和⽅法

  • ⾯前
    • 回顾⼯作, 系统思考
    • 锁定⽬标团队, 不要碰碰运⽓
      • 每一次投递/面试都会有记录, 且持续存在
    • 分析 JD, 知⼰知彼
  • ⾯中
    • 讲重点, 讲思路
    • 勿辩解, 忌装懂
      • 不要浪费时间在和面试官辩解, 而是要尝试在有限的时间内让面试官得到更多的, 足够的信息(客户至上思维, 面试官就是客户)
    • 不要⽌于现状, 寻求更优⽅案
  • 尾声
    • 可以补充⾃⼰的亮点
    • 别错过咨询⾯试官的机会
    • 主动加⾯试管微信, 加深第⼆印象

书籍推荐

如何实现⾼性能的前端应⽤

  • 为什么?
    • 浏览器的底层是如何⼯作的。
    • 浏览器在各个阶段如何处理资源。
    • 如何针对性的解决性能问题。
  • 怎么看?
    • 提炼关键词,作为问题索引备查。
    • 不定时检查更新,反复阅读。
  • ⽤在哪?
    • ⾸屏性能(加载、渲染)优化。
    • CPU、GPU 计算优化。
    • 图像绘制,内存优化 。

Q&A

您是如何学习新东西的

  • 每天到公司之后前一点时间, 浏览科技型网站, 拓宽视野
  • 在拓宽视野的时候, 会慢慢把知识编程你自己的一些理解, 然后可以知道自己需要深挖的领域或感兴趣的领域在哪里
  • 知道需要深挖的领域后, 才能避免盲目接触新框架
  • 所以需要看业界的声音/评论, 看业界在做什么, 大家对于某件事情的理解是怎么样的, 将别人的理解转化成自己的理解后, 就知道该如何学习, 学习什么样的知识了
  • 学习知识的过程本身相对简单, 查找书单/知识领域内的最佳实践/etc
  • 反例
    • 不要今天出了几个新知识点, 立刻投入进去学习, 成为 API Boy
  • 有的放矢, 把精力集中在一个你希望能够深入下去的领域去探索, 而不是我都要会, 我要都能用这样的思维方式

如何面试候选人-前端早早聊笔记
https://www.yaozeyuan.online/2022/10/01/2022/10/如何面试候选人-前端早早聊笔记/
作者
姚泽源
发布于
2022年10月1日
许可协议