感觉自己这个渣二本快没人要了

2017-03-22 22:48:07 +08:00
 ygg9

题主的学校只能说是三流本科。虽然不是三本,但排名在本科院校中是倒数。

大二的时候对信息安全感兴趣,一直在捣鼓这个。没人教,都是自己瞎折腾。看到知道创宇技能表上有句话叫不会编程的黑客,犹如不会游泳的海盗。然后我就学习了 Java ,当时学校也恰好开设了这门课。

然后也没有什么用来练手的东西。就从学校开刀了。用 Java 写了一些小工具,例如密码爆破工具,蜜罐, Nmap 扫描结果提取工具,学籍信息爬虫这些小东西。看着自己写的程序,把众多学籍信息爬去下来保存到数据库再输出到控制台。控制台上面的信息噌噌噌的翻页,说实话,当时挺有成就感的。

后来学校陆陆续续开了一些跟网络相关的课程。 TCP/IP 协议分析这些课程。之后就了解到了网络安全相关的东西。也知道了拒绝服务, ARP 欺骗这些攻击方式,还自己用虚拟机跑 KaliLinux 玩了玩。当时开了一个钓鱼 WIFI 让室友连接,发现了很多秘密,当时觉得挺好玩的。

后来从知乎上接触到 Web 安全,按照知乎上的答案来讲,就是 Web 安全是很好的切入点。然后噌噌噌的推荐了一大票书籍。其中有一本是《白帽子讲 Web 安全》。这本书里面的很多东西当时都看不懂,特别是前端安全这块。 JavaScript 根本就没接触过,还有什么浏览器的同源策略。说实话,之前从来都没关注过浏览器。然后我是自学了一些前端开发技术才知道不同浏览器有不同的内核,它们渲染网页的方式都不同,对各个 HTML 标签支持的程度也不同。从 HTML 到 CSS ,再学到 DOM 树,前端安全这块基本上算是看懂了。后端安全的话,也是自己学了 Servlet , JSP 和 JDBC 后才搞懂。搞清楚漏洞形成的原理后,后来这本书就放在那里吃灰了。

然后就是秋招了。发现做安全的公司很少,好多公司都感觉挺高大上,对于我这种学校的学生来说。但是也去投了简历,简历上就放了一些自己曾经写过的小工具,压根没放在心上。结果没想到居然打电话过来了。

面试官问了一些基础的东西,例如 HTTP 报文格式,滑动窗口, TCP 连接的三次握手。后来又问了一些开放性的问题,例如对 SQL 注入的理解。感觉自己答得不怎么好,可以说是知其然,但并不是知其所以然。好多东西都没有自己的见解。后来面试官问了问我在校的经历,还有以前做过的一些小东西。面试官说:做安全,主要是思路。编程只是一部分。想想自己也是,好多东西仅仅局限于弄懂,但并没有去深入想过。我问面试官:安全如何才能做到优秀。面试官给我说了一些职业发展方向,一个是代码审计,一个是渗透测试,还有个是 Web 和移动端安全。后来谈到代码审计,我问能够理解漏洞形成的原理,并且能够写一些演示代码,是不是可以胜任这个岗位?面试官似乎很有兴趣。但我觉得代码审计不可能只看 Java 和 JS 代码,我觉得优秀的代码审计师应该要能看懂主流的编程语言代码。我说 PHP , Python 这些我都没接触过, JS 也只懂点皮毛。面试官说这些都没关系。后来谈到渗透测试,我觉得我对渗透测试兴趣更大。代码审计的话,想想都觉得好枯燥。而且挖出来的漏洞被修复,就感觉失去了意义。感觉面试官语气有些失望,问了问我的发展方向就结束了面试。

后来没去成这家公司。可能是这家公司不招渗透测试,更多的是我觉得是自己表现不够好,主要是自己太弱了。都没有在乌云提交过漏洞,也没有 CTF 竞赛经验。在技术这块和面试官都没啥聊的。

在接下来的校招中,我发现招渗透测试的公司很少。即使有,相比起那些有丰富竞赛经验的同学,我的确是不够优秀,所以导致了零 offer 。我觉得还是自己太菜了。

没有 offer ,大家都很着急。这个时候周围有同学去参加 Java 培训了,说是包就业那种。但是学费超级贵, 1.3W+。

周围做 Java 的都找到工作了,虽然都是去培训的。我有点动摇,要不我也去培训下做 Java ?但是我觉得 Java 不难,犯不着去培训。更重要的是,培训费用对我而言,是很大一笔钱。

后来我到知乎上提了个问,我不知道到底该坚持去做渗透,还是迫于就业压力去做开发。有人回答说要知道你是要成为牛逼的程序员的,这无关你是不是安全圈的。也有人说可以做一个懂安全的程序员。还有人说:你想要征服高山,就去当程序员,你想要征服大海,就去做安全。

那段时间,就业压力和两难选择让我夜不能寐。把自己关在屋子里闷了一段时间学习 Java ,感觉自己像失恋似的。我给自己说做一个懂安全的程序员也不是坏事,闲暇之余依然可以关注安全技术。

我在极客学院开了三个月 VIP ,结合慕课网开始啃 Java 。其实 Java 也没什么难的,过了一遍 JavaSE 基础就开始学习 Servlet,JSP,JDBC,C3P0 这些东西。然后就是 Spring , SpringMVC , Mybatis 这些东西。 SSH 框架也撸了一遍。学习过程基本上毫无压力,甚至还能指出视屏中不足的地方。例如实现万能 DAO 的时候采用字符串拼接会导致 SQL 注入,前端页面传过来的数据不做校检,以及富文本编辑器的内容不进行转义就往数据库存可能会导致存储型 XSS 漏洞。

特别是理解了 MVC 的设计模式过后,自己实现了一遍 Controller 层的接收到前端传值自动封装为 POJO 类,返回字符串进行视图跳转,还有弄清楚 IoC 容器是如何实现装配 Bean 的。以及 ORM 是怎么做到把查询记录封装为对象的。还有 AOP 切面是怎么去切的,为什么可以实现切面。我觉得框架就那样,换汤不换药的感觉。有一次和培训班的同学交流,他们说框架部分是高级班的课程内容。对此真感到不解,框架存在的意义是为了简化开发流程,使用应该更简单才对,怎么变成了高级班的课程了。

我觉得自己应该可以去找实习了。然后就去了省内某 985 高校去蹭校招。结果没想到被鄙视了。做完笔试题,现场递交简历, HR 看了眼我的简历,问我:你是从哪里知道我们要来招聘的?我说该校的就业网上有。然后她来一句:你们也可以进来?当时来不及多想,以《喜剧之王》中周星驰给霞姨打电话的语气回到:可以啊。 HR 冷哼了一声:没有其他事的话,你可以走了。我淡淡的回了声哦就离开了。当时真是百感交集。

之后又去了一家公司的宣讲会。刚进门就要求签到。我看了下签到名单,我的学校写上去一定是最烂的。管他的,我还是厚着脸皮写了。宣讲会的时候感觉不对劲,负责人一个劲的介绍他们的 211 人才战略。最后的问答环节,我问贵司对学历的要求。负责人看了下签到名单,说:我们公司原则上是最低要求 211 ,但不是每条事业线都有这个要求。接下来就是现场笔试。我想来都来了,座一个多小时的车来不容易,好歹刷一波笔试题再走,然后又被鄙视。很远都能听到几个 HR 看着我这边在讨论我怎么还不走。难道我不配做贵司的笔试题么?笔试题只有两道题,并不难。考察的是 Java 字符串操作,基本上用 String 类提供的方法就能搞定,并不需要自己去扩展。我做完题,听到身后八点钟方向有两位同学在小声对答案。我扭过头去看了他们一眼,他们反应很大。直接来了句:垃圾,然后就立刻交卷走了。

之后还参加了其他几场宣讲会。都是现场接收简历的,没有笔试,但一个泡都不冒一个。

唉,感觉自己这个渣二本快没人要了。

2486 次点击
所在节点    程序员
1 条回复
lians
2017-03-22 23:19:12 +08:00
实话实说 鄙视链是有的 可能在补当年高中时欠下的债吧 不过 楼主自学能力不错的啊 像我这种自学前端入门到放弃的还比不上楼主呢 加油啊。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/349593

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX