再见的是过去、期待的是未来

仅仅是一堆口水话。

一、开篇

刚刚看了几篇关于 2018年终总结 的文章,自己也想使用这样的方式给曾经的自己告个别。通过自己的标题也能看出来:过去、不针对2018,未来、不针对2019。
虽然不针对2018、毕竟今天是2018年的最后一天,那就从2018说起吧。

二、我的2018 && 开启新工作

于 2018年3月5日入职现在的公司,这是一个上市公司啊,与之前的公司比起来,差距确实是相当大的。这是我的第一次跳槽,也就是我的第二份工作。更特别的是,我是裸辞的,现在想想自己真的是太年轻了。

在这一年我主要做了这些事情:

  • 1.适应新工作、开始了不一样的工作方式、融入了不同于之前层次的技术团队。
  • 2.除了工作、自己也新学习了很多的东西。比如进一步的学习了 iOS 中比较底层的一些原理,对很多本质性的东西有了一个深入的了解,比如 NSRunloop,KVO,KVC,autorelease,Block、更重要的是知道了怎么分析源代码。
  • 3.逆向相关的学习、对于这一部分,确实是花了不少的 time。虽然没有多大的成果,虽然现在也忘记了很多。但是在学习过程中的收获,是不可小视的。如果不去了解这些、一般很少有机会去研究 Mach-O 文件,也不会闲着去把已经发布的 ipa 弄下来重新一步一步的重新签名再打包(当然这些步骤后来发现已经有成熟的工具MonkeyApp)。
  • 4.以及其它的脚本语言,比如 JS、Python 以及 Shell。
  • 5.自己的简书,由几十个点赞,增加到现在的近600个赞,算是一个小小的收获吧。
  • ...

其实、这些主要也是得力于现在工作时间的规范化。更重要的是,差不多忘记了加班为何物,到现在为此就 勉为其难 的加过一天。

三、曾经的曾经

借此机会、想把自己的所有工作经验都梳理一遍,那就从第一份工作的入职开始吧。

3.1 大学毕业的我就要入职了

其实是准备大学毕业搞嵌入式的,也已经找到了一个嵌入式的工作了。突然的一个机会,又有了一个面试机会。突然一听是 iOS 的,没有听说过啊,好像与 C 语言有关,那就试试呗。歪打正着,上午面试、下午就收到了通知。好吧、这么快,那就试试吧,正好大学毕业,换个心情,做一个自己从来没有接触过的东西。
入职第一天 发现不对啊、不是说是搞 iOS 么,怎么让弄数据库呢,SQL 语句之类的?第二天问了一下#姐。捣腾了一下,果真被 自动 转了,并不是 iOS 的工作。然后我工作中的第一个选择来了,领导给我两个选择:

  • 1、先做着数据库相关的工作,在工作的过程中自学 iOS,iOS 学成之后再转 iOS 部门。
  • 2、重新到 iOS 部门重新面试。

果断选择了第二个方案。已经沟通好的,我只会 C 语言与 C++相关的 MFC,所以面试的第一阶段,面试官就主要从这两方面入手了。第二阶段就很厉害了,直接给我一本 iOS 入门书,看完前三章后,下午去找他。最终的结果肯定是通过了,通过之后第一次使用 Mac 电脑,第一次电脑的关机都是在同事的协助下完成的。就这样,我自学 OC 的故事就开始了。

2014年6月份,大学也毕业了,拿到毕业证,立即就转正了。自己在公司的自学也差不多了,陆陆续续的开始改 BUG 了。
约2014年9月份,有新项目了,我也有了自己负责的模块。在这个时间段,大家应该都知道各种设备的适配已经显得很关键了。对于 UI 界面,如果不使用自动布局的话,那是很难搞的了。但是我就不一样了,因为我根本就不知道什么是自动布局,也没有时间去学习这个鬼东西。那么怎么办,只能 frame 了。看着别人快速的完成了他们的 UI 搭建,羡慕得五体投地,我只能。。。。。总之、最后我也没有落后,反正是完成了。值得庆祝的是,这个项目提交 App Store,正式上线之后,服务器立马就暂停使用了。
通过这个项目的开发之后,自己也算是真正的入 iOS 的门了。
还记得就在那年春节收假回到公司的那段时间,我每天几乎没有实际的工作任务,于是我又钻了一个空子,恶补了一下 iOS 相关的技术。大概持续了半个多月,公司的《香**空》项目的代码几乎被我看了个精光。看完之后,我就给自己重新定了一次位,我已经是一名老程序员了。

在这里,想插播一则广告:

在我的 iOS 成长的过程中,很多的时候都是通过网络上的一些视频进行自学的。其实更多的是通过研究小伙伴们的代码,值得一提的是研究小伙伴们的代码,因为这个习惯现在还都有。一方面是去学习优秀的代码,另一方面也好奇**的技术,这也是一种隐形的技术交流吧。

3.2 我也成为一名 iOS 讲师

这一部分,我会介绍的很详细,因为这个阶段对我的影响,可以说是最大的。

其实,这是一个偶然,也是一个必然。说是偶然、确实是一个偶然,说是必然、我只是想抬举一下自己罢了。总之2015年7月份,我成为了一名 iOS 培训讲师。这样的工作大概持续了不到2个月的时间,但是对于我来说肯定是非同一般的。至少在技术的提升这一块,可以说是一个巨大的转折点。在那一段日子里,我每天大概是这样度过的:

  • 1、早上很早就到公司了(住宿到公司也就10分钟的路程),我为什么要去这么早,其实我也不想。但是去培训的都是还未毕业的学生,他们特别的积极。没有办法只能我尽量提前到公司开门,主要目的也是提前 偷偷 的去 备课
  • 2、那时候我的实际工作是:上午做培训、下午回到工位项目开发。这种情况下,在下午的时候,还会收到学员的各种提问。这里就很关键了,我如何回答他们的提问呢???那些学员都是软件学院选拔出来的优秀生啊,所以他们提出来的问题都非同小可。他们也深知我非常的忙,所以他们的提问也非常的有魔力。在这种情况下,我肯定不会全部都能回答,那时候我只有一年多一点点的开发经验啊。但是为了不毁灭我在他们心目中 德高望重 的形象,只能所有问题都装作都明白。如果真的不知道的,就让他们 “再思考思考” ,稍后再告诉他们。在这里,应该很多小伙伴都明白,我接下来会做什么了吧,我肯定也会拼命的寻找问题的答案呐。。。。。
  • 3、在上面已经提到:上午做培训、下午回到工位项目开发。那我晚上干什么?那肯定是加班啊,那时候我已经开始独立开发了,除了自己独立开发的 iPad 项目,还在维护其它子公司的很老很老的项目,不仅在维护,还有新功能在开发。但是在那一段时间,即使再忙,我加班最多到十点半,我必须要回去了。那我回去之后是干什么呢?肯定不是睡觉了,我第二天有一个上午的培训时间,我肯定要备课。应该如何备课呢?我找了一个简便方法,幸好无意中弄到一个 *M 的一个视频。于是每次回去偷偷的看视频,将第二天要上课的内容快速的看一遍。每次看完,差不多已经凌晨1点多了。
  • 4、所以回到第一条说到的,早上为什么那么早的到公司。到公司的第一件事就是回忆昨晚看视频的内容,快速的梳理一遍,发现有忘记的就赶紧再看一遍。所以到真正开始上课的时候,我只有两个东西:一台电脑与一页教案(简单的几句话而已)。所以整个上课的过程就是一边敲代码,一边讲课。
  • 5、我是如何保证上课的质量的?其实从上面也可以看出来,我是有准备的:晚上偷偷的看视频,早上回忆出教案。这些过程都是偷偷的,不应该让别人知道,大家应该明白具体的原因。
  • 6、其次,认识我的小伙伴估计都会感觉很搞笑,我尽然能讲课,别人能听清楚么?其实我的普通话很普通,这个我是很清楚的,因为在通知我去当讲师上课到第一次真正的到教室打开电脑真正的讲课,这个时间段,大概也就10分钟左右,也算是突然袭击(因为本来就不是安排我,也万万想不到会是我)。在这10分钟的过程中,我就在想:我说的话,他们能听懂么?于是我只能提高自己的嗓门,简单的上完了第一节课:《创建一个简单的 iOS 项目》(临时准备)。
  • 7、听说我被投诉了。后来我听说,我被其它公司的人投诉,主要原因是我在上课的时候声音太大,影响其它公司的同事上班,所以被投诉了。其实到现在我都不知道这件事情是不是真的,因为我从来没有收到过公司的提醒。这也可能是被公司的领导直接回绝了,为了不影响我,所以没有通知我。对于这件事情,其实我也感觉有同事在阴阳怪气的讨论我,主要是感觉我很张扬,上课有必要那么大的声音么?其实,我故意放开嗓门,在上面已经提到,一方面是因为我的普通话。大家应该知道,普通话不清楚的话,提高音量能提高清晰度。还有更主要的一个原因,提高音量避免我犯困!这个很关键。。。。。我每次上午上完课,下午开始写项目的时候,真的困得不行,但是也得装作很精神啊。如果我真的被投诉过,真的很感谢领导!

在上面的介绍中,主要是围绕我一天的工作做介绍的。其实那时候的我,真的也很累,但是对于我来说确实是一个难得的机会,所以我也想将其做得更好。其实从那时候的培训开始,我就开始在工作方面 自作主张 了,所有的课程安排,都必须按照我的来。其实他们提前也没有什么准备,所谓的课程安排,也就是一个简单的目录罢了。

本来想在这里的时候做一个小小的总结的,发现也没有什么需要总结的。总之,这个当讲师的过程中,让我学习到很多的东西。除了学员的那些莫名其妙的问题,更重要的是体会到不同人的思考方式不一样的。有几个场景,可以分享一下:

  • 1、有时候发现,某些人的思考一开始就是错误的,但是他们的思考方式是没有问题的。所以我就在默默的提醒自己,在技术领域不能太在乎结果。也许错误的思考方式,最终能引出一些未知的新技术点。
  • 2、不说话,不发问的人,不一定就是完全明白了。对于这个问题,我特意的做了一个调研。在培训快要结束的时候,我将16个培训的学员都问过一遍:对 Cell 的重用机制理解得怎么样?感觉自己掌握了百分之多少?回答都很乐观,后来出了一个题目:依稀还记得是一个在 Cell 中有几个控件,有的控件在某种条件下才会出现。最终的结果:能全部做对的,也就那么几个。其实这一点是很正常的,这是一个程序员的通病,这个病症叫自我感觉良好。实际情况,以代码的实际输出为准。

总之、对于技术这一块,不管处于一个什么样的地位,相互间的良好沟通是很重要的。

3.3 开始了我的管理之路

将时间轴拉到2016年,自己也算是老程序员中的老程序员了。也不清楚从是什么啥时候开始,我有了项目管理权限。你做 xx项目的 A模块,他做 B模块。就这样,依然是每天都像是打了鸡血一样的忙忙碌碌。现在想起来,那时候的项目真多啊、根本忙不过来。
自己开始招聘了,面试的人越来越多,心里越来越毛了。因为简历很强大,工作经验比我都丰富,但是。。。。。我的老大说了,这很正常,不合格就是不合格。。。。。最终、招到的几乎都是快要毕业的,或者刚学习结束的小伙伴。
是的,对于面试。对我的影响也是不小的,我唯一能与外面的世界沟通的渠道,就是面试了。通过面试,还真让我见识到很多的东西。
陆陆续续、到了2016年末,那时候算是 iOS 的鼎盛时期了,仅 iOS 开发的正式员工就有15个人。
在我的记忆中,我的2016年,在技术上没有太大的突破点,主要的原因是重复性的工作太多。其次也是因为忙忙碌碌,也不知道自己都忙了些什么。

3.4 部门经理的我

我记得大概是2016年的12月份吧,正式成为 iOS 的部门经理了。所以在2017年,我的身份就有点不一样了。但是我的工作没有多大的变化,除了电话会议多一点以外。 代码还是要敲的,每天1小时的代码还是要看的。 总之,在2017年的我,基本上大部分的技术都是按照我的思路来了。对于我自己的技术来说,基本上都是输出,几乎没有有输入了。当然了,并不是说自己已经停止了 iOS 的学习,只是相对来说木有那么大的动力了,或许是因为在那里的时间太长的缘故吧。于是突然有一天晚上,突然将自己的开发者账号,重新充值,立即修改自己账号的密码,在工作群中公布了自己的账号以及密码。因为那时候在团队中,除了我,只有另一个大哥知道具体的开发者账号的使用,我公布的目的就是,感兴趣的就使用我的账号学习,试一下如何使用证书,如何上传 ipa 文件,我也不希望我离开了之后,我带的团队没有人能操作开发者账号。
后来的后来,在2017年的12月份,我离职了。我的离职很搞笑,也很无奈。反正最终是裸辞的。

3.5 裸辞后的我

我把裸辞看得很简单的,是我太年轻了,对于这次裸辞,对我的影响还是挺大的,主要的原因是我太小看外面的世界了。我有一个更猖狂的想法是:过完年再好好的找工作。于是 “休息” 了一段时间。突然有一天意识到情况不太妙,开始写简历、开始找工作了。首先到北京面试了两家公司:MT 与 DD。我去,被打击得不行了。MT 还能面到二轮结束,在 DD 还没有到30分钟。后来又去了一趟杭州。于是开始紧张了,于是将我的简历的一个地方做了一下调整:将之前的职位由 部门经理 改成了 iOS 开发工程师。当然我的简历上的期望职位一直是 iOS 开发工程师

最终,进入了现在的公司。

自此、以上基本上都是自己的所有经历了。我的2018,在很大层面上看,仅仅是完成了自己的开发任务,然而并没有更多其它输出,这是我失败的地方。
其实很多的事情,本来就是世事难料,家事对我的影响也是一个关键点,2018年的下半年,父亲很多的时间都是在住院,然而我***。

四、未来的自己

写完这篇 Blog 之后,曾经的自己,以后不会再提及。
未来的自己是什么样,我也不知道,我也不喜欢有什么远大的理想。我的曾经、我的2018,都并不是我想要的,未来的路希望自己能走得更远,走得更好!

转载于:https://juejin.im/post/5c29c227f265da615304dbd4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值