在校大学生想从事网络安全,多听老哥几句良言,少挨几顿社会毒打(10年资深安全工程师如是说)

本文主要是介绍在校大学生想从事网络安全,多听老哥几句良言,少挨几顿社会毒打(10年资深安全工程师如是说),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好!一直以来都有一些大学生粉丝私聊向我“取经”,可以看得出来很多人对前路多多少少都有些迷茫,我把大家的问题总结了一下,并对每个问题都做了我自己的见解,高频出现的问题有以下5个:

1.国内网络安全的薪资是怎么样的?
2.网络安全行业真实前景有那么好吗?
3.我现在的情况适合做网络安全工程师?
4.大学期应该学哪些技术才能脱颖而出?
5.快毕业了,是去工作还是去考研?

如果你有相同的疑虑,那么请认真读完我这篇文章,你一定会有所收获,在网络安全工程师这条道上少走很多弯路。话不多说,我们进入正题。

 

 

一、程序员的薪资是怎么样的?

这是大学生非常关心的点,作为应届生出来之后,网络安全工程师的薪资是怎么样的?根据我这些年的经验和见闻,网络安全工程师的薪资可以分为3类,并且都跟所在城市级别有关:

1.一线城市一线大厂超过3万/月。

作为应届生,能进入华为、京东、阿里这样的国内顶尖企业,就职薪资一般会在1.5万/月,但不同于其他公司的是这些公司会是16薪、18薪和20薪的形式,一般的公司是12薪,每个月都发差不多的工资,那么在16薪的公司工作,也就是说在年终或者某个月,你可以拿到多4个月的薪资。

2.一线城市一般公司1.5~2.5万/月。

 

应届生的能力有限,一线大厂不是谁都能进的,但还是有很多毕业生会选择待在一线城市,因为那里的薪资也不错,一般的毕业生薪资会在1.5~2.5万/月。

毕业了去一线打拼是大多数人的选择,如果能在一线城市扎稳脚跟,那么你就能在起跑线上超过了很多小伙伴,一线城市的机遇也很多,若是赶上风口那飞起来一点也不夸张;你也可以选择工作三五年之后积累了较为可观的资本后退出一线城市,去节奏慢一点的地方发展。

所以我的建议是,毕业想当网络安全工程师小友,尽量不要回家,先去一线去打拼一波是最有益的。

3.二~~五线城市平均8000~1.5K/月。

二线城市的薪资相对于一线城市是少了很多,不过生活成本也相对低很多,生活节奏也会慢很多,应届生的平均工资在5~8K,我这里指的是平均工资。

 

二、网络安全行业真实前景有那么好吗?

网络安全行业毫无疑问是很有前景的一个行业,中央在2019年提出的中国制造和5G建设目前还处于发展中,远的不说,5年是需要的,5年之后风口在哪我不知道,但我觉得网络安全行业依然是未来的重头戏。

根据Gartner所做统计来看,信息安全支出占整个IT支出的比例越来越高,2018年全球信息安全支出占IT支出的比例为3.05%。与之相比,Gartner数据显示,我国在2019年的IT支出约达到2.9万亿元规模,而信息安全市场规模为500亿元左右,中国信息安全支出占IT支出比例仅为1.7%,相对于全球平均水平还有较大差距。假设中国信息安全支出比例达到全球平均水平3%,所对应的网络安全市场规模将达近千亿量级。

 

三、我现在的情况适合做安全工程师?

这是一个比较常见的问题了,很多人甚至是学计算的人,他们都会问我说“我到底适不适合做网络安全工程师”,那么对于这个问题,基本上接触了编程1年左右的时间就能判断出来,主要通过以下几种:

1.喜欢用代码决胜千里之外的人,适合当网络安全工程师

不管你是不是科班出生,如果你喜欢敲代码的感觉,喜欢用代码构建世界,喜欢通过代码决胜千里之外的成就感,那么我觉得你很适合当程序员,而且只要不断努力,你必定能在互联网行业有所建树。

2.抵触写代码的人,不适合做网络安全工程师

如果你看到代码或者想到写代码就很抵触、反感,甚至看到代码就想吐,那么你是不适合当程序员的。

讲个我身边的例子,我大学刚出来的时候跟我室友一起去同一家当实习生,在实习期间要学的东西很多,每天都是跟代码、算法打交道,我室友就特别反感写代码,那时候我们俩能在网吧玩传奇玩一整个通宵,但是他在座子上坐不到1个小时就得出去抽烟,他不是烟瘾很重的人,他就是出去待着,他说看到代码就头晕和反感,结果最后他没待到1个月就辞职了去其他公司做运营岗位了。

如果说你也是这么害怕和反感写代码,你觉得你趁早去学你感兴趣的东西、做你喜欢的行业。

3.对代码不抵触但也谈不上喜欢的人,可试试“日久生情”

这种情况是最常见的,自己对写代码这个事情并没有很反感,多多少少有一些念想或者小成就在支撑,但也谈不上很喜欢,因为写代码讲究思维、烧脑子,又或者是因为技术之路感觉长路漫漫,那么这种情况,我建议是你坚持学下去。

只要通过你自己的不断学习,那些你觉得陌生的东西,慢慢就会熟悉了,不管你是冲着月薪上万,还是想做一个酷酷的技术高手,你只要试着跟它相处久了,你会逐渐跟它“日久生情”,最后找到喜欢的感觉。

 

四、大学期间到底应该学些什么?

在回答这个问题的时候,我突然想起了我大学刚毕业的时候,那时候刚进入工作岗位,很拼,但之余留给我的学习时间不多,而我要学的东西还有很多很多,就特别后悔我自己,为什么大学不好好学,浪费了那么时间,去做了很多没有多大用处的事情。

如果让我的大学重来一次,我必定会这么去学习:

1.文化课

千万不要小瞧文化课,比如我们的英语、高数、统计学和概率学等等,一定要打好基础,程序员的很多项目资料、技术文献都是用英语写的,很多算法是需要高数等知识。

举个例子,很多小伙伴因为英语基础不好,所以在安装开发环境的时候喜欢用破译的中文版软件,我是不建议这么做的。我都建议大家用英文版的,千万别汉化,就好比学车学自动挡还是手动挡,学了手动挡的人,你去开自动挡是没有什么问题的,但学自动挡的人去开手动挡就不行,软件也是一样,用惯了破译的中文版软件,你对英文原版的软件将会束手无策。

还有,千万别挂科。

 

2.选1门语言精通

不管是Java、Python、还是PHP,又或者是GO语言还是其他的什么语言,都是可以的,你只要选择1门语言深入学习,直到你掌握了90%以上,你就精通了,千万不要什么都会一点但又不精通,这样你不仅没有优势,而且没有趁手的工具(语言),你很难干成什么事情。

3.掌握好数据结构和算法

在你掌握了1门语言之后,这2个是你最应该去掌握的东西。在程序员界有一句流传的话“好程序=数据结构+算法”,就算你精通语言的API,但那都是表层东西,数据结构和算法才是里层东西,如果你的里层(除开硬件不讲)很垃圾,你表层再厉害你也挡不住1亿的并发。

这个东西在大学的时候要好好掌握,你出来之后想学不一定会有,市面上那些培训机构很少有把数据结构和算法讲得很透彻的,还是大学的时候去学习是最稳妥的,大学的学习资源是很丰富的,要好生利用。

 

4.掌握数据库

无论是SQL数据库还是NoSQL数据库,建议你都精通1个,就算是人工智能和大数据方面,数据库都是必不可少的,都需要数据库来进行数据存储,而在一个公司里面,跟数据打交道的程序员薪资都比较高,就好比做前端的薪资没有DBA高。

如果你精力和时间允许的情况下,建议你选择一个热门数据库去学习并精通,比如MySQL。


5.学好网络原理

虽然说这只是原理,并且在最开始工作的时候你可能用得不多,但并不代表它可有可无,而是你技术层面还没达到,当你的技术层面达到了,你会发现这玩意儿它真的很重要,而1个优秀的程序员或者说1个技术高手,对网络原理是很熟悉的。

网络原理涉及的知识有很多,比如七层结构,比如LP规划、HTTP、DNS等等理论知识,掌握好了之后才能让软件具备较高的性能,比如说做出来的直播软件没有卡顿。如果你不懂得网络原理或者一知半解,那么你写出来的程序员并不会很好用。

 

6.做1个可持续维护的项目

与其说这里找1个速成的项目做或者那里找1个源码看看效果,倒不如你自己认真地去做1个可持续维护的项目,这样你才能持续地巩固知识、见证自己的成长,并且能自信地拿得出来。

比如说你去做1个类似CSDN的博客网站,在一开始你学习前后端的时候掌握的技术不是很多,你做出来的web网址很low,但没有关系,你继续学习,学到了之后自己去给它添加更多模块,比如说给它添加视频模块,比如说给它添加24小时热度排行榜的功能等等。

记住,这个项目不要去找开源的,那对你来说没什么意义,你要自己去写代码,不断地完善和维护这个网站,最后你会因为这个成果感到有成就感,到最后我相信,你一定会比一般的毕业生优秀很多。

 

六、快毕业了,是去工作还是考研?

“能考研肯定是要去考研的。”

这一点我从来都是这么坚定地回答。互联网行业现在不像十几年前没学历有技术也不愁工作,现在如果你是高中或者中专学历,你基本没戏,学历是互联网行业的敲门砖,不管是顶尖大厂还是普通公司,给高学历人才开的薪资普遍比低学历高。

但我得提醒大家一句:有了学历不代表长久高薪,程序员更看重的是动手能力。

所以考上研之后你更要好好学习。

文章到这里就结束了,感谢你的观看

我是最近一直在学习如何写文章,说实在的,每次在后台看到一些读者的回应都觉得很欣慰,对于自媒体我是个刚入门的人。为了感谢读者们,我想把我收藏的一些网络安全/渗透测试学习干货贡献给大家,回馈每一个读者,希望能帮到你们。

干货主要有:

① 2000多本网安必看电子书(主流和经典的书籍应该都有了)

② PHP标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ 网络安全基础入门、Linux运维,web安全、渗透测试方面的视频(适合小白学习)

⑤ 网络安全学习路线图(告别不入流的学习)

各位朋友们可以关注+评论一波 然后扫描下方二维码 备注:网安学习  即可免费获取

 

这篇关于在校大学生想从事网络安全,多听老哥几句良言,少挨几顿社会毒打(10年资深安全工程师如是说)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/420286

相关文章

嵌入式软件工程师应聘知识点

嵌入式软件工程师应聘 修改浏览权限 | 删除 数据结构(C语言)部分常考的知识点: 1、局部变量能、全局变量和静态变量 2、堆和栈 3、Const、volatile、define、typedef的用途 4、链表(比如链表的插入、删除和排序) 5、排序(考查冒泡法的较多) 6、可重入函数 、malloc函数 7、指针(常考函数指针,函数指针,数组指针,指针数组和

企业如何进行员工的网络安全意识培训?

企业网络安全意识培训的重要性         企业网络安全意识培训是提升员工网络安全素质的关键环节。随着网络技术的快速发展,企业面临的网络安全威胁日益增多,员工的网络安全意识和技能水平直接关系到企业的信息安全和业务连续性。因此,企业需要通过系统的网络安全意识培训,提高员工对网络安全的认识和防范能力,从而降低企业在面对潜在安全风险时的损失和影响。 企业网络安全意识培训的方法         企

9 个 GraphQL 安全最佳实践

GraphQL 已被最大的平台采用 - Facebook、Twitter、Github、Pinterest、Walmart - 这些大公司不能在安全性上妥协。但是,尽管 GraphQL 可以成为您的 API 的非常安全的选项,但它并不是开箱即用的。事实恰恰相反:即使是最新手的黑客,所有大门都是敞开的。此外,GraphQL 有自己的一套注意事项,因此如果您来自 REST,您可能会错过一些重要步骤!

【网络安全的神秘世界】搭建dvwa靶场

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 下载DVWA https://github.com/digininja/DVWA/blob/master/README.zh.md 安装DVWA 安装phpstudy https://editor.csdn.net/md/?articleId=1399043

数据库原理与安全复习笔记(未完待续)

1 概念 产生与发展:人工管理阶段 → \to → 文件系统阶段 → \to → 数据库系统阶段。 数据库系统特点:数据的管理者(DBMS);数据结构化;数据共享性高,冗余度低,易于扩充;数据独立性高。DBMS 对数据的控制功能:数据的安全性保护;数据的完整性检查;并发控制;数据库恢复。 数据库技术研究领域:数据库管理系统软件的研发;数据库设计;数据库理论。数据模型要素 数据结构:描述数据库

使用JWT进行安全通信

在现代Web应用中,安全通信是至关重要的。JSON Web Token(JWT)是一种流行的安全通信方式,它允许用户和服务器之间安全地传输信息。JWT是一种紧凑的、URL安全的表示方法,用于在两方之间传输信息。本文将详细介绍JWT的工作原理,并提供代码示例帮助新人理解和实现JWT。 什么是JWT? JWT是一种开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,用于在各方之间以JSO

Java学习 - 网络安全问题

网络安全的4种威胁 截获:从网络上窃听别人的通信内容;被动攻击中断:有意中断他人在网络上的通讯;主动攻击篡改:故意篡改网络上的报文;主动攻击伪造:伪造信息在网络上传输;主动攻击图例: 加密技术 对称加密 概念 对于要被加密的内容,其加密和解密都使用同一个密钥传输时,加密的内容和密钥都进行传输 优点 加密和解密速度快 缺点 因为加密算法公开,所以如果密钥被截获,就不安全了 常用对称加密算法

如何给文档设置密码?电脑文件安全加密的详细操作步骤(10种方法)

在数字化时代,电脑文件的安全和隐私至关重要。通过给电脑的文件或者文件夹设置密码和加密,可以有效保护你的重要文件不被未经授权的人员访问,特别是公司的重要岗位,一些特殊的机密文件,投标文件,资金文件等等,更应该注重文件日常使用安全性。下面将为你介绍10种电脑文件,文件夹加密的详细操作步骤,帮助你更好地保护你的电脑文件安全。 加密方式一、Windows系统内置加密(电脑自带的文件加密) 选中需要

安全科普:理解SSL(https)中的对称加密与非对称加密

今天刚好为站点的后台弄了下https,就来分享我了解的吧。 密码学最早可以追溯到古希腊罗马时代,那时的加密方法很简单:替换字母。 早期的密码学:   古希腊人用一种叫 Scytale 的工具加密。更快的工具是 transposition cipher—:只是把羊皮纸卷在一根圆木上,写下信息,羊皮纸展开后,这些信息就加密完成了。 虽然很容易被解密,但它确实是第一个在现实中应用加密的

工程师 - status和state的区别

"Status"和 "state"是相关的概念,但有不同的含义,尤其是在计算、系统和编程方面: 1. Status:     * 定义: 状态是指系统、进程或实体在某一特定时间点的当前状态或情况。     * 使用方法: 它通常描述一项操作的状态,如是否正在进行、是否已成功完成、是否遇到错误或是否正在等待输入。     * 举例说明: 在编程中,函数可能会返回一个状态代码,