哈喽大家好
我是篱笆老师开心
最近秋招进入了火热的阶段
很多小伙伴都成功通过OA
拿到了面试啦
但是很多同学都会有疑问
为什么题目刷了那么多
在面试的时候一紧张却还是做不出呢
为什么有的时候感觉题目做的很好
但是结果还是挂了呢
那么今天
就给大家分享几个cstap面的小技巧
首先呢是关于简历以及behavior questions
简历上的经历呢
一定要在面试前好好的自己过一遍
并且在面试官问到的时候
可以两到三句话简短的把做了什么
有什么样的impact
展现了自己
什么样的技能都说清楚
至于behavior questions呢
网上有很多面筋
每种题目也要准备好自己的回答
着重突出例的是communication
collaboration等一系列软实例
事例呢
也不一定完全是学习方面相关的
像我当时呢也会说关于sports啊
或者各种活动的事例
然后呢就是coding的题目啦
在面试官提出问题以后
不用急着先回答
一定要先去clarify所有的input
output格式和corner cases的情况
特别是有些题目像矩阵
字符串数组这一类
甚至可以举几个例子去确认
然后呢
可以请求一两分钟的思考时间
想好后和面试官阐述
你打算用什么样的算法去解题
那有的时候
小伙伴们
可能没有一下子想出很好的算法
怎么办呢
那可以先尝试用暴力解法
为自己去争取更多的时间
在其中一步一步的想
怎么可以继续优化自己算法
有些同学可能在tag面试中运气很好
遇到了自己做过的原题
但千万也不要太激动
还是要按照上面的步骤来
让面试官充分的去理解
你怎么得出这样的算法的过程
然后说一下关于corner CASES
有什么可以注意的呢
首先tag面试的时候
很多都会assume没有none啊
Zero overflow的这种情况
但是一定要和面试官去表明
你考虑到了这样的case
然后请问是否可以忽略这种情况
在良好的corner CASES的考虑习惯
也一定程度上
决定了
面试官对你工作能力的第一印象
而且看到题目的时候
就要考虑这些情况
千万不要等到后期
面试官指出了这样的bug
再去考虑corner cases
在coding的过程中
很多小伙伴都会忘记
非常非常重要的一点
就是communication
这是北美面试的一个重点
同学们在正式面试前
可以多去参加几次猫interview
练习一下自己一边去写代码
一边解释代码的算法的multitask的能力
在面试的过程中呢
也要及时去和面试官沟通
并且把选择这样写的好处都说出来
在编制中的命名也很重要
一般用比较简短但是明了的取名法则
面试官可以更好地理解
每一个变量存在的意义
写完之后呢
一般会去选择一个common case
和一个corner case
和面试官去一起go through
你的答案
让面试官更加去相信
你的算法是正确的
那么关于BUG的影响呢
如果自己在勾思路中发现了
就要及时去修改
并且承认当时没有考虑到这个情况
的原因
比面试官再去指出这个bug要好很多
就算自己一下子没有想出优化的算法
好好按照上面的步骤用暴力解法
也比什么都没有写出来好太多了
毕竟现在Newborn面试
更加考核的是你的编程习惯和潜力
在面试中最后呢就是反问环节啦
这也是最后
给面试官一个好印象的机会
像我自己用过的问题有like how much freedom
do you have in the workplace
只要呢
让面试官觉得你去在乎这个position
并且不要太过常见太普通就好啦
那么最后就祝大家都面试顺利啊
拜拜