Skip to main content

别报喜不报忧,我再说说改行CS的难处


绝大多数难处都在于技术和兴趣。

我改行的学技术时感觉就是:我一切求速成,完全没有时间或是心情从技术上详细考虑
。打个比方,就像偷到九阴真经的周芷若,明知道这武学博大精深,但是因为时间限制
,只能偷练最速成、最快捷的功夫。

这种短期之内是看不到什么坏影响的,但是长期以后我就慢慢看出来了坏处来了:

(1) 心态浮躁,由于速成惯了,静不下心来学东西;觉得速成万岁,速成最牛;
(2) 很多方面基础不行,我个人SQL原来不行,后来还好工作中用到一点还学了一些
,不过也菜得要死,像Network这些完全是坑;
(3) 熟练度不够。CS科班的很多知识可能背后都是有code的实际经验支撑的,我没有
,所以在面试时边界条件、一些container的function名字什么的一直让我非常头疼,
尽管强化训练下,我倒不怕算法题本身;
(4)没有体系概念。在公司里,明白细节,但是不一定理解在设计层面上的东西;在
学校里,能拿A,但不知道这学了有什么用、怎么用、怎么吹;
(5)判断能力弱。跟(4)类似,接触新技术、新思想、新部门等时由于基础薄弱,很
难做出准确判断,甚至毫无概念;

兴趣上的难处就更好理解了:没有兴趣,就加重了技术学习的难度,也加重了加班时的
痛苦。

但是我有一点思路我认为是对的:我进入CS行业后,在心态上没有把自己当成改行的,
技术水平还是力争在像CS科班看齐,有些方面如算法、OS等应该已经达到同时期的科班
水平。

可能觉得我说得过于抽象了?举个例子吧:我自己在面试亚马逊这个级别的公司时感觉
压力不大,他们谈的东西我基本都能说出来,同级别的公司面试成功率应该在50%以上
甚至更高;但是面对Google这种立刻歇菜,所以就不敢投facebook和linkedin。

所以改行者有这种困境:即使努力,在很多方面非常熟悉,也会有莫名其妙仿佛没有听
说过的领域,然后就会慌乱甚至挂掉整个面试。更多地,这是种心态问题,就好比CS科
班知道地球有多大,而我们没概念,只知道几个大陆有多大,所以心里没底。

当然,我在努力克服这种困境,虽然至今没有找到很有效的办法,尤其是工作以后人会
变懒很多。如果我过几年能够混进FLG,或许算是某种程度上克服这个困境?

不过我自己的经历至少证明了:虽然改行CS技术困难很多,而且基础一直不牢靠,但是
如果运气不太差的话,经过努力和修补还是能进亚马逊这个级别的公司的;FLG不知道
,我再试试,过几年看看,说不定也行。

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...