一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 16372|回复: 59
收起左侧

[找工就业] PHD quit, 转CS 找工作经历

    [复制链接] |试试Instant~ |关注本帖
xenophobic 发表于 2015-4-28 10:43:18 | 显示全部楼层 |阅读模式

2015(1-3月)-[13]ME硕士+fresh grad 无实习/全职 - 内推| 码农类全职@Grouponfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
转眼间最后一个学期马上就结束了,来说说我转CS的经历吧,希望可以帮助一下那些正在转,将要转的人。进入正题。
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
CS背景:本科大一学了一个学期的C语言,学得很不好,基本上不理解书上讲的。很讽刺的是当时觉得这个学了有什么用。大三学了数据结构和数据库,学得一般般。但是好的地方是接触了那些数据结构,对后来的理解起到了一定作用。
. 1point 3acres 璁哄潧
转CS:从去年三月决定开始转CS。因为实在是不喜欢实验室的research,以后也很难找工作,偶然之间听朋友说CS找工作很好找。
        入门:
        1. 看书。《absolute c++》。 之所以选择C++,一个是因为以前有一点C的基础,另一个原因是因为我们学校开C++的课特别多。还记得当年用visual studio 写一个hello world 都写了好久,最后发现没有include <iostream> 写了之后发现没有写 using namespace std。总之各种水啊。但是好在我认真的看了一遍这本书,觉得非常受益,包括后来面试也发现很多面试问题里面都有涉及到。因为白天要上课,还要在实验室搬砖,所以进度比较慢。知道五月份才把书看完。如果你学C++,我强烈建议你看 effective C++,一本非常非常的书!
        2. 做project。五月看完这本书之后。向同学拷了他们上课的project 的spec。完整的做了下来,project 是关于OOP design的,这也是第一次做那么大多project。。主要学到了怎么用visual studio写程序,debug之类的。
        3. 蹭课。暑假学校开了一门算法课,于是我早上去蹭课,下午在实验室搬砖,因为9月要过qualify考试,于是搬砖各种累啊。。。晚上就在图书馆码代码。每天码到图书馆关门再走。由于没有auto grader,自己写的也不是很好,只能自己写test cases,和别人对答案。虽然没有写的很好,但是这些projects 对于我第一次尝试找工作起到了很重要作用。
        4. 刷题。最开始的想法上个学期毕业,所以我六月中旬就开始刷题。可想而知,那会刷题的痛苦,基本上没有一题会做。我的刷题入门书:Programming Interviews Exposed. 一本比较简单的书,但是我还是基本上都看答案过来的。。。看完答案后自己码到visual studio上面去跑。这本书刷了差不多三个星期。第二本书是:剑指offer 名企面试官精讲典型编程题,个人觉得这是一本特别好的中文书,里面教你怎么做题,怎么发散思维,由于已经刷过了第一本书,这本书刷得还是挺轻松的,大概用了两个多星期。有一点很重要的事情是:我觉得刷题一定要记笔记!把一些很好的解法抄一抄,记一记,就像熟读唐诗三百首那样。第三本书就是经典了,CC150. 这本书非常的好,相信大家都有听说过吧。但是还是好多不会做。。。。没办法咬咬牙,看看答案分析,还是一样,自己码到visual studio里面。最后在开学前刷了一遍多。有一个网站,博主非常给力大贴出了自己C++答案,这里非常非常大感谢他,对我的帮助非常之大。http://www.hawstein.com/posts/ctci-solutions-contents.html    于是暑假就在早上上课,下午搬砖,晚上码代码中度过了。期间各种艰难,没有朋友一起刷题,看着周围同学的那么开心的玩。不过这段时间成长的非常之多,尤其是对C++ library的熟悉,这个很重要。
        5. 正式上CS的课。由于各种巧合,给老板发现我在上CS的课,这里我要非常的感谢我实验室的老板。他给我选择,要么让我退了CS的课好好做research,要么让我quit phd 好好学CS,不想让我两头兼顾,最后两头都学不好。再三思考之下我决定quit phd。专心学CS,然后同时做系里的TA,赚学费哈。那个学期我上了三门课,一门操作系统,一门关于web的课。这里要感谢一个朋友,坚持建议我上操作系统。一门毕业要求的数学课。事实证明操作系统非常的好,里面的projects 很好,写在简历上也非常的好。 web的课也很fancy,最后实现了PageRank,做了一个搜索引擎。那个学期是我CS素养提高最多的一个学期。
        6. 面试求职。转眼之间学校的career fair来了。本来都没有想去参加的,第一天都没有去。仿佛冥冥之中自有注定,career fair第一天快结束的时候,我吃晚饭来到学校CS building里,本打算刷题的,不想那里有一个recruiter 的聚会,于是我就本着练习口语的态度去和他们聊聊。于是遇到了cisco的recruiter manager,聊天聊的非常的开心,他说他原来是学CE的,后来也转CS 了。于是他鼓励我明天去找他投简历。于是我通宵准备简历。有一种感觉,当自己实力不好的时候,运气往往会很好。第二天我发出去快三十份邮件,收到了好多面试啊。哈哈哈。。其中有一个公司在career fair那里现场在简历背面出了一道题,我立马搞定,于是决定给我发onsite。还拿到了indeed, bloomberg,extrahoop 等一些公司,但是我其他大公司一个都没有投,因为很多公司都有冷冻期。由于暑假刷题刷的多,面试都到最后的终面了,但是可能那会CS素养还是不行,最后都没有拿到offer。但是这次经历给了我很大的鼓舞!这个学期就在各种熬夜通宵睡图书馆中度过。期间还认识了我现在的女朋友哈哈。这个学期学到的知识主要有:
OS:
     multi threads programming.         
     virtual page
     security
     socket programming
     一点 distributed system
     linux file system, transactions
Web:
     HTTP, HTTPs, TCP/IP
     PHP, MySQL, HTML/CSS
     web security
     PageRank, TF-IDF
        7. 寒假继续刷题。上个寒假可以是质的飞跃。整个寒假哪都没有去就在图书馆里面刷题。这里要感谢一个好朋友和我一起刷题!哎,无奈leetcode oj 上面还是好多不会做。。。无奈接着看别人的答案。。。码上去,这一次也很注重代码的质量,而且更加细致的阅读了C++ library里面的说明,尝试用各种不同的函数,不同的constructor。非常感谢leetcode的开发者们!第一次刷leetcode 基本上是按照AC rate来弄的。于是用了大概快两个月的时间刷了两遍leetcode。第二遍刷的时候我是按照专题来刷的,大部分题目都能一边过,这里要注意:千万不要用leetcode debug,一定要自己多思考不同的test cases,这个在后面面试中很重要的。
        8. 正式开始找工作。为了抢占公司招人的先机,在一月初,我陆陆续续开始找人帮我推荐,这样要感谢各种国人的推荐!稍后我会讲讲我自己面试的一些技巧。也许是我认真刷题的回报吧,很快我二月六号就拿到一个芝加哥的offer,因为公司本身对我来说很不错,离我女朋友也近,还马上给我办h1b,于是我基本上停止了找工作, 就继续把之前安排好的面试给面完。于是整个转CS找工作之旅也就结束了。但这仅仅是CS之旅的开始,发现自己也越发喜欢CS了。
. 鍥磋鎴戜滑@1point 3 acres
感悟:

        1. 迷茫,不确定。从一开始转CS,心里就有各种不确定,质疑这样真的可以吗?于是我用各种先前成功的例子来鼓励自己,肯定能成的!这里我想说一句,只要你认真学,认真刷题,认真找工作,结果肯定都不会差的。周围几个转CS的哥们都找到工作了。所以要相信自己,给自己制定一个计划,时间表,然后认真努力的执行,再拼一把,从高考到一拼,出国考GRE,托福,申请,一步步走来,我相信大家肯定可以做到的。
        2. 简历的准备。简历是你收到面试的敲门砖!这里要感觉我女朋友的帮助,把我的简历变得profession了好多。我个人对简历的一些看法仅对转CS的同学:1. 我偏好把skills 写在最开始,后来我觉得也挺管用的,因为我们的专业不是CS的,看完education之后,要让他们最快的看到你会写什么。再career fair 投简历的时候,我发现有的时候他们会用笔划一下你会的东西。然后最好去学一些热点的东西,比如现在的大数据。接着我感觉对skills 的build,我感觉最好学一个C++ 或者 java,加上一门脚本语,比如 php, python, 接着就是SQL了,这样看起来稍微面广点。2. education,我感觉最好把你学的CS课写上去,让人觉得你确实学了不少CS 的课,让人不会因为你不是CS专业而不喜欢你。3. project的描述。我比较喜欢写的稍微全面点,比如1. 这个project 是做什么的,2. 用了什么technique, 什么语言 3. 达到了什么样的效果。一定要反复的琢磨,最好让别人也帮你看看。
        3. 面试。我的建议是先投一些小公司联系你的面试。0. 拿到面试之后一定要去各种论坛里面找面筋,我常去的有mittbbs jobhunting, 一亩三分地,glassdoor,careercup。1,要准备一段话来应付,talk about yourself. 还有一些其他的behavior的话。参考:http://hrinterviews.blogspot.com/   2,为每一个project 准备一段话,告诉别人你怎么project 做些啥的,怎么做的,遇到什么困难,做enjoy的是什么,遇到什么困难,有没有和队友有不同的意见,怎么觉得的。参考 CC150的 introduction 部分。which project you like most. 这个问题我被问了无数次了。。3,要提高CS素养,我觉得可以参考:http://www.programmerinterview.com/  我把里面的东西反反复复不知道读了多少次。4,准备linux command line的知识,也经常被问到一些常用的command line。5,我的面试流程:1. 这个问题的case会不会很大,能不能都放到内存里面?2. 某个函数要不要经常被用,如果要的话考虑一下cache 3. 我还会问,我可以assume input都是valid的吗?我告诉他这里要做什么样的check,但是为了节约时间就不做啦。。哈哈 4. 写完之后,告诉他写完了,但是我要跑一些test cases,然后就自己写一些test cases,平时leetcode 自己想test cases 就挺好的。5. 最后,面试的时候一定要自信。
.鏈枃鍘熷垱鑷1point3acres璁哄潧
祝大家都能找到工作,一起来对付阿三! 等我六月底入职之后给大家refer。

. from: 1point3acres.com/bbs
推荐一些网页:
careercup, glassdoor, geeksforgeeks, leetcode

我的一些个人资料在百度网盘上:




评分

24

查看全部评分

本帖被以下淘专辑推荐:

U.S.A 发表于 2015-4-28 10:50:19 | 显示全部楼层
想问一个问题,对于想找cs工作的跨专业零基础的人士,哪些知识是必须要掌握的
回复 支持 反对

使用道具 举报

复活节兔子 发表于 2015-4-28 11:28:48 | 显示全部楼层
楼主,对于没有任何计算机基础的人,想做相关方向,改补什么课
回复 支持 反对

使用道具 举报

 楼主| xenophobic 发表于 2015-4-28 23:36:41 | 显示全部楼层
复活节兔子 发表于 2015-4-28 11:28. 鍥磋鎴戜滑@1point 3 acres
楼主,对于没有任何计算机基础的人,想做相关方向,改补什么课

我觉得需要从四方面入手。
1. 学习一门计算机语言,我推荐C++ 或者 Java. 1point3acres.com/bbs
2. 学习数据结构与算法
3. 学习数据库
4. 学习操作系统的知识
如果还有时间的话,
1. 学习计算机网络知识,做一些网页 前端或者后端都可以
2. 学习一门脚本语

接下来就是刷题了

评分

3

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| xenophobic 发表于 2015-4-28 23:38:12 | 显示全部楼层
U.S.A 发表于 2015-4-28 10:50
想问一个问题,对于想找cs工作的跨专业零基础的人士,哪些知识是必须要掌握的

从必须到角度来说,编程语言,数据结构与算法,数据库。当然如果知道操作系统,计算机网络更好了。
回复 支持 反对

使用道具 举报

复活节兔子 发表于 2015-4-29 02:56:01 | 显示全部楼层
xenophobic 发表于 2015-4-28 23:36
我觉得需要从四方面入手。
1. 学习一门计算机语言,我推荐C++ 或者 Java
2. 学习数据结构与算法

Thanks!
回复 支持 反对

使用道具 举报

复活节兔子 发表于 2015-4-29 02:56:37 | 显示全部楼层
xenophobic 发表于 2015-4-28 23:36
我觉得需要从四方面入手。
1. 学习一门计算机语言,我推荐C++ 或者 Java
2. 学习数据结构与算法

Thanks!
回复 支持 反对

使用道具 举报

北航小涵 发表于 2015-4-30 03:33:38 | 显示全部楼层
楼主你最后拿的是ME的硕士学位是么?那办理H1B起来没有问题么?
回复 支持 反对

使用道具 举报

北航小涵 发表于 2015-4-30 03:33:44 | 显示全部楼层
楼主你最后拿的是ME的硕士学位是么?那办理H1B起来没有问题么?
回复 支持 反对

使用道具 举报

北航小涵 发表于 2015-4-30 03:34:03 | 显示全部楼层
楼主你最后拿的是ME的硕士学位是么?那办理H1B起来没有问题么?
回复 支持 反对

使用道具 举报

 楼主| xenophobic 发表于 2015-4-30 03:40:14 | 显示全部楼层
北航小涵 发表于 2015-4-30 03:34.鐣欏璁哄潧-涓浜-涓夊垎鍦
楼主你最后拿的是ME的硕士学位是么?那办理H1B起来没有问题么?

对啊对啊,今天先用本科的学位抽,到现在还没有消息。。。。我觉得到时候就看律师他们怎么帮我说了. 1point 3acres 璁哄潧
回复 支持 反对

使用道具 举报

北航小涵 发表于 2015-4-30 04:16:37 | 显示全部楼层
xenophobic 发表于 2015-4-29 14:40. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
对啊对啊,今天先用本科的学位抽,到现在还没有消息。。。。我觉得到时候就看律师他们怎么帮我说了

啊~~~我就是不知道ME的学位 就职码农工作是不是H1B签证允许的。。
回复 支持 反对

使用道具 举报

oio14644 发表于 2015-5-2 23:43:59 | 显示全部楼层
谢谢分享,请问楼主cc150和leetcode从easy到hard都刷过了?
回复 支持 反对

使用道具 举报

Mr.V 发表于 2015-5-3 00:38:16 | 显示全部楼层
恭喜LZ,坚持不懈,成功转CS~
回复 支持 反对

使用道具 举报

uranus 发表于 2015-5-3 00:41:33 | 显示全部楼层
榜样!忍不住担心自己拼不到这个程度
回复 支持 反对

使用道具 举报

donnice 发表于 2015-5-3 01:50:13 | 显示全部楼层
LZ是UM的么?
回复 支持 反对

使用道具 举报

owen_1989 发表于 2015-5-4 15:42:52 | 显示全部楼层
非常感谢楼主的分享资料,我也是一个准备转CS童鞋,楼主的经历很有参考价值并且也给了很大信心。加油ing
回复 支持 反对

使用道具 举报

 楼主| xenophobic 发表于 2015-5-4 22:36:16 | 显示全部楼层

对啊对啊
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-4 23:46

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表