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

  今年的招工形式不是很好,难找工作;也难招人。写这篇博客,是为了给各位在找工作的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. 用多itemtype的具有addHeaderView的recyclerview,还是scrollview?

    如果一个复杂的布局,1,轮播图,2,广告图,3,带标题的list,4,gridview布局,各种不同的布局 在最外层套一个scrollview,里面list 用for循环addView,gridvie ...

  2. Nginx 下配置SSL证书的方法

    1.Nginx 配置 ssl 模块 默认 Nginx 是没有 ssl 模块的,而我的 VPS 默认装的是 Nginx 0.7.63 ,顺带把 Nginx 升级到 0.7.64 并且 配置 ssl 模块 ...

  3. MyEclipse Spring 学习总结三 SpringMVC 表单处理

    SpringMVC 表单处理的项目结构如下图所示: Student.java 文件 public class Student { private Integer age; private String ...

  4. Alpha版本——Postmortem会议

    No Bug 031402401鲍亮 031402402曹鑫杰 031402403常松 031402412林淋 031402418汪培侨 031402426许秋鑫 设想和目标 1.我们的软件要解决什么 ...

  5. JavaScript 装逼指南

    Summary 本文秉承着 你看不懂是你sb,我写的代码就要牛逼 的理念来介绍一些js的装逼技巧. 下面的技巧,后三个,请谨慎用于团队项目中(主要考虑到可读性的问题),不然,leader 干你没商量. ...

  6. Asp.net MVC中 Controller 与 View之间的数据传递

    在ASP.NET MVC中,经常会在Controller与View之间传递数据 1.Controller向View中传递数据 (1)使用ViewData["user"] (2)使用 ...

  7. 递归绑定将数据表中的数据按层级更新到 TreeView节点上

     private void bindTreeView1()         {             string sql = "select * from dm_category&quo ...

  8. sql server 相似度对比

    转自:http://www.dotblogs.com.tw/rachen/archive/2008/10/07/5611.aspx 函數一.產生 Like 比對用字串 ) ) ) as begin / ...

  9. [家里蹲大学数学杂志]第049期2011年广州偏微分方程暑期班试题---随机PDE-可压NS-几何

    随机偏微分方程 Throughout this section, let $(\Omega, \calF, \calF_t,\ P)$ be a complete filtered probabili ...

  10. 一行代码解释.net事件与委托

    button.Click += delegate { button.Text = string.Format("{0} clicks!", count++); }; delegat ...