总结2017,计划2018

这份总结来得有一点晚。年底写总结是朋友圈里一个比较常见的做法,为了回顾过去一年,计划新的一年,事业和生活都有所长进。

2017年整体来讲,过得不好不坏的。从以往的一个较为舒适的存储特性区域,进入到了另一个跟计算机打交道成份所有减少的区域,人整体是不舒适的,磨合比较大,干得结果也非自己所预期的。整年的总结按照常规的做法,先做一个整体回顾,再说说自己做的好的地方、不好的地方,最后对新年里做一个计划。

从1月份底搬座位到JH跟前,跟着他一起弄DFX方面的工作,学习了解了这方面的知识:Design For X; FMEA; FIT; 负向设计与正向设计; 面向故障设计, 等等。然后,自己又使用白盒的方式解决了一个版本内3个月无法解决的问题,汇报、总结;再对上半年的开发特性进行会议检视,记录了发现的许多共性问题以及程序员特有的思维缺陷; 再又自己做了一个不大的特性,上半年基本就这样过去了。

下半年的时候,上半年的版本问题始终清理不干净,整个版本一直延到了9月底,其间不停地进行攻关和解决遗留缺陷。虽然说有些下半年的开发特性提前就知道要做什么了,但始终无法集中投入,溢出来的事情终究只有加更多的班、晚上更晚地走、周末加更多的班来解决了,排挤了更多的正常上班时间,导致正常的事情无法做,一延再延,终究把下半年的开发时间挤压到了2周,所有问题也爆发了。就我自身而言,也深陷其中,没有谁能够逃离,其中不间断地攻关、加班解决问题。9月份做原型的时候,没有想全面,一部分问题遗留到了后面,开发也出风险;10月份的需求设计文档像往年一样,需要反复位会议讲给别人,反复反复地讲;11月份的开发相当紧张,花1周的时间写代码,得花2周多的时间进行测试和验证,仍然有问题遗留到了集成测试阶段。之后,就是不停地修复问题。期间遇到了几个线下、云上的现成问题,令人心惊胆战,现实与理想差距很大。软件开发不是想像得那样,有部分可能与事实有点脱节。

啰嗦这么多,回头看看,软件开发过程很难一帆风顺的,影响它的因素太多了。

对我自己而言,做的好的地方,或者说有所收获的方面有:

  1. 花30分钟搞清楚问题是什么,15分钟的时间怎么解决问题,15分钟的时间验证解决方法。 确切地讲,把问题弄清楚、讲明白,是做事情的第一步,也是很关键的一步。它包括了:这个问题是什么,描述清楚; 它的原因是什么,分析清楚; 它是不是主要矛盾; 解决它能够带来什么样的价值, 有什么好处。
  2. 负向的思维方式。 程序员的思维几乎全部是正向的:我的程序怎么会出问题呢?而恰恰相反,负向的思维方式是更重要的:这里可能有问题,如果出了问题我该怎么处理? 这一点突出地体现在了设计和编码两个阶段;
  3. 当发现自己空忙一件事却无任何进展时,不如停下来想一想症结究竟在哪里。人也是动物,在遇到麻烦和困难的时候,很容易进入到while(1)的不作为当中;一旦发现自己有这种状况的时候,要赶快停下来,先想一想原因以及可能的措施。要巧干,不可蛮干。
  4. 开始有所总结。 这些总结基本还是基于一些问题单、某个知识点的,缺乏一些系统性。
  5. 开始慢慢地养成学习和看论文的习惯;

自己做得不好的地方也非常得多,主要有:

  1. 容易急燥,长期的事情无法短期见到效果时,容易怀疑自己。 DFX是一件长久的事情,影响因素之多内外兼有。折腾时间长后,还是达不到自己的预期,怀疑是不是自己能力的问题;
  2. 学习的速度和看论文进展比较慢,有些也不容易看明白消化干净。 关于阅读速度、学习能力这方面,我觉得话题有些大,要根据自己的情况进行改进。
  3. 进行总结的方法太少,总结得也不是很到位,总是感觉自己的总结缺少些灵魂性的东西;
  4. 锻炼太少,自从搬家远了些之后,基本没有锻炼;
  5. 与人打交道、进行交流不尽如意,计算机的问题没有搞不定的,人的问题却不如所愿;
  6. 眼界太窄,看问题层次太低,缺少全局观,难以抓得住主要矛盾,理不清大一点的问题;

感觉要列出自己的问题,是可以罗列出一筐筐的,好的地方却也只能挤出几点来,不知道这是不是好强的人的通病呢:)

新的一年来争取继承优点、改进缺点。计划主要有:

  1. 管理好每天的心情、控制住自己的情绪。 工作压力是难免的,有问题就去解决和适当地求助;
  2. 锻炼身体,每周至少坚持3次跑步,每次跑步时间不少于15分钟;
  3. 加大阅读量、开阔知识面。 准备学习数学、执行引擎以及AI方法的书本和论文,同时针对学习和阅读进行有质量的小结;
  4. 克服与人打交道的困难,争取在这个方面突破;
  5. 给家人留取适当的时间进行陪伴;

最后想一想,非常感谢周围的人,同学、同事、家人,各方面的帮助和支持。

对于2018年的计划,我想列一个更加详细的计划,然后进行检验。

Table of Contents