Skip to main content

标  题: 生物转行CS经验---Phase I

发信人: flareon (), 信区: Biology
标  题: 生物转行CS经验---Phase I
发信站: BBS 未名空间站 (Fri Nov 10 15:23:28 2017, 美东)

痛苦挣扎了大半年,终于跟老板摊牌,也拿到了挺满意的CS Master AD,算是转行路上
迈出了一大步。所以做个总结。

过程:
今年2-3月:帮我家LD一起学Machine learning。今天想来,非常感激这个机缘,逼
迫我硬着头皮读了PRML,自己去实现一些model,算是第一次接触了正规CS教育的
course是啥样。

3-4月:随手申请了一个Insight data,然后拿到Interview;为了准备Interview迫使
我一周内从0开始做一个data science project;虽然最后没拿到offer,但非常感激这
次经验,这算第二个机缘。

4-5月:快到deadline才突发奇想干脆申请个OMSCS;OMSCS录取很人性化,我也幸运拿
到AD。给我很大转行信心。

6月: 坚定决心改行,挣扎很久SDE vs DS的职业选择,为此到处打听请教前辈,翻遍
了MITBBS/一亩三分地各大论坛;现在看来,让我了解CS职场到底干啥在。认清现实后
,果断选择SDE路线。

7-8月: 集中时间刷Leetcode 300道,同时做总结以及每周六的Leetcode竞赛;同时,
也跟风投Amazon校招,因为容易浑水摸鱼,这也逼迫我反复修改自己的SDE resume,至
少改了50个版本吧。
(关于刷题,不想误导大家,需要说明:我其实5-6月份就开始断断续续刷题入个门。然后
集中精力7-8月狂刷,但也就是一遍。Java coding水平的确很大提高,但远远远远不够
面试,我已经两个月没刷了,已经生疏很多了。所以刷题要时刻保持感觉,而且一定要
反复刷,刷出精髓,触类旁通,而不是死记硬背)
(另外,刷题是第一任务,第一课程;比其他什么course重要的多。跟高考一模一样。)

9-10月: 家里LD拿到亚麻OA,我们为此辛苦准备了两周,然后幸运拿到VO,我也跟去
Seattle参观了一次。本以为拿到VO是胜利在握,但极端倒霉的是亚麻历史上第一次大
规模取消VO offer,因为提前招满。但是,我有巨大收获,就是全程参与了亚马逊的OA,
work simulation,coding以及onsite。

9-10月:突然发现,原来我们学校quit PhD后是没有OPT的,所以赶紧申请campus CS
master。因为当时觉得95%的概率是要去西雅图了,所以疯狂申请西雅图 + 湾区的学校
。因为西雅图学校少+春季入学可能影响intern,所以做了大量功课研究学校和program
。还跑去考了次充满drama的托福。

11月:拿到两个西雅图的AD, 其中一个还是我随手一填压根连要求都没看清的学校,
汗~~然后突然发现,我这种情况其实是可以入学直接进去做CPT的,之前纠结的Spring
入学找intern之类的,纯属浪费时间。。。所以现在赶紧狂找intern,但已经两个月没
刷题了,所以赶紧把刷题捡起来。。。然后LD只能跟着我去西雅图找工作了



经验:
1 感谢我LD,无形中还是受到很多影响的。所以圈子,朋友,connection决定了你的职
业选择。

2 一些小的机缘很重要。我自己有一定计算基础,而且早就想着改行,但安于现状。而
恰好是做ML作业+Insight面试,这两件小事儿彻底让我入了门。

3 感激Georgia Tech online,给了我们巨大的机会和希望。大家千万不要错过,尤其
你没有身份问题。

4 多上一亩三分地,以及各种Linkedin/Indeed/微信/reddit/mitbbs。。网络资源获取
信息,人脉,不管是求学还是找工;我觉得这个甚至比刷题和project更重要

5 狂刷题,把自己刷成妖艳货色。这种方式未必正确,但这就是现状,高考指挥棒指哪
里,你就考哪里。

6 CS Master申请没那么困难。生物转行GT估计都免了,PS多编一编即可。但强烈建议
还是去湾区+西雅图的学校,找工作location太重要。但如果便宜的话,Texas不错。另
外不要盲目追求名校,做码农和你哪个学校出来的,关系没那么大。一个UTD的平台都
够你去FLAG了。 (补充:不要纠结推荐信,找同学甚至你老公/老婆写都可以)

7 一定要搞清楚相关的移民法规。比如我自认为有OPT,或者自认为我不能一开学就CPT
,这都是自己的臆想,害的我耽误很多时间。

8 转行期间,对于生物老板,忍!君子报仇,十年不晚

9 改变思维方式。很多Academia或者生物的思维方式害惨我们。比如“内推”这种事情
,我第一次听说的时候觉得特别惊讶。

10 人生难预料,祸福转化一瞬间。找工作,尤其对于new grad还是要点运气的。本来
是我跟着我LD去西雅图,现在成了他跟着我去,中间很多曲折,最后还是跟Seattle有
缘。再比如说,很多博士阶段顺利的,做到博后才看到学术界的真相,想quit转CS,但
发现已经用掉了PhD的OPT,就非常尴尬。(希望这种愚蠢的政策未来以后可以改变)

11 如今new grad找工形势严峻,所以intern极其重要。一方面可以return offer,另
一方面,公司极其看中这种work experience,没有intern会让找工作举步维艰。所以
赶紧进入刷题+找工状态

这条路还是很艰辛的。但收获很多。希望以后我能找到intern/工作,再来跟大家分享
感想,有机会写"Phase II"
与君共勉!

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...