构建之法阅读笔记03
第三章软件工程师的成长
上班的时候,高级的软件工程师其实和普通的软件工程师一样坐在电脑前敲敲打打,查下邮件,上会网,看看手机,聊会天。但是两者的区别就在下班的时候,高级工程师下班回家,而新入职的工程师还在电脑前奋斗。
软件开发不仅有团队的流程,还对每个成员有独立的要求。软件团队是由个人组成的,团队开发的大流程中是每一个人在做具体的开发测试用户界面设计管理交流等工作。个人在团队中也有独立的工作流程。但是个人的工作要用什么来评判呢,用上班时间?那是不是经常加时的同志能够赢得头筹?
初级软件工程师要成长要先积累开发相关的知识提升技术技能,而且积累问题领域的知识和经验。随着经验的积累,一个工程师可以掌握更广阔的更深入的技术和问题领域的知识。对通用技术的软件思想和软件工程的理解,提升职业技能,还用实验成果都是软件工程师进阶的要求。
软件的开发的工作量和质量的衡量方法 1.项目任务的大小 2.项目的花费时间 3.项目完成的质量如何 4.项目是否按时交付。
团队对个人的期望 1.每个成员之间可以相互交流 2. 说到做到 3.接受团队分配的任务 4.全力投入团队的活动 5.按照团队的流程的要求工作 6.在工作前做好准备 7.理性的工作,不掺杂个人感情。
软件工程师的职业发展 1.考级之路,完成国家的专业技能资格考试或者得到相关公司的职业认证项目。 2.steve McConnell版本 3.大公司版本 4.自我评估
技能的反面 其实我有时还是志大才疏的,每次都会又这些那些的小的错误。这些都是才能不够的原因。技能的反面就是对技能的熟练程度达到了熟能生巧的时候才能真正称为一名软件工程师
我以前编程序都是自己一个人独立思考,不必和其他的人接触也不用考虑程序完成后其他人能否使用,,只需要判断程序运行是否正确就够。但是软件不是程序他需要一个团队通力合作,每个人承担着不同的任务不同人之间需要相互调用,这必然会存在接口的问题。这就是需要软件工程师的能力所在。