进入工作将近三年的时间,也一直地在这个公司工作着,无论是实习还是正式转正,一直都在不断地成长着,而今年过年后,一系列的变动,特别是3.3,让我学会了更多的承担,也让我面对着许多的压力,也让我学会了更多的成长。

  1. 话说3.3的iOS组任务是我进行的分解,也是我对相关任务进行的预估,但是明天就是这一天的结束日,按照正常我的工作预期是13天半,虽然早已知道会有许多额外的工作,但是我清楚地知道在这二十多天来有许多时间上的浪费,或许有这些浪费是比较好的,因为将来会去注意这方面时间的浪费。

    1)某功能在进行开发之前感觉似乎不是那么地难,只是逻辑很复杂,并且在完全开发之前没有细想,等到开发到一半的时候发现逻辑越来越多,而这一块的部分功能需求交互没有明确给出。询问交互后,交互的答复是因为该功能的需求不是那么地重要,并且现在实现功能如此复杂,可以直接将本部分的需求给以简化。这让我明白了作为一个程序员,不要一直都把自己当成一个死板不思考的程序员,在进行开发之前要对相关实现方法进行细致分析,深入细节,以便能够更好地预估工期,也能够更好地向产品给予反馈。并且开发相关功能的时候要思考为什么要有这个功能,实现这个功能大约要用多少时间,如果两者不成良好的比例,就该向需求提出相关疑问,让产品去思考本功能是否真正要实现,还是要简化,还是要直接放弃。

    2)iOS和安卓是两个平台,但是面对同一个产品同一个周期同一个功能,如果感觉自己做的事情比较复杂的话,最好进行互相的沟通。因为在本期中有一些思路是询问过来简化了时间,是一个很好的体现,但是也许会有一个问题,那就是对方所实现的思路会违背交互的开发需求。尽管有比较快捷的开发思路的话,不如将两个不同实现方案的开发周期、开发难度、开发弊端等方面和交互进行沟通,让交互去选择究竟是那个方案应予实现。

  2. 在本期中,许多额外的任务穿插过来,突然让我想起去年的一系列事情。想起某领导和我说过的事情要根据重要情况和紧急情况进行分级,分成紧急且重要、紧急不重要、重要不紧急、不紧急不重要五个等级。要学会划分优先级,以便能够让自己合理地安排好自己的事情,也能够对别人的工作提供更好的支持。

  3. 要学会把任务给予别人,在本期中,第一次真正作为唯一的主力,也真正地第一次在实际工作中给别人分配任务,第一次考虑自己的工作任务重要让别人协助解决,这件事情让我明白人不要总想自己能不能做好这个事情,而要想的是怎么才能够更快更好地把事情做好。

  4. 在这个开发周期中,我清楚地知道我发火了,并且是和女生发火,我深刻地体会到了曾经那么细心认真的我究竟为什么就那么地不耐烦了呢,难道自己在这方面已经不是这样了?或许事情的堆积让自己压力很大,或许许多的询问、协助让自己有些不太耐烦,而自己应该明白人要想做事情就要认真细致,别人的不断询问是对你的回答不那么地了解,产品不清楚开发的技术问题,人家不清楚不懂为什么就不能用普通的话语把技术问题给表达出来呢,反而跟女生急了,让女生有较高的心理压力,而这里所体现的是自己急躁、不耐烦、语言沟通不好等问题。

  5. 不知道什么原因,无论什么时候似乎有些问题都敢提出,而且还去和产品提出相关产品设计上的疑问。不是说提出疑问不好,而是不能一直死脑筋,因为我想起了去年的一个事情。一个版本的开发由于功能没有面向全部人员开放,我所接到的需求是弹出一个提示即可,而我一直在犟不应该这样,应该不同的情况弹出不同的提示,以便让用户得到更好的指引,比如下载更新版本、等待功能开放等方式。而我一直都在说我虽然遵照需求实现,但是保持自己的意见。当时的一个同事和我说我的想法在交互中是比较好的,但是这个只是一个临时的策略,或许他们不想在这方面弄得太复杂吧。在这期中,我又提出了两次关于按钮显示内容切换的疑问,而这次我听到的是交互给予他们的真正原因,也让我想起了曾经我的一次质疑时交互和我说两种情况都可以,但是为了适应大众软件风格所以这样。这些事情让我明白了不要永远活在自己的想法中,要充分理解别人的想法,而这样的沟通,是让自己更多地去学习,去成长。

  6. 你不在事情就不能正常运转并不是好事,或许这样的事情更能凸显你的位置,但是你的不存在让整个事情停滞或延后会给整个团队的计划打乱,而一个人的问题导致整个团队出现问题,这样的问题应该越少越好,越早解决越好。

  7. 要充分考虑整个项目而非一小块新的功能,以前每一期的开发,都想到的是我要把这个新的功能开发好,对于别人提出的bug能够解决就好,但是现在,面对整个项目,自己要清楚的是自己要善于发现问题解决问题,而不是等着别人提出问题。

  8. 要善于调节自己,曾经的我以前没有什么听音乐的习惯,不知为何这期间我似乎养成了一个习惯,就是在不配合别人工作的情况下,听着音乐似乎比不听音乐开发的效率更高。或许是完全一天天地只听着键盘的声音让自己比较沉闷,或许这就是一种调节自己让自己心情舒畅地工作,但是不能去听音乐的相关歌词,因为那样会分心,所以这一期我有听音乐但是没有记住一句歌词,不知道自己究竟听了哪些歌,或许这不是一个好习惯,但是这个目前的确是一个比较有效的办法。

  9. 要有集体观,以前的工作只顾着自己的开发速度和开发周期,而现在自己虽然所承担的任务是最多的,但是也相应地去为他人的工作所着想,无论是否是同组的,无论是否是同部门的,无论是否是同一个项目的。因为大家都有一个共同的目标,都在一个办公室中,所以要有集体观,要有责任,同时其中会有一些错误的阐述,所以也要勇于去承认自己的不足。

  10. 要有项目整体全局观。现如今在iOS开发中,我不仅仅关注了开发对应的功能,也想到将来在逆向安全、自动化测试、多方面语言协助等功能的体现。因为逆向安全的学习,会让自己在将来更注意开发,让自己的软件更安全,让用户更放心;多方面语言协助,让我想到的是这期的某一项功能,因为之间的存在,让功能实现更方便,也让给我想到以后的第三方脚本的学习,因为以后说不一定什么时候会用到;自动化测试,虽说是测试人的活,但是单元测试按照常理来说应该开发来测,我本身就是一个开发人员,就要想到要用更自动的方案去解决去实现。

  11. 更便利地协助工作。给我颇有感想的就是图片资源的使用,因为一些图片资源完全可以代码体现,而这样的话,对于开发对于美工来说都方便了许多,更减少了时间的浪费,更方便以后的修改。

  12. 为将来的兼容着想。不知为何突然想到在开发中应该有一个专门的软件或文件进行相关内容的存储,比如曾经在软件中存储了什么文件,存储结构是什么样的,为什么而存储。因为我想到的是几年以后或许已经不在公司,那么新人也添加一个这个文件,而用户使用老的版本不断地升级,老的文件和新的文件重名造成的崩溃也不是没有出现过,所以现如今的相关,要为将来而考虑。

  13. 做事情要深刻而透彻。记得某一天,在公司进行企业证书部署的实验,原本感觉可以,但是后来却告知领导他的某些想法似乎不能够实现,白费大家的时间和劲头。

  14. 做事情要学会风险评级。记得前几个月的时候似乎比较烦躁,在开发过程中一直告诉测试说我不保证我的更改不会带来问题,而在这样的事情中,要学会去思考如果修改这方面的问题,有可能会带来哪些问题,带来问题的可能性有多大,最重要的测试角度在哪里。

  15. 做任何事情要学会寻找更方便的解决办法。在这期中,我想到的更多的是更多控件的编写和重用,以及颜色等方面的使用,另外经常地配合别人的工作,也要找到配合工作的最快最简单的解决办法,更多的思考或许会浪费时间,但是从长远考虑会大大地缩短时间。

一下子就想到了这么多,这二十天来虽然现在还没有完全完成工作,但是真的学到了许许多多。