作为一名程序员,如何在面试时准备自己的项目经历呢?
描述高效且有条理
在回答面试官的问题时,需要遵循一定的逻辑,不能泛泛而谈,尤其是项目介绍,要做到描述高效且有条理,这里推荐一下STAR原则。STAR原则具体是指:
Situation:背景来龙去脉,为了解决什么问题
Target:目标如何拆解,做了什么的梳理和计划
Action:采取哪些行动,具体做了什么事
Result:结果与反思,对结果进行复盘,效果如何,是否满足预期,ROI如何
熟悉业务逻辑和技术架构
面试官考察一个人项目时,一般是两方面的。
第一个角度是看候选人是否对业务有清晰的了解,比如你们的业务核心指标是什么?业务是为了解决什么问题?你负责的业务在团队架构里扮演什么角色等等。这就需要候选人不能只局限于自己做的事情,而是要跳出来,看看团队都在干什么,思考自己做的事情对团队的帮助和影响。
第二个角度是看候选人对自己所负责的项目的系统架构是否清晰,候选人在回答问题时,一定要有宏观视角,言简意赅地陈述项目的整体架构,每个模块的角色等。对于有亮点的关键设计,可以突出一下。
技术方案选型和决策逻辑清晰
技术方案选型,重点讲清楚为什么这么设计,有什么特点。同时要有横向对比,简要阐明和其他方案相比的优劣势。
涉及的组件充分掌握,技术方案选型中,免不了有技术组件,需要候选人对涉及的组建充分掌握,不能仅仅是会用、能用,而是知其然也知其所以然。最好可以针对性的看看相关组件的源码分析,常见问题,以及同类型组件的横向对比。
技术难点
这里可以讲一讲系统中的疑难杂症、黄金bug案例,但一样要调理清晰,再小的案例,在回答时,也要遵循STAR原则,给面试官留下调理清晰的印象。切忌:感觉没啥难的,就是业务复杂点等等这种宽泛且毫无意义的回答。
技术规划
对于中高阶的候选人,面试官会问中长期技术规划,这时候可以围绕项目的业务发展方向,从技术目标的制定、执行路径拆解、优先级判断、结果Review、成本收益(ROI)等角度给出回答,做到逻辑自洽,事情闭环。
最后想说的是,为面试准备的内容,同样适合于我们日常的工作,比如用STAR原则汇报自己的工作,对业务和技术充分了解,合理技术选型等。