第二次作业

本次作业使我更加深刻地意识到语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖之间的区别以及各自的含义。
阅读文章也理解了更多与本专业有关的问题
一个工程师对这些知识的掌握分为如下四个阶段:

入门 (Introductory); 熟练 (Competency); 带头人 (Leadership); 大师 (Mastery)

职业成长级别 (Professional Development Ladder):

把工程师分为6个级别 ( 9 – 15) 每一个工程师属于一个技术等级。一个工程师要从一个级别升到另一个级别, 需要在各方面达到一定的要求。例如, 要达到 level12 ,工程师必须在三个知识领域达到“带头人”水平。
一个刚入行的初级软件工程师如何成长呢? 我认为成长有下面几种:

  1.   知识:  对具体技术的掌握, 动手能力
    

例如: 对Java, C/C++/C#, 诊断/提高效能的技术, 对device driver, kernel debugger 的掌握;对于某一开发平台的掌握。

  1.   经验: 对问题领域的知识和经验的积累 (例如: 对于医疗行业的了解, 对于金融行业的了解)。
    

第一点和第二点都可以在很多简历上看到, 也可以比较容易地检测出来。随着经验的增长, 一个工程师可以掌握更广泛,更深入的技术和问题领域的知识。

  1.   通用的软件设计思想,  软件工程思想的提高
    

这一方面就比较虚,什么是好的软件设计思想, 什么是好的软件工程思想? 一个工程师开了博客, 转发了很多别人的文章, 这算有思想么? 另一个工程师坚持任何设计都要画 UML 图, 这算有思想么? 我个人比较重视一个程序员原创的博客, 在面试的时候, 我们别空口吹思想, 一起来看看你写的原创博客吧。

  1.   职业技能 (区别于技术技能)
    

职业技能包括: 自我管理的能力; 表达和交流的能力; 与人合作的能力; 把任务按质按量完成的执行力; 这些能力在IT 行业和其它行业都很重要。

posted @ 2024-04-09 16:08  鬯·彧  阅读(17)  评论(0)    收藏  举报