从两次电话面试谈谈自己的不足

这两周一共参加了两家公司的电话面试,结果都不尽人意,面试过后仔细回想感觉面试官的问题其实都不是很难,主要还是自己的基础知识不够扎实,而且比较紧张,所以很多明明会的东西都回答得奇烂。虽然最后很遗憾,但是过程收获到的东西还是很有价值的。

第一家公司的电话来得特别突然,所以我完全是以一种一脸蒙蔽的状态和面试官聊了10来分钟。面试官其实也没怎么问,主要聊了下我现在的iOS水平,View和对象的生命周期,一些Alamofire的使用方法以及对他们公司的看法。我就栽在了我的iOS水平上。其实这个问题很好回答,而且我在自己的简历上也已经写得十分详细了,可能是面试官觉得让我再复述一遍更靠谱一些吧。我一瞬间大脑一片空白,不知从何说起,最后只说清楚了一些构造界面的东西,其他的都没说……人家怎么可能招一个只会构造界面的程序员了呢,所以我自然而然的就直接GG了……

关于技能水平,我的总结如下:
1.熟悉iOS基本UI控件的使用;
2.能够使用storyboard和nib进行基本界面的构建,并且使用AutoLayout进行自动布局;
3.能够使用归档,数据库和UserDefaults实现数据持久化,CoreData了解一些;
4.能够实现一些简单的动画(结合项目);
5.能够使用CoreLocation实现定位及地理位置反编码;
6.MapVIew的简单使用;
7.能够使用URLSession和Alamofire实现简单的网络操作,多是download和get;
8.能够实现本地推送;
9.了解MVC设计模式和delegate委托设计模式;
10.了解iOS的内存管理机制;
11.了解GCD在iOS多任务处理时的使用;
12.了解iOS APP的生命周期;
13.简单了解iOS的响应链机制;
14.主要使用CocoaPods导入及管理第三方库;

就这么一说,然后面试官就可以进行下一步的提问了,你啥都不说,那面试官也很尴尬,只能随便问问,面试也就黄了。

第二次的电话面试是一家初创公司,依然是因为第一个问题回答的不好所以直接GG,也没有聊很多。面试官主要让我简单谈一下上架的那款APP,然后问了问有没有用过百度或高德的SDK,有没有用过第三方推送,最后问了类和结构体的区别,然后就没有然后了……这次主要还是因为我准备不充分直接导致了后来双方的尴尬。那几天我刚好在看网络和定位相关的东西,APP上架后20来天就没怎么管,偏偏面试官问到了,只好硬着头皮强行回忆,本来是想从MVC模式开始讲,然后介绍功能,最后介绍功能对应的知识点,结果在Model那里就炸了。可能是太紧张,我竟然跟面试官说起了我的数据模型的构建(这个类XXX……那个类XXX……),而且数据模型的结构还讲错了,最后啥都没说清楚自己就不说了……说实话,就我那种叙述,面试官真的没办法继续问下去,然后就是剩下的问题,基本上就是走了个过场,虽然我觉得自己类和结构体那块儿答得还行,但无奈第一道至关重要的问题直接让面试官打消了要我的念头。在技术面试时,自己做过的东西一定要非常清楚,而我只顾着学习新的东西而忽略了自己的作品,这是一个严重的失误!

我的这个作品其实很简单,就是一个记事待办类的应用,下面我从高到低总结一下这个作品:

1.该APP使用MVC设计模式构建,其中View通过Storyboard构建,多机型View适配使用了AutoLayout;
2.APP包括5个核心界面,分别是计划类别页面、增加类别页面、计划详情页面、增加/编辑计划页面、侧滑页面;
3.不同的Controller之间的正向传值使用属性传值,逆向传值使用delegate委托传值;
4.数据持久化使用归档;
5.增加或更新计划时展示一个hudView用于提升用户体验,本质上就是在当前View上增加一个View并重绘,hudView显示时增加一个0.6秒的延迟用来展示给用户,延迟通过GCD的主队列延迟方法实现;
6.详细计划cell点击会弹出一个计划详情的View,这个View是写在另一个Controller中的,使用了Controller之间的自定义转场,增加了弹入弹出动画并重绘了背景View;
7.本地通知使用iOS10最新的通知框架;
8.侧滑界面使用了一个第三方库实现,在侧滑界面使用CoreLocation实现定位和地理位置反编码,再通过URLSession从网络获取天气数据;
9.快速计划本身就是一个类别,内容就是详细计划,实现类似;
10.时间线、重要计划就是读取数据后对所有数据做一个循环,根据属性判断是否需要,然后展示在界面上。

其实理清思路后基本上就是这么多,可能确实是当时太过紧张加上有些时间没看,不知道该怎么说,很可惜。

实习还没找到,同志仍需继续努力。

加油吧。

你可能感兴趣的:(从两次电话面试谈谈自己的不足)