初级级工程师要求:(主要要求会用)
1、精通Objective-C语言基础:能够熟练并正确的使用oc的分类、扩展、kvo、kvc
2、精通UIKit等Cocoa Framework:能够熟练的自定义控件
3、熟悉网络通信机制及常用数据传输协议:协议理解(包括http、https、常用的加密算法)、数据解析
4、具备主流开源框架的使用经验
中级工程师要求:(停留在为什么这样用的层面)
1、扎实的编程、数据结构、算法基础
2、深入理解OC语言机制、内存管理、网络、多线程、GUI:runtime是oc的基石、runloop、gcd等
3、精通常用设计模式、框架、架构:便于维护大公司的现有模式
4、良好的分析、解决问题的能力
高级工程师要求:(要求能创造性的提供解决方案)
1、解决研发过程中的关键问题和技术难题
2、调优设备流量、性能、电量等:如美团外卖需要实时刷新送单员的地理位置信息,对耗电量要求很严格
3、较强的软件设计能力
4、对iOS内部原理有深刻了解
资深工程师要求:
1、精通高性能编程及性能调优:如对fit流处理时要考虑到性能问题
2、灵活运用数据结构、算法解决复杂程序设计问题
3、提供性能优化、日志搜集、统计分析等方案:这也是架构师的要求
4、架构、模块设计