面试技巧:如何在行为面试让人觉得你像资深工程师?

2024年7月24日

💎 加入 E+ 成長計畫 與超過 500+ 位軟體工程師一同在社群中成長,並且獲得更多的軟體工程學習資源

行为面试除了决定一位候选人是否录取外,很重要的也会是决定一个候选人能拿到什么职级。这是因为资深与非资深的工程师,在行为面会有很大的不同。让我们看看以下两件工程师很常要做的事情,不同层次的工程师,会有什么不同的行为。

同样是在思考开发

  • 初阶工程师会想该如何实作出来? (专注在执行细节)
  • 中阶工程师会想该打造什么 (专注在解决方案的探究)
  • 资深工程师会想为什么要开发这东西 (专注在确保问题值得解决)

同样是写程式

  • 初阶工程师写出功能无误的程式码
  • 中阶工程师写出功能无误,同时干净好维护的程式码
  • 资深工程师带领、指导团队,让整个团队都能写出功能无误、干净好维护的程式码

资深工程师的行为有什么不同?

可以从上面的例子中看出,初阶、中阶,以及资深的工程师,在「行为面」有很大的不同。

具体来说,我们可以概略地定义这几个不同职级

  • 初阶工程师:主要是被人带,没有带人或专案的经验,在谈经历时,出发的角度都是谈个人层级,且做的都是偏小型的功能 (一到两周能完成的功能)。
  • 中阶工程师:能独立运作,不再需要人手把手带,而是能开始带人 (例如带实习生),且开始做有一定复杂度的专案 (一到两个月能完成的),且做到跨团队的协作 (跟产品、设计等不同团队协作)。
  • 资深工程师:开始负责带团队 (5 - 10 人范围),当技术负责人 (出事的话出来来担),且负责规划团队技术路径 (设定接下来要做什么)、制定团队技术规范。甚至做到,带领跨团队协作,负责到半年为维度的专案。
  • 资深以上:带领多个团队 (例如 2 到 3 个团队,每个团队 5 到 10 个人) ,让多团队持续提升,让整体产能提升数倍 (透过不同机制,例如重新梳理 oncall、CI/CD 流程)。个人的技术能力达到业界顶尖水平,负责的专案为度是以年为单位。

题目实战解析

以下我们将会针对常见的题目,来讨论初阶、中阶、资深工程师,在回答上会有的区别。如果你想确保自己拿到资深工程师的职级,请务必在平常做事时,就要去挑战资深工程师该做到的程度。

请分享一个你过去半年改善过的事 (以改善沟通为例)

  • 初阶工程师会谈个人层级:原本自己在会议中都没有发表意见,努力改善后,在会议中逐渐讲更多话,自己的想法也开始被采纳。
  • 中阶工程师会谈带人层级:发现自己带的初阶工程师,平常在会议比较少发言,于是跟该工程师拉了一场 1:1 会议,借此了解他不常发言的原因。聊完后分享了几个推荐他能改善的心法,且会议中也会鼓励他发言,几周后看到他尝试发言,觉得很有成就感。
  • 资深工程师会谈带团队层级:发现会议的进行方式,导致都是集中少数人发表意见,许多团队中的成员保持沉默,当发现这问题后,决定跳出来负责引导,在引导时确保每个人的意见都能表达出来。后来还进一步调整会议进行方式,在新的形式下,每个人的想法会先被写下来后,才进行讨论,这样能确保每个人的声音都被听见。

如果你想看更多的题目解析,来了解在不同题目,要如何回答得像资深工程师,我们在 E+ 中有更详细完整的版本。 (点此了解 E+ 的详细介绍)

🧵 如果你想收到最即時的內容更新,可以在 FacebookInstagram 上追蹤我們