iOS开发面试必须要注意的问题!
今天要来聊聊的,是关于面试求职的那点事儿~
说起求职,无论是应届生还是职场老司机, 大家都难免紧张。
笔试有考点吗?
简历里要把所有项目经验写进去吗?
这个算法要记吗,那个概念会考吗?
面试官的套路有尽头吗?
今天分享一份开发面试全攻略。
一般来说,大公司招聘流程都是:简历的筛选-笔试-技术面试-HR面,在技术面一般至少有两轮,如果岗位比较重要技术面试的场次可能有五六轮。HR面结束后还有可能还有部门经理的面试。
相对而言, 校招倾向于考验学生的基础知识、思维能力和发展潜能。除了这三个方面,丰富的项目经历或者活跃于技术博客均可加分。
社招相比较于校招来说,会更加功利一点,更加希望招过来的人能够直接上手去做一些项目, 这样的话更倾向于考虑实际的开发技能以及项目的匹配度,还会考虑技术方面的价值观是否和我们有出入。
接下来的部分,会重点讲一讲笔试和面试过程中,面试官的考察点和可能存在的问题。
一:笔试的考察点
1.系统编程
在这个方面,我们会考核涉及到计算机的三大件, CPU、内存、硬盘相关的一些原理,比如进程、线程、进程间的同步,线程间的同步,内存堆栈等等。
2.网络编程
如果你只是做一些应用与开发,对于网络编程这方面的要求会低一点,但是你也要知道大致的一些知识,比如TCP协议,UDP协议,还有一些网络层的协议等等。
3.数据结构
这方面会考察一些基础知识,像链表、栈、树、图等等,树和图可能会考的比较少,但是一些常用的算法考察还是有的。
4.其他
笔试还会涉及到一些语言的基础,比如C++/ C等等。关于移动开发、iOS开发,还会涉及到OC语言和iOS的基础概念,网络方面的操作,一些持久化的东西怎么做的,项目经验等等。
二:面试的考察点
1.基础知识
并不是说笔试通过以后,后面面试就不会再问基础知识了(当然说如果你是社招的话,这方面相对来说会少一点)。对于一些应届生来说,面试中考察基础知识,其是一个比较着重的考察点。
2.项目经验
一般来说,项目经验我们会问到:
◾ 你的项目结构是怎么样的?
◾ 你的项目流程是怎么样的?
◾ 你的项目难点在哪里?
◾ 你的项目收获又是怎么样的?
有的同学可能会在面试中直接说:“哎呀我就是做开发的,我没有流程巴拉巴拉,我就是接接上面的任务。” 面试官让其回答项目的难点和收获基本上答不上来,这是非常不可取的。
3.动手能力
面试一般会布置一些题目,需要大家直接动手写,包括编程题和算法题,一般来说这些题目网上是可以找到的,比如像找链表的倒数第几项、宏定义,还有简单的字符串题目、二叉树遍历,甚至说是手机号码的九宫格匹配等等,都是一些可能跟实际开发有一点点挂钩,但是还是偏理论的东西。
三:面试中会暴露的问题
1.简历过长
可能有的同学会有疑问:简历越丰富难道不是代表我越有能力吗?实际上,面试官平时的工作已经非常繁忙,五六页的简历他们来说信息量太大了,而且里面十分可能会有对他们来说无用的信息。比较好的做法是简历尽量精简,一张A4纸就把所有关键信息罗列出来,剔除无关信息,比如一些与技术面试毫不相关的活动经历。
2.表述夸张
例如:一个2年的开发,在简历上写:我精通C/C++等语言。一个公司里做了五六年甚至十年的资深开发,也不见得会说自己精通C++,因为语言的深度是非常深的,所以同学们尽量不要在简历上做这种描述,如果有面试官对这方面比较敏感的话,那么可能连简历的筛选都过不了。
3.准备不足
在面试高峰期,大家可能会参加很多场面试,往往在没有时间做好准备的情况下,直接上来就面试了,这样在面试的时候会比较紧张,面试官问的问题,你没办法发挥自己正常的水平来作答,这就是一个失败的面试。所以说,在面试之前一定要挤出时间做好准备。
4.准备太多
计算机科学或者软件工程,是需要通过不断实践来掌握的工程型学科。有些同学可能会为了面试去死记硬背,比如我问快排的时间复杂度是什么,有的同学很快就报出来答案,但是实际情况可能是这个同学对快排只有一点了解,真正实际动手去写快排就不会了。等于说他只是为了应试而记一些东西,这是面试的一个大忌。面试官有很多面试技巧来试探你知识的盲区,实际上面试官可能会先抛出一个浅显的知识点,先让你来回答,然后面试官针对这个知识点进行深入或者扩散探讨,然后慢慢地去挖掘一些面试人员真正不懂的东西,让面试者去暴露不足和缺点。
笔试/面试技巧固然重要,但开发的知识储备和项目经验是工作中更应该关注的内容。
更多干货还在更新中,记得关注该简书哦~
-
持续更新,精品小圈子每日都有新内容,干货浓度极高。
-
结实人脉、讨论技术 你想要的这里都有!
-
抢先入群,跑赢同龄人!(入群无需任何费用)
-
(直接搜索群号:937194184,快速入群)
-
点击此处,与iOS开发者一起交流学习
申请即送:
- BAT大厂面试题、独家面试工具包,