楼主: Deutsch4

如何面试 iOS 工程师?

[复制链接]
a104048 该用户已被删除
11#
发表于 2011-4-21 16:32 | 只看该作者
不能抱着吃快餐招现成的形态。想想iOS才几年。
我招聘,都是先看人、再看是不是比我聪明:)
iOS上手很容易。


使用道具 举报

回复
008120 该用户已被删除
12#
发表于 2011-4-21 17:28 | 只看该作者
在这边真是个好的体验,能和这么多工程师一起来讨论问题,如何面ios工程师,这涉及到比较多的问题。我觉得首要是要有经验,要有完整项目开发流程的经验。只有在做过的程序中,你才能学到如何更好的开发程序,在做的过程中会遇到很多奇怪的问题。要问应试者你是怎么管理你整个程序的内存的,和性能的,要用最优的代码来实现所需要的功能。还有一个是就是已经有大拿说过的调试能力。我是来抛砖的!!


使用道具 举报

回复
hollyhock13 该用户已被删除
13#
发表于 2011-4-25 14:01 | 只看该作者
楼上有好多同学的回答呀!
我个人的回答:
1、对objective-c做一个比较深入的复习,语言本身是最重要的;
2、带点idea过来。
哈哈


使用道具 举报

回复
lyj48652003 该用户已被删除
14#
发表于 2011-4-26 12:06 | 只看该作者
除去所有开发工程师的共性,纯技术层面上:
1 Cocoa基础知识。
2 ObjC语言方面:ObjC的语言特性,SDK,开发工具,running-time 。
3 面向对象,特别是ObjC的面向对象。软件架构经验。
4 iPhone程序的运行环境,程序架构,开发者计划等等。
上面这些都是基础,应该涵盖了所有iOS开发技术。在此基础上,各个方面越深入越好。
当然,动手coding能力是必须的。


使用道具 举报

回复
cy2413 该用户已被删除
15#
发表于 2011-4-29 21:12 | 只看该作者
可能问的比较有针对性 基础就好 我举几个例子

1.在ios开发中一个hello world是怎么做的 如果面试者没有答出来怎么装到手机上觉得就是不合格

2.内存管理原理 要问得很深刻 比如 ios 中retain release 都做了什么 自动释放池都做了什么 什么时候自动释放池也会产生内存泄漏

3.o-c如何实现多态性 协议到底是什么和 c++多继承区别

4.使用快捷键和SVN的配置和使用 代码结构 设计模式MVC理解 这个也是为了保证团队合作和开发的效率必要因素

5.调试技巧 如果做性能测试

6.网络传输协议.解XML 等等基础问题

7.平时看什么技术书

对于产品

有没有行业认知 对现在的项目是否认可 能否给出一个好的路线 还有就是需要团队的支持方怎么支持你的工作

我个人觉得 面试也是一个交流 也是提高自己也是面试自己


使用道具 举报

回复
tao_yang 该用户已被删除
16#
发表于 2011-8-15 18:16 | 只看该作者
其实一个好的开发者有自己的想法才是最重要的,只要有了想法和动力,那么才会保持对自己选择的工作的一分热忱,才会在成长道路上劈荆斩棘,不断提升自己的能力


使用道具 举报

回复
落羽MM 该用户已被删除
17#
发表于 2011-9-15 21:22 | 只看该作者
1面问技术基本功(电面)
2面现场coding
3面谈薪水待遇(小公司可在2面做)


使用道具 举报

回复
chri37 该用户已被删除
18#
发表于 2012-11-26 20:32 | 只看该作者
我会从以下几个小方面去面试:
1.通用编程技能,例如:一道小算法,数据结构的实现方式,网络,多线程。
2.开发语言,例如:语言特性,重新实现语言提供的功能,是否深入研究过这门语言的某部分。
3.开发平台,例如:该平台的内部消息,内存,线程等机制。
4.工具,例如:调试技巧,是否熟练使用,代码管理工具,项目管理工具,效率工具。
5.行业视角,例如:用什么,知道什么。
6.其他能力,例如:网络上解决问题的能力,是否有持续学习的意识。

有经验的,1-6都会问到,刚毕业的,只要重点面1和6


使用道具 举报

回复
xianrongshiwuli 该用户已被删除
19#
发表于 2013-7-5 14:42 | 只看该作者
我来说说看吧,对于有经验的开发者来说:我觉得有几点比较重要的,
1、对objc的语言的了解,如语言特性 ;实现多线程的几种方式,run loop,runtime,动态语言, 等等
2、对UIKit框架的了解,因为ios很多时候是用现成的控件,可以说说tableView的使用经验(要想精通UIKit不花时间是不可能的)不要都精通, 但几个用的平凡的东东你得熟悉吧,
3、网络,这块用的很多,只会用ASI是不够的,什么是http,什么是SOAP,什么REST,异步,同步区别,深入的还涉及到网络加密,数据缓存等等,这块水很深
4、多线程技术,这块也蛮深,最起码你得会用,GCD,操作队列,直接用Thread还是比较少,但你也的会
5、代码调试能力,这个是积累出来的,也要时间,其实很多 开发者都缺少对 instrument的使用掌握,这点其实也很重要,有好工具你也得会用啊。


使用道具 举报

回复
zhangq868 该用户已被删除
20#
发表于 2013-11-5 12:52 | 只看该作者
首先,我的观点并不代表美团iOS 团队的面试官们的看法, 只是我自己对于iOS 工程师的一些看法。
个人觉得,一个合格的iOS 开发至少具备如下能力:

编程能力
1. 熟悉Objective-C 开发语言,至少要知道Objective-C 的动态特性,Runtime吧。开发App的过程中难免用到的。MRC 和 ARC 的区别。
2. 至少要知道Cocoa框架中的Foundation(特别是其中的NSURLConnection), UIKit,CoreGraphic/QuartzCore, CoreData

代码设计能力
Cocoa的一些设计模式

产品相关的能力
1. 能够理解你的商业模式
2. 会拆解需求
3. 不鄙视产品经理


使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表