当时的计划是学习完整的现代的软件工程知识,可以完成一个优质的软件。
能力调查表和课后指望:html
技能 | 课前评估 | 课后指望 | 如何提高 |
---|---|---|---|
程序理解 | 2 | 5 | 科研mentor监督读和修改最早进的算法代码 |
代码质量 | 2 | 5 | 高效利用时间,对于本身如今的水平,先埋头写就是了 |
架构设计 | 2 | 5 | 对于最后的团队项目,确定须要学习开源的项目代码或者和组里其余同窗学习才行,在此过程当中学习成熟的代码结构设计和项目架构设计 |
线程进程设计 | 1 | 5 | 科研这边的程序跑在多个GPU上,会练习到 |
我的源码管理 | 3 | 5 | 使用git |
如今看起来,学习完整的现代软件工程知识,完成一个优质的软件,基本算是完成了。好比如今对软件工程的认识,和完成的还不错的期末做业。
对于技能表里的计划,程序理解能力提高,有提高,可是大概如今3-4分吧。代码质量感受几乎没啥提高,由于埋头写代码,也不知道本身写的好很差,基本上就是能完成功能就万岁。架构设计提高挺大的,多亏了组里beta阶段来了王子博同窗,跟他学习了不少。如今大概3-4分。线程进程管理有提高,如今大概2-3分。我的源代码管理基本完成,代码质量参考小组做业的开源代码一样的,也是子博给了不少的指导。前端
在第一章的末尾,讨论了bug和feature之间的关系,有些人知道有些产品的质量不如另一些好,可是也会选择那些不够好的产品,由于它们知足了顾客的需求,产品是否有理想的销量是和可否知足顾客需求直接相关的。在暑期科研中,小组研究的课题是去寻找深度学习库代码之中的bug,可是深度学习中某一层的bug有可能并不会对最后的预测准确率有很大的影响(此处bug指和理论算法中实现的函数有区别,错误的实现代码),由于在训练的过程当中可能这个层的bug会起到像新的激活层同样的效果,甚至可能对预测正确率有好的提高。那么这种bug须要解决么?vue
如今感受起来,bug是和软件不可分割的,软件中几乎不可能彻底没有bug。bug的解决要考虑到成本。好比咱们的项目中有一些已知的不足,或者没有实现的功能,可是考虑到同窗的时间和项目的进度,只能砍掉。开发新功能和解决bug之间,工做量和代价之间,都要有取舍和平衡。
***git
在第十章中提到,咱们有不一样程度的典型用户,有的对软件的专业程度需求高,有的需求低,这个在如今的软件产品的对应中,是不是家庭版、我的版、专业版、企业版等等区分呢?若是可让比较弱需求低的用户在使用过程当中不会有那种软件认为我太弱了不给我所有的功能一类的感受呢?程序员
用户选择合适本身的版本使用起来也会更流畅。新手不须要那些很复杂的可是根本用不到的功能。
***github
在8.6.1以及14.1.2分别提到了项目目标预期与进度调整、开发过程的可见性的问题,在第七章微软MSF中也提到了给员工足够的信任的问题,若是任务紧,赶时间,项目参与人员也在尽力作,可是由于能力不足、或者压力大致使拖延症等等,畏惧汇报进度;这种状况下是应该要求让员工不管作成什么样都如实汇报,仍是设置好ddl中途就再也不追问了呢?算法
必定要定时汇报进度!当过PM以后对这个有了不少的体会。有衡量的标准和可靠的spec,即便员工遇到了困难进度缓慢,也必定要如实汇报,方便管理者内心有数,能够处理和协调。数据库
私人问题,在14章质量保障中提到了若干互联网公司的安全事故致使用户用户名、密码泄露,做为软件开发很资深的研发总监,对于我的用户的密码设置问题,是否有什么建议?django
是的,有不少软件开发公司对用户的密码保护很差,对于咱们的密码没有进行合理的加密保护,甚至前一段时间的12306抢票软件明文密码泄露的问题。做为用户,咱们应当分级设计密码,重要的软件用复杂的密码,不重要的软件能够用同一套密码,泄露了危险也不大。api
做为资深的软件工程师,对于以前讯飞在demo中使用人工翻译把印度人的口音问题解决记录成文字版再使用讯飞本身的翻译和朗读软件完成,讯飞本身在宣传的过程当中比较清楚各个技术的具体状况,在合理的范围类进行宣传,而翻译员曝光后媒体对其大肆批评的状况怎么看?软件的在必定程度上的舞弊是属于能够接受的呢仍是尽可能避免的呢?怎样避免被媒体抓住鞭子?
第一次的过后诸葛亮分析是本身写的,第二次也参与了不少,我以为当时的想法对于个人成长和认识有很大帮助,如今看起来也以为收获很大。
在第一部分有写。主要是对完整的软件开发走了一遍流程,对于管理一个小团队,做为PM和做为Developer的体验和收获都是很大的,了解了状况,对于之后若是想从事软件开发,应该会更加内心有数一些。