系统检测到您的浏览器版本过低,无法获得最佳的使用体验,建议您更换其他浏览器或 升级您的浏览器。(使用360浏览器访问请选择极速模式)
关闭
欢迎 {{loginUsername}} 登录,退出 职聊 刷新简历 我的简历 简历预览 智能推荐 增值服务 修改密码 刷新职位 发布职位 预览主页 收到简历 智能推荐 会员服务 修改密码 求职者登录 招聘登录 会员注册 求职者注册 招聘注册 职聊 触屏版 微信公众号 微信小程序 App(安卓) App(苹果) 手机端 使用帮助 网站导航
选择城市
切换城市分站,让我们为您提供更准确的信息

当前选择城市:总站
总站 {{item.district_text}}

程序员面试需要注意什么

转载 职业指导

请用微信扫一扫 2019-10-15 13:56 {{clickNum}}

程序员是技术要求很高的岗位,虽然很多程序员也很优秀,但是去参加求职面试的时候,往往都是以失败告终。失败的原因很多都是没有注意细节。下面小编简单介绍一下程序员面试需要注意什么:


01 想要通关面试,千万别让数据结构拖了后腿

很多公司,比如 BAT、Google、Facebook,甚至以技术作为支撑的中小型互联网公司,面试的时候都喜欢考数据结构、算法,让人现场写代码。

有些人虽然技术不错,但每次去面试都会“跪”在算法上,很是可惜。那你有没有想过,为什么这些大公司都喜欢考算法呢?

校招的时候,参加面试的学生通常没有实际项目经验,公司只能考察他们的基础知识是否牢固。社招就更不用说了,越是厉害的公司,越是注重考察数据结构与算法这类基础知识。相比短期能力,他们更看中你的长期潜力。


02 稳固的基础知识,决定了你的高度

你是不是觉得数据结构和算法,跟操作系统、计算机网络一样,是脱离实际工作的知识?可能除了面试,这辈子也用不着?

可是你听说过技术过时,什么时候听说过算法过时,不仅没有过时,因为机器学习、大数据的要求,算法变得越来越重要了。

当然,也有很多人说,自己实际工作中根本用不到数据结构和算法。所以,就算不懂这块知识,只要 Java API、开发框架用得熟练,照样可以把代码写得“飞”起来。

你别忘了,我们学任何知识都是为了“用”的,是为了解决实际工作问题的,学习数据结构和算法自然也不例外。


03 业务开发工程师,你真的愿意做一辈子 CRUD boy 吗?

如果你是一名业务开发工程师,你可能要说,我整天就是做数据库 CRUD(增删改查),哪里用得到数据结构和算法啊?

是的,对于大部分业务开发来说,我们平时可能更多的是利用已经封装好的现成的接口、类库来堆砌、翻译业务逻辑,很少需要自己实现数据结构和算法。

但是,不需要自己实现,并不代表什么都不需要了解。

小编来举一个你非常熟悉的例子:如何实时地统计业务接口的 99% 响应时间?

你可能最先想到,每次查询时,从小到大排序所有的响应时间,如果总共有 1200 个数据,那第 1188 个数据就是 99% 的响应时间。很显然,每次用这个方法查询的话。都要排序,效率是非常低的。但是,如果你知道“堆”这个数据结构,用两个堆可以非常高效地解决这个问题。


04 不仅要关注功能的实现,还有关注代码质量

对编程还有追求?不想被行业淘汰?那就不要只会写凑合能用的代码!

小编觉得,面试时的竞争其实就在细节。

这些细节包括:你用的算法是不是够优化,数据存取的效率是不是够高,内存是不是够节省等等。这些累积起来,决定了一个框架是不是优秀。所以,如果你还不懂数据结构和算法,不懂得如何提高代码的质量,还是抓紧时间补一补吧。

{{item.value}}({{item.name}})

{{item.name}}

燕聘网

顶部