[心得] 2018/1 iOS面试心得

楼主: peterchen302 (Cyuan)   2018-01-17 12:03:00
感谢Soft_Job版上的大大们分享一些面试心得,从本版受益良多,因此也来写篇面试心得
,希望能回馈到大家
面试的职缺以iOS App 工程师为主
国立科大资工学士,社会新鲜人
用Swift开发经验1年
若有想看我的履历的话可以站内我,再把cake resume的连结贴给您。
以下根据面试的顺序写各公司的面试情况
1.神*科技股份有限公司
职缺 : iOS App 工程师 -南港
面试流程: 英文测验(仿多益的英听+阅读) 30min -> 性向测验、逻辑测验、程式笔试(考
C) -> 面试
面试时间: 约3 hrs
上班时间: 9~18,早上八点在北车有接驳车,晚上18:20从林口回来
这家是公司透过104邀请我去面试的。
前面的考试就占了2.5hrs然后主管的面试不到30分钟就结束了…,英文测验英听的部分讲
的速度比多益在快一些,口音也会比较重,前面的看图题做起来没有很顺。程式笔试的部
分都是选择题,原想说是面试iOS会考Swift之类的结果是考C XD,考题不会太难,只是
recursive的地方有点忘记答案不太确定。
考完试后有点累做了一个小梦:梦到主管面试说整个App team是在林口龟山总部上班…wtf
,你找我来南港面试结果说缺在林口,最后就没有下文了。
刚刚再查一下,他把南港分部的人改成Sr.iOS 工程师,希望能在南港独立作业,能力比
较不足当Sr.的就拉到林口上班,整个App team约6.7人。
结果: 无声卡
2. Beseye 云守护安控股份有限公司
职缺: Cloud Engineer 云端工程师
一家做网络摄影机的新创公司,成立不到四年就有3亿的资本额,产品的外型做得满不错
的,
主要功能除了居家安全外,若遭小偷、小孩再哭泣都能透过App通知家里大人。
面试时间: 1hr
上班时间: 9~18(弹性半小时),公司不鼓励加班,通常时间到公司就没人了
这家是在104看到我履历后由创办人寄mail给我邀请我去面试。
面试官有三人,一开始自我介绍完后,其中一位面试官就跟我说: 请问你知道你来面试的
是云端工程师不是iOS工程师吗? 当下听到真的满傻眼的,但想说都跟单位请假来面试的
就还是硬著头皮面试完。他们后端是使用RoR,云端的部分是Node.js跟各种JavaScript的
code,要做来分析使用者摄影机回传的资料,判断是否有外人入侵等功用。必竟自己JS系
列的都不熟,最后主考官就考C跟Python相关的一些题目,但没有额外准备,想也知道结
果很惨烈…
结果: 感谢函
其实个人满喜欢这家公司的产品跟公司的气氛的,云端处理的部分也会用到影像处理,机
器学习相关的东西,他们的研发部门通常不会单单只支援某一部分,可能云端的function
做完就能回去支援iOS team之类的,唯一的缺点应该就是叫我去面试没有先讲好面试的职
缺吧…想说整篇104上面都是写跟iOS相关的结果还会搞乌龙我也是醉了。
3.集佳股份有限公司
职缺: iOS App 工程师
这家是做RFID、蓝芽通讯、门禁卡、生物辨识产品等等,已经做了30年了的样子,主要客
户在国外,所以进到公司有机会跟公司去国外参展,公司有70人,台中的工厂130人,软
体部门只有四人所以现在正在努力招人XD
面试流程: 程式笔试+逻辑测验 -> 面试
面试时间: 约2hr
上班时间: 8:30~17:30(弹性半小时),偶而加班,加班就看产品的进度而定
逻辑测验题目不难,程式考题都有考到满多观念的,之前爬文看这种iOS面试题目都会写
到,这边也写出来跟大家分享:
1.UIView life cycle
2.delegate跟protocol的差异
3.ARC机制,什么是reference count
4.什么是Callback
5.git基本指令,如何做git merge
6.strong 跟 weak 对memeory的差别
7.MVC架构是什么及优缺点
8.什么是safe thread
9.GCD(Serial, Concurrent, Main Dispatch Queue)
10.蓝芽Server跟Client通讯,head一个值,data长度一个值,data 16个值,end两个值,写
一个callback function拿一串array中的资料
一开始最后一题不太懂要干嘛,他写的跟学校计算机网络的图一样,中间的data是16进位
,还好交卷后技术主管有在给我一些提示才把function给写出来。
面试官共4位,就是整个软件组的成员,就问一些Swift、iOS相关的问题,也有问是否看
得懂Obj-C code,因为公司另一个Android/iOS工程师是用Obj-C开发的,就回答大三有修
过半年iOS开发的课是用Obj-C,虽然现在没有在写但还算看得懂。后来主管也有讲到为何
要考最后一题的蓝芽通讯,因为他们未来开发会开发蓝芽通讯协定的东西,回传的data就
是长的丑丑的binary code,也有说到技术开发完会OpenSource给其他厂商使用(也可能是
卖授权之类的XD)。
结果: Offer get, N+2k, 年终2~4个月
感觉得出来公司软件组满缺人的,也希望心血进来能带来些转变吧,未来公司也想从硬件
公司转型成软硬件的应用公司,软件的比重会越来越重吧,优点是离家算近(公共汽车+走路
40min内、骑车 20min),唯一的缺点是没有UI/UX Designer,这部份真的是重function
不重使用者体验的传统公司呢XD
4. 玉山银行
职缺: 新进IT人员
玉山应该就不用多做介绍了吧,在104上也有看到iOS的缺,不过他们人资送过来的邀请是
统一团面用新进IT的方式来应征。
面试流程: 先线上填玉山履历表+性向测验 -> 团体面试
面试时间: 约2hrs
这次团面共五个人,一女四男,面试官两人,想当然尔大家都穿西装或者衬衫加毛衣,只
有一个男的穿得比较不正式就是了。团面为每人3分钟自我介绍,除了最后一个厉害的政
大资科所大大讲到3分钟满外,其他人都1、2分钟就结束了。
面试官有特别提到说,可能进来不会那么刚好分到iOS的职缺,要做好要用.NET或Java开
发银行系统的准备。因为面试时间只有三分钟就没有特别Demo自己的project,不过其中
一位主管感觉真的有翻一下我的github,还讲说"你用过满多种语言开发的呢,是喜欢学
各种语言吗",我只好诚实回答都是学校课程project,只有Ruby on Rails的CRUD Web是
觉得好玩来做的XD。除了针对自介的内容做询问之外还有问一些性向测验的问题,这里就
不多做详述。
团面结束后有做一段玉山的介绍,临走前还给每人一份面试礼物(我还没打开来看就是了
XD)
结果: 下周四进行二面,考1.5~2hrs的笔试,二面完就会通知是否录取。
银行业感觉是不错的选项,不过进去之后每天都要穿玉山的制服感觉有些别扭,很像回到
国高中年代或像现在替代役每天都要穿制服,有种拘束感吧…
5.北祥股份有限公司
职缺: iOS App工程师
一家有IBM、Microsoft、VMWare台湾代理的公司,主要也是接大公司的案子,常跟银行业
合作,需要派驻在各银行工作。
面试流程: 逻辑测验 1hr -> 面试 -> 上机
面试时间: 约3.5hr
上班时间: 根据各派驻银行的规定。可能会加班,加班时间1:1补休,偶而会有加班费,
但若是个人产能问题就不能报。
一开始逻辑测验图形题满机车的,给你两张图各有五个图形,找出第一张图有的但第二张
没有的规律。
面试共三位面试官,两位技术主管,一位人资。自我介绍完Demo三个App并介绍各个功能
,也有做专题的讲解,这家公司也会看一下大学成绩这样,面试有提到目前的案子是跟远
东银行合作,要派驻到远东银行工作,开发team不止我一人,所以不用担心没有人带。开
发team有机会跟银行IT人员接触,有些需求可能技术人员直接沟通会比跟PM讲完再转达有
效率些。公司未来规划是希望开发人员也能学一些后端的技术
公司会有买电脑补助,一开始补助1/2,一年后多补1/4,两年后全额补助,并且电脑归自
己。
薪资的部分有提到前一家公司开N+2k,这家说这个薪水太高,不过会依据个人表现去调薪
(恩…好像都是这样说)
结果: 周四会收到通知
感觉会是个不错练功的公司吧(?,不过看Soft_Job版对派驻工程师的观感都没有那么好,
可能比较没有保障吧?
6.联合报股份有限公司
职缺: iOS App 工程师
联合报系大家每天看新闻都会看到吧,他们还做满多App的,udn买东西、udn售票网、
udn News、udn读书吧、udn疯活动、经济日报、搭车吧,台北
面试时间: 1hr
工作时间: 9~18(弹性半小时),主管不鼓励加班,加班的话以补休为主
面这家之前早上先去北祥,9点面到快13点,还好有打电话改时间不然面试迟到直接GG。
面试官两人,一个App技术总监,一个App技术主管,技术主管有暖男爸爸型的感觉,讲话
声音很舒服(?,一样自介完Demo三个App,不过其中一个app不知道怎样打不开只好Demo两
个,总监除了问些iOS问题外还问到Web相关、数据库阿等等之类的,整个过程满像再聊天
的,也问了满多公司的事情。整个行动发展部共40人,会分成各个专案小组去maintain既
有App、开发新App,还有2成的人会负责研究新技术AI、Machine Learning、VR、AR等等
,好像有说希望未来可以往VR App做发展。
整个技术部门不会特别跑Agile、Scrum,不过有说敏捷开发有些适合用的他们就会采用,
公司会开会code review、分享新技术等等,且各个专案team都会有UI/UX Designer合作
,部门也有自己的技术Wiki,已经servey过的技术都会放上去,此外也有各种内部的
framework,最基本的login/logout,Navigation bar都有各种包好的framework可以用,
感觉进来可以学到很多东西。
结果: 周五会收到通知
这家公司气氛不错,主管、总监人也都满好的,可以学到很多东西
7. 群传媒股份有限公司(Readmoo 读墨)
iOS App 工程师
直接讲读墨可能比较多人知道,他们有出可以跟Amazon kindle打对盘的电子书阅读器
mooInk网络上满多好评的,当初也有再考虑要不要买XD,还有电子书平台,跟kobo打对盘
,整个公司35人,App team约13.14人
面试时间: 约1.5hr
工作时间: 9~18(弹性半小时),不鼓励加班,假日加班以补休为主(通常都是办活动),平
日加班需有主管签加班班
面试官共三人,一个App team技术主管,一个技术总监,一个iOS工程师。起手式一样自
介+Demo,然后iOS工程师就开始问一连串的问题,直接用问答的方式还满爽快的,稍微纪
录一下自己记得的部分:
1.Swift 2.0、3.0、4.0 的差别
2.struct vs class差别
3.如何做一个可回传Error的function
func numberToInt(number: Int) ->{...}
我回答用
func numberToInt(number: Int) -> (Int, Error){...}
但他期望的回答其实是用throws去丢出error
4. 如果一个.swift的class里面的function不想给其他人用要怎么做
A: 用private func
5. 请说明各个如private的权限跟名称
A:
open:所有人都可以使用+可以override
public:所有人都可使用(包括framework的部分)
internal:一般的情况
fileprivate: 一个file内两个class可互相使用
private: 只有自己class可以使用
6. 说明WebView有几种以及他的差别
7. 请说明什么状况会造成reference循环?
A: 当a,b互相delegate对方时,就算a release掉还是会存在在内存中,必须两人都
release掉才行
a.delegate = b
b.delegate = a
8.请说明tableview的cell是什么机制
9.知道cell 会把前一个cell收回来,下一个cell需要时再拿出来用的情况下,一cell上有
switch button,要如何把他Off掉
10.如果已经有一长方型的长、宽,要如何宣告一个面积并且取得他的面积
A:
let length: Int?
let width: Int?
var area: Int? { return length * width }
11.是否有解过XML的档
12.是否有用过JSONDecoder?他跟SwiftyJSON的差别?
13.知道SwiftyJSON如果JSON data没有值会给一个default value,那工程师要如何检查这部
分?
14.如何进行错误处理
A:
do {
try ...
} catch {
}
之后有想起来其他面试题目会再补上
除了考这些外他人也很好,我不太知道的东西他也都会帮我补充,像他们做电子书的App
,阅读的view其实是WebView我有点吓到,一直以来对WebView的印象都是104或是PCHome
那种做的不好看直接把往夜搬过来App使用的那种。公司有在跑Scrum,每天一早先开会讲
三件事情:今天工作进度、昨天进度回报、昨天遇到的问题,每周五会有App team的code
review约2hrs,iOS目前只有一人(就那个面试我的工程师),原本是Obj-C混Swift,现在
想全部改成Swift,原本MVC架构也正在改成MVVM或MVPM的架构,iOS 预计年前会改版。版
本控制的部分是用git,主管有叫我回去看一下git flow如何多人控管专案。
结果: 刚刚收到二面的通知,将跟人资与CEO面谈
这家公司感觉非人不错,虽然iOS team只有一人,技术主管说他有空也会下来帮忙XD,
但感觉这个人真得非常厉害,整个App team也满不错的,也是进来可以学到很
多的一间公司。
有些题目有写上一些解答,如果答案有误也麻烦大大们指正。
以上,如果有任何问题欢迎写出来,我有办法回答就尽量回答,谢谢大家~
作者: siriusu (かがみは俺の嫁。)   2018-01-17 12:16:00
作者: Deltaguita (伯利兹)   2018-01-17 12:24:00
认真写心得,给推
作者: s931117 (悄然)   2018-01-17 12:25:00
作者: Argos (Big doge is watching u)   2018-01-17 12:42:00
作者: d1288999 (Davis)   2018-01-17 13:07:00
感谢分享
作者: skitty (aki)   2018-01-17 13:12:00
认真推
作者: srxrrr (干!我是肌董)   2018-01-17 13:16:00
推分享!!
作者: Raymond0710 (雷门)   2018-01-17 13:45:00
作者: jeff12280 (猜不透平常心)   2018-01-17 14:01:00
谢谢分享
作者: KernelChen ( )   2018-01-17 15:08:00
推推
作者: JameC (智取其乳)   2018-01-17 15:13:00
好详细,推
作者: yuanruo (罪を憎んで人を憎まず)   2018-01-17 15:45:00
群传媒怎么跟我面时差那么多 我面了四小时多XD
作者: olen0622 (hong)   2018-01-17 16:17:00
玉山有第二次就是录取了
作者: bbonline229 (bbonline229)   2018-01-17 16:44:00
谢谢分享
作者: sjwdwaymon (玉米)   2018-01-17 17:19:00
作者: loxyz (loxyz)   2018-01-17 18:20:00
作者: yeh0416 (东哥)   2018-01-17 19:23:00
高山学长学弟制 早上都会放行歌
作者: VisualStudio (2015)   2018-01-17 19:41:00
作者: clamperni (肥宅牛牛)   2018-01-17 19:54:00
^_^
作者: lk2986706we   2018-01-17 21:02:00
推 很棒的分享
作者: ID3238 (默默)   2018-01-17 23:15:00
好文推推
作者: nba1895   2018-01-18 09:21:00
作者: ArNan   2018-01-18 10:26:00
很有帮助
作者: async (异步)   2018-01-18 16:29:00
推分享
作者: pig0038 (颗颗)   2018-01-18 18:34:00
玉山RD不用穿西装,有统一的Polo衫,简称猫猫装,二面没记错是跟技术长面谈^考完笔试
作者: XJY13 (You'll never walk alone)   2018-01-18 20:20:00
作者: t7552175 (上官烈云)   2018-01-18 23:51:00
作者: nofeel0 (\Bjergsen最高/)   2018-01-19 01:20:00
认识学长推
作者: kw81634dr (tails34)   2018-01-20 02:23:00
作者: greenstar27 (star)   2018-01-22 09:23:00
作者: icerush (No 哥)   2018-01-23 22:59:00
推 谢谢分享

Links booklink

Contact Us: admin [ a t ] ucptt.com