安全研发人员能力模型窥探
Posted HarkAllen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安全研发人员能力模型窥探相关的知识,希望对你有一定的参考价值。
能力
是一个比较抽象的概念,不同的行业、管理者、研发人员对能力的认知都会有差异。另外,作为研发团队的相应的职级定级、绩效考核的基础,一个“大家普遍认可”的能力的模型是非常重要的。这是比职级模型更高层的一个基本模型,所谓“最初的基本共识”。
为什么把这个事情放在最前面?因为这是设计“企业需要的能力”的起点;有了“ 企业需要的能力
”,才会有“企业需要的人才”模型建立;有了“企业需要的人才”模型建立,才会有科学的职级模型的建立——这是设计“适合我这个企业”研发人员能力模型的根本依据,
千万不要照葫芦画瓢 照搬所谓“大公司”的职级体系。
能力模型很重要!
1、企业 需要有自己的能力模型 , 才能科学 找人、育人、用人;
2、员工 需要有自己的能力模型,才能科学知道自己职业 塑造方向 和如何发挥 价值;
3、 企业和员工只有知道 “需要” 的能力模型,才能为绩效沟通打下 最初的共识。
以网络安全行业为例,比如网关类安全产品,需要了解数通、安全引擎、安全管理等交叉领域的知识。因为大IT技术范围很广,所以要客观评价一个研发人员的能力,就需要按照“细分领域”的范畴,从领域的角度来建立能力模型。
如下图,按照房子模型构建能力模型
如图,
通用基础
:这是研发的能力的基础(地基),一般是通用技能如编程能力、数据库知识、网络知识等。俗话说,万丈高楼平地起,没有一个稳固、坚实的基础,是无法承载领域知识的成长;招聘中,应届生和跨行业的候选人,主要看重和考察的就是这部分。
业务领域
:这是你从事的细分领域的业务知识(柱子),IT技术分的比较细,比如游戏、互联网、数通、安全、物联网,都有各自不同的业务领域知识。这部分内容,够不够高、扎实,是走向领域专家的重要支撑。对社招员工,这部分是主要考察因素。
业界前沿
:这部分主要是指技术前瞻性(屋顶),也是成长为架构师以后,能继续走向资深、首席架构师的核心能力要素。对高端技术人才,这部分是主要考察因素。
上述模型,是以构建知识体系大厦为目标的技术人能力模型,从感性的角度也比较容易理解: 基础够不够厚,支柱够不够多,天花板够不够高
,这三个方面构成了技术人 职业生涯的全面客观的体系支撑 ,也是企业对工程师 职位级别评估的标准 。
上述模型,可以指导不同职级员工的前进方向。如: 初级员工 ,应明确告知他,你现在最主要的目标需要打好地基; 中级员工
,应明确告知他,你现在最主要的目标是需要把业务领域支柱架好;对 高级员工 ,应明确告知他,你现在最主要的目标需要拓展视野,积极创新,成为领域专家。
每一个层级的员工需要考察的重点是不一样的。不同候选人不会因为工作时间长就“打中”的多,而是主要考察其“有效经历”,并判断掌握深度,这样可有效区分“一年经验用十年”的情况。
另外,招聘的时候,面试官根据地基、柱子和屋顶比重以及满足情况,可以很容易的画出人才的核心竞争能力“打中”图,这幅图可以给候选人看,可以给员工讲的明明白白,这也是定职级和薪资的科学依据。
举例来说,
招聘应届生和跨行业社招 ,应当至少需要满足能力大厦的地基部分;
招聘中级员工 ,要重点考察业务支柱部分;
招聘高端人才 ,除了地基和柱子,应该着重考察屋顶的部分。
举个例子,例如要组建 "下一代防火墙” 研发团队,组建前先要勾勒这个产品研发的能力大厦:
基础部分,主要是Linux环境下的编程技能,C/C++,Linux,GO,网络编程,等等,这部分作为基础来考察候选人;
柱子部分,就是业务部分,主要有三大支柱:网络、安全、安全管理,根据这部分内容,在对口人群中寻找合适的候选人;
屋顶,就是前瞻部分,根据产品未来发展走向,设计未来产品需要的技术,寻找既有广度又有深度的高端候选人,作为架构师人选。
对复合型人才,每一部分给出一个合理的比重,便于量化评估人才。
这样,就把能力和职位级别两件事情,给员工和老板讲清楚了!
接下来就是企业设计职位级别序列了
此处不再赘述。每个职位级别,需要制定详细的对应薪资范围、能力标准以及升级要求,可对员工按照每年为单位进行评估。
然后,对每一个职位级别进行画像,必要性如下:
研发是一个实践科学,上述年份仅供参考,核心考察是每个阶段的核心工作经历,如,以开发为例:
开发语言掌握深度、代码行数经验、做过的模块是否核心、设计能力、代码质量和速度、是否有过系统设计经历、所设计系统的规模、专利熟练、创造性运用技术解决产品问题的经历、知识的深度和广度、对交叉领域技术的融合运用、创新的难度和落地,等。画像就是不要用笼统的语言来描述职级,而是用接地气的实实在在的描述来讲清楚每个职级应有的水平。
一句话简单画像:
中级:至少需要掌握n个核心模块
高级:至少需要能主导中小规模的产品
系统级:至少需要主导大型复杂产品
专家级:至少需要主导过n个大型复杂产品且有创新
……
根据上述画像,制定每个职位级别的能力子项,并且设计能力评估雷达图,
到这里,就越来越清晰了。
- 管理者,可以用这幅图作为人才能力评估指导;
- 员工,可以用这幅图作为科学成长的指导;
- 而自评和上级终评的过程,是一个很好的沟通对齐认知的过程,有利于后续绩效和预期管理。
然后可以对应职级,帮助员工做季度或者月度绩效:
1、按照模型图,结合部门路标,勾选年度提升重点领域
2、按照职位级别,设定相应的要求基线和考核要求
3、按照职业规划,制定个人学习提升计划
到这里,基本上就把研发人才的能力(职级)模型 讲清楚了。
总结:
1、根据企业实际情况,制定“我这个企业”的1~5年的“研发人才能力大厦”;
2、根据能力大厦,制定粗的职级序列
3、根据粗的职级序列,设计细分职级画像
4、根据细分职级画像,制定能力雷达图
5、根据细分职级,设计不同职级的绩效目标
实际中,很多安全企业,在对员工的招聘和培养方面很多时候都是以业内“大企业”看齐,因地制宜不够。如果没有想清楚自己企业的自身特点,就没法给员工讲清楚职级。我想,企业招揽人才的根本目的,是为了研发有效率(成本、进度、先进性),在竞争中能赢。只有量化的科学的拆分出合适的能力大厦,才能为职级和职业发展厘清思路。
的自身特点,就没法给员工讲清楚职级。我想,企业招揽人才的根本目的,是为了研发有效率(成本、进度、先进性),在竞争中能赢。只有量化的科学的拆分出合适的能力大厦,才能为职级和职业发展厘清思路。
最后
分享一个快速学习【网络安全】的方法,「也许是」最全面的学习方法:
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①html、CSS和javascript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k。
到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?
想要入坑黑客&网络安全的朋友,给大家准备了一份:282G全网最全的网络安全资料包免费领取!
扫下方二维码,免费领取
有了这些基础,如果你要深入学习,可以参考下方这个超详细学习路线图,按照这个路线学习,完全够支撑你成为一名优秀的中高级网络安全工程师:
还有一些学习中收集的视频、文档资源,有需要的可以自取:
每个成长路线对应板块的配套视频:
当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。
因篇幅有限,仅展示部分资料,需要的可以【扫下方二维码免费领取】
测试人员的核心能力与素质
声明:该文不是我的原创作品,是我的同事魏增艺的大作,独家授权我来进行发表。
在《测试人员的角色》一文的最后,我们相信优秀的测试人员是项目的前灯,是整个研发系统的反馈回路。那么什么是优秀的测试人员呢?具体说来,具备哪些核心能力与素质的测试人员才能胜任这样的角色呢?
对于能力模型,例如常见的“冰山”模型、“洋葱圈”模型等,都将一个人行事的内在动机或价值观等置于核心位置。同样,对于一个测试人员,我们并非看他在进行什么活动,而是要关注他为什么要进行这些活动。本文所讨论的就是行为动机背后的能力与素质。
总结起来有两项素质和两个能力。下面详述:
两项素质:正向思考、逻辑思维
正向思考。例如,身处一个研发过程处于无序状态的团队中,正向思考的人,能够在理解接受团队的具体情况后,依然朝着将团队引入有序研发过程的方向进行努力,而不是屈就于现实。正向思考,就是一种由内在的乐观所引导的对自我角色的认知和定位,进而对外部行为产生决定性的影响的过程,外化为责任感强,尽职尽责、自我提升改进等特征。正向思考最大的难点就在于接受自己脆弱的一面。克服这一难点的过程,就是人心性的修持过程。“工作的时候要保持内心的宁静,它是工作的核心”,“内心的宁静会产生正确的价值观,正确的价值观就会产生正确的思想,正确的思想就会产生正确的行动。”[1]
逻辑思维。例如,面对产品、开发给出的系统行为描述,是否能够理清个中关键点,相互矛盾的描述、需要进一步挖掘和明确的需求等。逻辑思维能力强的测试人员,能够将收集到的信息进行整理和分析、理清信息脉络、发现问题、结合实际情况使用一定的技能解决问题,实现创新。常常外显为学习能力强、成长快等特征。值得一说的是“顿悟”或“感觉”。他两常被误解为是一种感性或者非理性,其实他们是属于逻辑思维领域,是在积累了一定的事实或实践后,尚未清晰逻辑脉络的情况下,大量神经元细胞的“涌现”现象。例如,一个屈就于无序状态研发过程的测试人员,即使没有改变的心,也能说出一堆让自己感觉不好的细节,只不过他并不能理清“感觉不好的背后”所蕴含的内在的逻辑,或者没有意愿对其进行改善。而逻辑思维的大敌就是旧有的被认为是正确的逻辑。保持对旧有逻辑的警惕,时刻更新自己的逻辑,是痛苦的,也是快乐的。
两个能力:收集和分析信息、提问和质疑
收集和分析信息。例如,产品的需求是什么,不仅要搞清楚产品文档的意思,还要知道产品经理是基于哪些思考进行的产品设计;产品需求的背后,有哪些利益相关者引导着产品经理对需求的理解;存在缺陷或风险时,哪些问题需要反馈给哪些关键人员等等。收集和分析信息,就是要收集和分析产品在研发各阶段,关注这个需求的利益相关方的立场和想法,他们做决断的思考是什么,各方存在的问题是什么,系统应进行的行为是什么等等。
提问和质疑。例如,我们已经知道了开发同学为了提高查询效率对某一数据查询功能使用了本地缓存。那么提出如何更新缓存、多机部署时缓存数据不一致对流程是否有影响,业务是否允许等等问题,一方面这些是设计的要点;另一方面,通过提问和质疑,我们可以知道开发人员是否进行过这方面的思考,是否存在隐患。任何有力的问题和质疑,并不是要问倒别人,而是检验团队中的每个人是否做了充足的工作,并引发团队的思考,进而为改变埋下种子。
具备以上两项素质和两个能力的人,能够展现出一种区别于产品、开发、普通测试人员等人的测试思考与实践。那么这种测试思考与实践是什么呢?会在《测试思维是怎样的一种思维》中进行讨论。
注释:
[1]罗伯特·M·波西格《禅与摩托车维修艺术》
以上是关于安全研发人员能力模型窥探的主要内容,如果未能解决你的问题,请参考以下文章