蘑菇街实习感悟

前言

从5.23 ~ 8.13(中间回去考试10天)历时2个多月的杭州实习,对从没有在外省生活那么长时间的自己确实是一次不可思议的有趣经历。为了不让远离家乡、暂无定居的自己感到太大的孤单,为自己安排了很多事情,趁着最近刚好进行实习后期总结,也记录下这次的‘夏日探险’。

吃住行

虽然没有完全经济独立,但是绝大部分的生活还是靠自己的实习工资支撑。为了能挤出钱来做自己想做的事情,选择了火车🚆和住青旅。火车也试过好几次硬座,还是硬卧比较舒服,摇摇晃晃,一首 火车驶向云外,梦安魂与九霄 很是应景。

青旅在杭州也不算便宜,但却是最省事的:不用关注水电、租金、卫生;房客也是和我一样的长住生。唯二不太喜欢的就是公用厕所和白天不开空调(炒鸡闷热)。By the way,都是能够忍受的~

自律

不得不说,这次实习最大的收获应该就是 自律。不是简单地两点一线,而是更严格地要求自己。

每天早起一小时,就可以有多一个小时的时间对实习工作进行总结、深入学习;白天的学习可比晚上的要有效率多了,不得不说白天的工作还是蛮耗精力滴,下班后只想让自己放松紧张的头脑和紧绷的肌肉。

晚上进行1个半小时左右的健身和拉伸,一周保底5次。虽然是青旅,但是房间空间还蛮大的,运动也不会很大幅度,主要是b站的塑性运动,拉伸完后整个人神清气爽,仿佛得到了升华,这大概就是平凡中的小幸福了吧。

周末如果有学习任务,会选择泡馆,杭州图书馆蛮大蛮舒服,大家都齐刷刷地沉浸在自己的学习世界里,成为里面的一份子也会收获到小快乐;或者出去旅游,背上书包:在市内探索、在武汉探索、在东极岛探索、在上海探索、在苏州探索…旅游途中的风景不同于以往生活所固在的地方,很新奇很新鲜,探索的乐趣实在太迷人了,不管是和盆友们还是自己,都想永远在路上。

工作

这两个多月的工作主要围绕:

  • 线上Bug:诸如容错、控制台报错、打点、优化…
  • 独立页面的开发:h5评价页面、头条小程序收藏页面

虽说每个需求看起来还挺小的,但是在实际开发中,因项目中使用的是公司自己的轮子、自己的组件,有自己的一套发布系统。每个项目run的流程,发布的流程不一样,所以每次接到一个小需求就得重新熟悉对应的(h5、pc、各种小程序…)开发流程、发布流程。不过经过项目的积累,以及自己总结,后面也逐渐掌握技巧,可以更快的投入需求开发中。

另外,在开发需求前还需要进行业务上的沟通:要了解业务是怎样的、站在自己的角度上思考需求是否合理、代码上能否方便实现、排期…当然这个沟通对象不只是和产品,还可能是后端、设计等参与到业务开发的小伙伴们。所以也有一部分时间花在这上面,但是这种时间是必须花费的,好的沟通能够大幅度提高开发的效率以及避免不必要的后续埋坑。

在开发中,因为很多时候都在别人的代码基础上进行填坑、优化,所以开发前需要整理代码的功能框架:知道整个项目框架是如何的、哪个页面对应哪个Html、自己需要在哪个地方进行开发…有一个清晰的思路,并且做好项目文档,沉淀,方便后续能够更快地投入开发。

在前辈代码上开发,有利有弊,弊是得从头梳理代码,假如对方的代码很复杂或者个人风格十分强烈,对自己的阅读及开发是会造成很大阻拦的。利是可以学习到好的代码规范、简单的代码写法,如遇到自己从未试过的写法const {MWP} = M; 需要去了解里面的原理,而不是只知道可以这么写,而是要知道为什么可以这么写。

自我评价

  • 业务能力不错,可以较快的完成业务,保质保量,且进行风险评估减低线上bug出现的可能性。

  • 自律。提前一小时到公司,进行对之前自己遇到的一些问题解惑以及对学到的东西总结。晚上健身拉伸,做手账(主要是工作上或学习上的点,好看的手账在以后的翻阅中比日报看起来舒服多了,也很有成就感~)

  • 小笔记:当天遇到啥任务或者学习了啥都会写在小本本上,这是之前就养成的习惯(因为有时事情多了,心情不好了,老忘事;也方便查阅)小笔记也在现在的日报中发挥了重要作用~

  • 好问。经常会有不懂的地方,比如模板管理平台,git rebase/merge区别,dns裁剪等等项目中遇到的问题,虽然以前略有所闻,但是实际开发中一使用就想不通了,当然是查阅了资料带着疑惑问问题,也超级感谢各种学长学姐耐心为我答疑,收获很多~

  • 喜欢思考。最近看到克瑞的fan组件,觉得还蛮厉害的,在重复工作中,总结整理出一套可以减轻自己重复工作提高效率的组件,也方便大家的工作,这样对团队工作做出贡献的工作者实在太棒了,希望自己以后也能在工作中可以有所贡献,或技术或内容。

成长与收获

  • 技术
    • React、Vue
    • 微信/头条/百度小程序
    • Linux命令
    • Es6
    • Git(多人合作)
  • 项目
    • 编码规范
      • 按照公司规定的编码规范书写,改正自己之前不良的编码规范,好的编码风格可以很方便后续伙伴们的交接;自己也总结出一套比较优雅的编码规范,但实际开发中,如果是在前人代码上改或者与他人合作,还是需要统一编码规范的。
    • 合理排期
      • 留出buffer,因为实际开发过程中会有很多其他的事情:比如线上紧急bugger需要处理,其他活动要求等,打碎自己的开发时间。在排期时,需要充分留出缓冲的时间。想起老大说,排期也是一种能力,尽管你最终可以完成业务需求,但是延期了,就是能力不足的表现。
    • 注意兜底/容错
      • 发现很多线上问题,都是之前没有考虑到容错。比如传过来是空数组或者undefined,没有做一个容错,就很可能页面崩了。
    • 风险评估
      • 及时向项目负责人抛出风险,降低后续开发时踩坑的可能性。
  • 好习惯
    • 开发前熟悉业务、代码、开发流程
      • 提高效率
    • 开发时,整理并总结出项目文档,技术难题
      • 沉淀

不足与改进

  • 表达需要更清晰
  • 业务沟通需更加重视
    • 前端工作不能只是负责好自己那块就好了,要时时跟进,主动跟进,比如后端接口,产品对接…都需要自己一步步跟进,落实。(ps:大家都挺忙的,一不留神就有可能把自己给忘了…要鼓起勇气跟进!)
  • 要更关注底层原理
    • 开发时偶尔遇到一些问题,查了很久才发现原来只是一个技术底层的问题,需要了解它背后的原理,做好记录,提高开发的效率。

未来期望

  • 业务拓展,主动接触团队中的其他业务
    • 如果有需求就可以尽快投入开发当中啦。
  • 主动了解所使用的组件原理(不做无脑伸手党)
    • 在使用过程中遇到问题时,思考是组件本身的问题,还是自己代码的问题,不要一碰到问题就去问组件开发维护者。
  • 对团队工作有所贡献(组件、优秀代码…)
  • 不局限前端(感受技术的乐趣)