你们在金色的余晖中回家,而我却在银色的温柔中,匆匆潜行-----这是我的现状。

  今年的招工形式不是很好,难找工作;也难招人。写这篇博客,是为了给各位在找工作的iOS dev 一些参考。

上篇:换坑(去面试)

  又是一年换坑的时节,出于各种原因,我又换坑了。

  今年面了6家,5个offer。看似还不错,实际很艰难。3月初,boss对公司人员透露,今年不涨薪水且暂无项目奖金。我这组,直接走了6个,我迫于无奈提出离职。一开始我觉得今年应该也很容易找工作,毕竟去年轻松就跳槽了。然而,一个月没接到电话。我一度以为留错了手机号,再三确认以后,发现并没有错。虽然不慌,但是或多或少有些担忧。4月下旬接到了第一个电话,是Cisco的面试邀请。我这才安心,毕竟有电话了。

  先说第一家吧。Cisco,我去面试了3个小时。4轮面试:

  第一轮:OC,问了一些语法,基本都答出来了。最后问了一道二叉树的排序输出,其实不难,但是我真的不会。(半路出家,算法基本不会)。这关过了

  第二轮:C++,问了一下auto_ptr的实现原理,基本答出来了。然后问了我数据加密传输的一些方案,答出来了。最后,状态机的实现方案,这题我答的不好。这关过了

  第三轮:英文面试,老套路,自我介绍,项目内容的问答。这关过了

  第四轮:C,问了我一些指针题。感觉好吃力。可能挂在这轮了

  人事告诉我,这里总共就四轮,你都面过了,回去等通知吧。(没谈工资,这就明显GG了。。)

  总结,去大公司综合素质和技术一样重要。明显我的技术不够扎实。

  第二家,一家车载智能模块开发的公司。技术面试,基本没压力。给了一道代码的纠错题,轻松过。然后副总直接面试,也过了。最后还是没去,我要18k,他说你才毕业3年,我们给不到,只能16k。好吧,16也可以,但是13薪。我觉得做一个管理岗位,有点低。所以没去。

  总结,2k都不想给的,估计别的待遇也不好;还有用人看工龄的,我觉得不合适。

  第三家,创业两年的互联网公司,面试基本无压力。问了一些OC的基本语法,项目架构。boss面试,谈了一下对创业公司的见解,boss很满意。2轮面试,基本过了。这家17k,14-18薪;上班路程30mins;不打卡。是不是很好,然而10-22点的,觉得很累。

  总结,创业公司,喜欢看实力,要能立刻干活,一般都很累。不打卡其实就是无条件加班。薪资在高,不如不累。

  第四家,传统企业。这家居然要我笔试,我当时就不乐意了。(招人的话,两年+的工作经验,还要笔试,我觉得HR有问题。)笔试全对,都是考培训生的题目,所以无压。面试之后了解到,他们有一个IM项目,拿到了风投,不过架构和实现都不行。需要来人帮他们重构,而我正好独立完成过IM app,性能也很好。岗位,给我一个开发的title,但是要带2个新人。我要18k,不同意。基本pass了。

  总结,传统行业还是传统行业,许多做法很过时。16k,13薪,还要我带两个新人。吃力不讨好。

  第五家,外卖行业的巨头之一,3个字。面试了很多技术:代理的一对多;socket的传输优化;控制反转的实现及优化;ASI和AFN的优缺点;Block的实现原理等等。面试很全面,当然我过了。后来说人事没空,让我等消息。这一等就是很纠结,不得不吐槽一下。HR,每次给我电话都是19点到20点;HR,要我提供收入证明,我提供了,一直没有收到反馈。结果她说她们总监出差了,呵呵。等了4天说过了,让她发offer,一直说走流程,呵呵。

  第一周的周五面试,第二周的周五晚上8点发的offer,这效率,我觉得活不久了。关键是发offer的那天是4月30号。五一前的最后一个晚上。我就想说,你找好工作回家,和没找到工作回家是不是一个心情。你不理解我,我何必呢。

  总结,年轻的企业就是年轻。18k,12-16薪。(HR,8点都没下班,IT几点才能走呢。。。)

  第六家,也就是选择的这一家。虽然现在是21点,我还有1个多小时才下班。但是我接受。技术面试,基本无压力;人事面试,过了。人事每天电话我,要我回复offer的确认。语气强硬但是,不会压迫人。和第五家的高傲完全不一样。我选择了这家,待遇什么都还可以,而且有发展空间。

  总结,16k,14-17薪。工作餐,下午茶,很好的办公环境。关键是效率高,从入职到开发到部门协调,做事不用等。这家也不打卡,所以加班你懂的。

  最后说一下感触和面试的主要内容。
  感触:1、好好学习,有底气才可以选;2、不打卡就是无限加班;3、薪水低,待遇好有时也不错;4、大企业执行力很重要。
  面试内容:OC基本语法,多线程,设计模式,算法(心好累);解决问题的常用渠道。

  

下篇:选萝卜(面试别人)

  入职以后,老大把iOS的面试我转给了我。每天人事会给我很多她们选过简历,真的很多,一天40份。看完之后,我告诉她们可以来面试的人员名单。

  简历筛选是很重要的一关,我说一下我筛选的几个标准:

  1、稳定性,你4年换4家,我要你干嘛。

  2、技术积累,你有没有blog、GitHub开源项目。

  3、个人说明,不要说你什么都可以,我不知道你想做什么,想要什么职位。

  4、项目陈列,你做的什么都写出来。不然我不知道你干啥。

  面试过程,没有笔试,直接对话,问到不会为止。

  我一定会问以下问题:

  1、你的拿手项目是什么?你负责哪些?

  2、你对app框架有什么见解?

  3、你用了哪些控件?第三方的话,你看过源码没,看过注意事项么?你会优化吗?

  4、block的运行在内存里面的流程?

  5、GCD的典型用法,下载文件然后更新UI。

  6、对hybrid开发了解程度。(项目要用这个)

  

  接下来就是刷人的时候了。只要你的简历上写的精通的熟练的,我都会问,有3个答不出来的你就GG了。

  swift,我会问他一道基础语法,还有一个特有语法。

  C++,我会问智能指针和lambda。

  OC的Runtime,我会问[self xxx]; 在Runtime里面会被转化为什么。

  OC的内存管理机制,我会问一个赋值语句在运行时,会产生几块内存地址。

  Linux,我会问一些终端的基本操作:pwd是什么命令  vim怎么删除一行。

  android,我会问intent 什么时候会失败,最大可以传递多大的数据。

  设计模式,我会要他写一个单例。

  

  我面了大约10个人,就两个过了的。有一个5年的上来就说要做技术负责人,结果他说他精通的,我一问他三不知,自己走了。有一个三年的,一问控件,都是第三方,所有的都是,只会伸手。还有一个4年的,说项目都是独立完成的,一问http模块和加密模块,他说别人写的。

  总结一下这些没过的原因:

  1、不会的别吹牛,人家问深点你就不会了,会多少就如实写;(诚实很重要)

  2、别一直换东家,你在别的地方走得快,我这里你也可能呆不久;(稳定很重要)

  3、OC的基本语法很重要,copy,strong,原子非原子;

  4、常用第三方的源码你看了没?没看的话,使用时的注意事项,你知道吗?实现原理呢?(不要只做伸手党)

  5、内存管理机制,GCD,你不了解就GG了;(低层还是要会一些的)  

  6、OC的进阶语法,例如:数组的枚举别用for in,用enumerateObjectsUsingBlock 。(每种语言的优势要发挥出来)

  

也说面试 - 一个努力的iOS Dev的更多相关文章

  1. iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件

    iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 步骤 第一步:在 Proj ...

  2. iOS Dev (21) 用 AVPlayer 播放一个本地音频文件

    iOS Dev (21) 用 AVPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 前言 这篇文章与上一篇极其相似,要注 ...

  3. iOS Dev (60) 怎样实现 UITextView 中的 placeHolder

    iOS Dev (60) 怎样实现 UITextView 中的 placeHolder 作者:阿锐 地址:http://blog.csdn.net/prevention - 跟着你的 UITextVi ...

  4. iOS Dev (59) 高度自适应的UITextView

    iOS Dev (59) 高度自适应的UITextView 作者:阿锐 地址:http://blog.csdn.net/prevention - 例如以下 _inputTextView 为一个 UIT ...

  5. 【如何快速的开发一个完整的iOS直播app】(美颜篇)

    原文转自:袁峥Seemygo    感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,美颜功能是很重 ...

  6. 【如何快速的开发一个完整的iOS直播app】(采集篇)

    原文转自:袁峥Seemygo    感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,首先需要采集主 ...

  7. 【如何快速的开发一个完整的iOS直播app】(播放篇)

    原文转自:袁峥Seemygo    感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看上篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,集成ijkpl ...

  8. 【如何快速的开发一个完整的iOS直播app】(原理篇)

    原文转自:袁峥Seemygo    感谢分享.自我学习 目录 [如何快速的开发一个完整的iOS直播app](原理篇) [如何快速的开发一个完整的iOS直播app](播放篇) [如何快速的开发一个完整的 ...

  9. 【如何快速的开发一个完整的iOS直播app】(推流篇)

    前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,肯定需要流媒体服务器,本篇主要讲解直播中流媒体服务器搭建,并且讲解了如 ...

随机推荐

  1. DuoCode测试

    http://duoco.de/ DuoCode 只能引用自己编译的DLL,不能引用外部DLL.这么做可以保证”代码编得过,就一定能跑“. SharpKit 遇到过这样的问题.在代码中使用了 list ...

  2. 转载: 正确处理浏览器在下载文件时HTTP头的编码问题(Content-Disposition)

    最近在做一个下载工具时,发现CSDN上的资源下载时竟然没有被拦截到,经过分析,终于有了一个发现,解决了我之前做文件下载时的乱码问题,所以转载这篇释疑文章,希望有人可以看到,可以从中得到帮助,也用来备忘 ...

  3. Appium for win7 环境搭建

    一.安装node.js 1.到官网下载node.js:https://nodejs.org/download/ 2.获取到安装文件后,直接双击安装文件,根据程序的提示,完成nodejs的安装. 3.安 ...

  4. HTML5外包

    北京动点飞扬软件 从事html5外包业务五年,是国内第一家以HTML5移动平台.手机平台项目外包业务为主的正规软件团队, 欢迎联系 QQ:372900288 电话:13911652504 我们现已发展 ...

  5. 一台机器运行多个JBoss 4.2.3多实例,或多个同一版

    http://www.java123.net/v/426419.html     暂未验证 今天应用更新,放到测试服务器上打算测试.测试服务器上有个jboss4.2.3有项目在跑,我是功能改造又不想影 ...

  6. ruby md5加签验签方法

    # md5签名def md5_sign(data,key) return OpenSSL::Digest::MD5.hexdigest(data+key)end # md5验签def md5_veri ...

  7. session与cookie的区别---

    session和cookie的最大区别在于session是保存在服务端的内存中, 而cookie保存与浏览器或客户端文件里面: session是基于访问的进程,记录了一个访问的开始到结束,当浏览器或进 ...

  8. Logistic Regression逻辑回归

    参考自: http://blog.sina.com.cn/s/blog_74cf26810100ypzf.html http://blog.sina.com.cn/s/blog_64ecfc2f010 ...

  9. sharedPreference

    http://blog.csdn.net/yong199105140/article/details/8425247 SharedPreferences 分类: Android2012-12-24 1 ...

  10. intellJ实用技巧

    常用语句 在IntelJ中和Eclipse中稍有不同,在Eclipse中,输入main再按Alt+/即可自动补全main函数,但是在IntellJ中则是输入psvm. 在方法体内部有for循环,在In ...