也说面试 - 一个努力的iOS Dev
你们在金色的余晖中回家,而我却在银色的温柔中,匆匆潜行-----这是我的现状。
今年的招工形式不是很好,难找工作;也难招人。写这篇博客,是为了给各位在找工作的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的更多相关文章
- iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件
iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 步骤 第一步:在 Proj ...
- iOS Dev (21) 用 AVPlayer 播放一个本地音频文件
iOS Dev (21) 用 AVPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 前言 这篇文章与上一篇极其相似,要注 ...
- iOS Dev (60) 怎样实现 UITextView 中的 placeHolder
iOS Dev (60) 怎样实现 UITextView 中的 placeHolder 作者:阿锐 地址:http://blog.csdn.net/prevention - 跟着你的 UITextVi ...
- iOS Dev (59) 高度自适应的UITextView
iOS Dev (59) 高度自适应的UITextView 作者:阿锐 地址:http://blog.csdn.net/prevention - 例如以下 _inputTextView 为一个 UIT ...
- 【如何快速的开发一个完整的iOS直播app】(美颜篇)
原文转自:袁峥Seemygo 感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,美颜功能是很重 ...
- 【如何快速的开发一个完整的iOS直播app】(采集篇)
原文转自:袁峥Seemygo 感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,首先需要采集主 ...
- 【如何快速的开发一个完整的iOS直播app】(播放篇)
原文转自:袁峥Seemygo 感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看上篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,集成ijkpl ...
- 【如何快速的开发一个完整的iOS直播app】(原理篇)
原文转自:袁峥Seemygo 感谢分享.自我学习 目录 [如何快速的开发一个完整的iOS直播app](原理篇) [如何快速的开发一个完整的iOS直播app](播放篇) [如何快速的开发一个完整的 ...
- 【如何快速的开发一个完整的iOS直播app】(推流篇)
前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,肯定需要流媒体服务器,本篇主要讲解直播中流媒体服务器搭建,并且讲解了如 ...
随机推荐
- vb6 枚举对象属性
Option Explicit '引用Library TLI ' C:\WINDOWS\system32\TLBINF32.DLL ' TypeLib Information Private Sub ...
- nginx tar.gz安装方法+简单静态文件配置
1.首先安装依赖包(依赖包有点多,我们采用yum的方式来安装) yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel ...
- Laravel学习笔记(六)数据库 数据库填充
数据库驱动的应用程序往往需要预先填充数据到数据库,以便进行测试和演示. 什么是种子数据 种子数据就是必须要加载了应用程序才能正常运行的数据.大多数应用程序需要在开发.测试和生产中加载一些参考数据. 一 ...
- 实验室ip同步脚步
#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin hostname=`hostname` us ...
- 开源是一种态度、分享是一种精神 — FirApi发布、WeiXinApi更新
在云计算盛行的年代,接触开发式的平台必不可少,因项目累积的代码也不少,之前本着"重复的事情自己做一次就够了,不需要其他人在重复为此工作."的想法发布了WeiXinApi.Boots ...
- css绝对定位问题
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 直接解压msi文件
msiexec /a "F:\TDDownload\subversion-1.5.5.msi" /qb TARGETDIR="F:\TDDownload\subversi ...
- poj 2513 Colored Sticks trie树+欧拉图+并查集
点击打开链接 Colored Sticks Time Limit: 5000MS Memory Limit: 128000K Total Submissions: 27955 Accepted ...
- Flex 加载shp
至于gis格式比较常见的shp是开源的,网上开源的as代码也很多 这个支持的shp算比较好的 源码在这边http://files.cnblogs.com/files/haibalai/shp.rar, ...
- 洛谷P3373 【模板】线段树 2
P3373 [模板]线段树 2 47通过 186提交 题目提供者HansBug 标签 难度提高+/省选- 提交 讨论 题解 最新讨论 为啥WA(TAT) 题目描述 如题,已知一个数列,你需要进行 ...