自去年7月底进入阿里工作,至此快满一年了,再也不能随便犯错、说自己是啥也不懂可以被原谅的小新手了,成长是必须的,心态、生活价值观也发生了不小的变化……
工作方面的成长主要是两个方面,技术的提高毋庸置疑,学校那些缺乏生产环境和实际价值的小项目只能让我们熟练基础语法、编程环境和流行框架的使用(这些基础真的非常重要),落实到实际工作中就有一堆需要考量的因素和抉择衡量。比如一开始我对发布没有很强的概念,以为本地测试OK发布到线上也一定是OK的,直到第一次随意发布后各种问题纷至沓来,直接导致管理后台不可用的地步(还好没把客户端搞挂),PD运营纷纷牢骚满满,让我压力山大重新重视发布这件事。当时代码写的糊里糊涂,只关注功能实现,忽略了很多其它重要的东西,现在回头看看有些真的惨不忍睹。从最初只关注功能到后来关注架构设计关注扩展性灵活性可动态配置再到关注性能,还有同一个功能不同实现方案的抉择和考量点,真的是一步一个脚印。第一次失败的发布让我总结了好几点经验:
- 程序健壮性非常重要,万恶的NullPonterException真的是日常开发最多的线上bug原因,还有调用别人的服务时记得try-catch,不要指望别人提供零bug的服务
- 系统的兼容性太重要了,当重构一个模块至少要做好两件事:一是兼容老的线上接口,兼顾不肯升级版本的老客户;二是修正数据时保证数据的一致性,不要这里改了与它关联的地方忘记改
- 本地测试与线上测试不一样,不同的数据可能会暴露出不同的bug,线上发布要慎重再慎重
- 时刻注意代码规范的重要性,重构长方法、一个好的命名、一句恰到好处的注释,还有注意框架设计原则,比如在spring mvc使用中,Controller层不应该出现Service层的代码,Controller层应该只负责数据的获取和页面的跳转控制,具体的逻辑实现封装到service层中,理解原理很重要
- 出现严重的线上bug第一时间想的应该是回滚而不是焦急慌乱的找bug,不可用的功能不要让用户看到。还有排查问题定位问题的能力太重要了,平时多总结经验,查起来才会有步可循
- 设计固然重要,但有时候会因为项目赶工时间明显不足而宁愿选择一个相对不那么灵活的设计,等二期再相应的重构优化,这就是抉择与代价,学会衡量
工作上的成长除了技术还有沟通交流技巧,与PD运营谈需求、与业务方评估时间、跨团队合作等等都需要一定的沟通,要学会沉住气、不要随便展示暴脾气(要么忍要么滚真是至理名言),难沟通不好合作绝对会是你职业生涯的一道大坎(不过也有例外,后面文章分析人物时会说到),对不合理的需求敢于质疑而不要被他们牵着鼻子走没有自己的想法,比如PD丢过来一个无足轻重的小需求你不想做,OK完全没问题,只要你能找到一个更有价值的idea并以合适的态度说服PD让他很开心的收回自己的小需求还给你留足时间做你真正想做的事情。太难?哈哈,我也觉得难也一直没做好,甚至给某些人说话直接不好沟通的印象,已埋下的大坎日后只能加倍努力慢慢挖掉。难才具有挑战性,身边有不少做的很好的人,多向他们学习。个人感觉在阿里软实力属于锦上添花,会加快你的晋升速度,不过前提永远最重要,就是你必须技术过硬、行动力够强、结果够看,因此类似樊胜美这种办公室油子在阿里同样不会有好的职业前景。人际交流也许是像我这种内向性格永远的心头坎,平时沟通多similing、态度好点、不发脾气是我现阶段追求的了。
成长是每个新手都有的,但成长又并不是一直随时间成线性增长的,很多人都是越来越平缓的曲线,直至不动的水平线,这个时候你就可以卷铺盖滚了,哈哈,开个玩笑莫怪。不过确实,工作,工作,工作永远不可能是一帆风顺的,找不到存在感是螺丝钉们共同的伤,感觉自己像打杂的,跟在师兄师姐屁股后面帮忙打杂,什么订正数据、帮运营导统计数据、写后台非关键页面、接业务方的小需求、一些后台体验优化和一些历史遗留bugfixed等等,一方面没有什么技术含量自己得不到提升,另一方面做完了带来的价值也不大,至此我还没有完全独立负责一块业务,没有当过PM,上面一直有个师兄在压着,即使从头到尾我一人负责的系统,出现问题PD运营通常都不会第一时间找我,他们觉得我作为一个新人定位问题解决问题的能力很弱,不太值得信任,这种落差很让人心寒。当然存在感是自己争取的,自怨自艾抱怨诉苦最让人鄙视,发生这样的情形绝对不是因为你是新人所以才丢给你一堆杂事,一定是因为你没有证明自己的价值、没有过硬的技术让老板认为你完全可以独立设计系统负责各种业务,他们并不是没有给过我机会证明技术实力,只是我每次都因为懒巧妙的躲开了(衰),so为了更好的发展,这样的我们可以通过下面几点来改善局面:
- 平时多看产品数据学会分析,也许能激发自己的idea,同样要多体验同类产品学会竞品分析,踩着别人的肩膀想idea更容易点,有了好idea加上合适的说辞也许就能挡掉一部分不想做的杂事
- 即使丢过来必做的杂事,也不要随便随便做做只求实现功能,要追求做到极致做到无可挑剔,形成好口碑还怕老板不给你重要的活嘛,啥都是自己争取的
- 多分析产品性能,看到性能瓶颈点要主动分析排查想改善方案,多线程并发、加缓存、优化执行sql等等,想提升技术就得自己先挖掘出有技术难度的事情做,执行力一定要强
……
However,除了工作上的成长和不足外,当然也有其它的一些变化,我简单总结为以下几点:
- 不爱看书和写博客了。上班之后惰性不知不觉已经侵蚀了整个大脑,那个以前喜欢读书喜欢写写画画的女孩子不见了,下班之后、周末之余除了出去耍就是宅在家里听歌看视频,因为这些事情都是不费脑的,躲在自己的舒适区死活不肯出来,有种自己大脑正在逐渐退化萎缩的感觉。非常可怕,现在已经在逐步改善这一点。
- 特别喜欢到处旅行、不再死宅, 总觉得看的地方越多你的视野越宽,心态也会越阔达,人也会变得自信起来。
- 思想变成熟了,很多事情比以前看得开,一开始,每隔两天就有跟人撕逼的冲动,每隔一周就有愤然离职的冲动,俨然一种小愤青的姿态。与人相处遇到遇到不淑之人,会各种绝望无法理解无法接受,心理得不到平衡无法释怀,俨然一种悲情女的模样,十分丑陋。后来,渐渐的、慢慢的想通了,越来越深刻的意识到每个人的处事方式、做事行为、性格很多都与他们以前的遭遇有关,谁都有自己的故事,学会释然。至目前,心态已经好太多,生活完全是由自己的思想来诠释的。
- 生活品质也有所提升,这是毋庸置疑的,相信每个工作后的人有了自己的经济基础,自己的生活条件也会越来越好。当然生活条件只是一部分,更重要的是生活方式,没事出去逛街、泡书吧、看戏看展览、学画画、出去旅游,都是提升自己的一小步。
执行力,执行力,执行力,祝大家周末动起来,周末愉快!!!