哈喽大家好,欢迎来到知识渊博、故事精彩的篱笆老师分享会,最近篱笆老师发现有很多同学希望进行转码求职,进入年薪百万的科技公司。因此,篱笆老师希望能把一些高效准备转码之路的步骤与经验总结出来,帮助大家有目标地来高效准备。
第一,先要掌握一门编程语言 我选了python, 因为语法和数据结构足够简单, 可以让大家更加关注代码的作用与应用,而不需要去管太多的syntax
这里给大家推荐一些入门的资料:首先是Python 的官方 Documentation,然后可以尝试codeacademic里的一些python basics,基本上能用python实现一些CC150上简单的数据结构与算法,你的基础编程语言掌握就可以了
第二,要先学习好数据结构与算法。数据结构与算法实际上是整个CS求职中的基石和内功,需要不断修炼。我建议大家可以去找各个学校的网络课件或者教程,比如像mit,berkeley,都提供了开源的,非常好的数据结构与算法的教程,比如berkeley的CS 170与CS 61A,仔细的跟着去学,搞清楚不同的数据结构的差别和应用场景,并且去掌握熟练的一些常用算法,比如BFS, DFS, Dynamic programming等等。这里一定要注意,如果你没有吃透数据结构和一些经典的算法,千万不要开始大规模刷题,这样会导致你的刷题是无效的一个投入。
第三,当你了解了数据结构与算法的知识之后,就可以进行高效的刷题准备了。具体的内容在我过往视频中有讲过CS同学如何进行高效刷题,大家可以去查看,我这里就不赘述。
第四,刷完题后,以为自己还不错了, 但是每面还被拒, 发现与面试官随便聊聊, 就会暴露自己缺乏CS素养, 也就是CS基本常识, 以及各种知识的关系,这里推荐大家可以通过berkeley的Structure and Interpretation of computer programming进行CS的基本素养学习。然后我也很推荐大家可以去了解一个全栈系统的不同模块的知识,比如:1,Linux 指令;2,front end:(HTML, CSS, JQuery, XML) ;3,Web development framework:(Django, springboot) ;4, database; 5, Design Pattern
最后,基础的编程语言,刷题和CS常识可以让转码的你积累起积木, 但是你可能还并不自信, 因为没有作品。
所以篱笆老师建议你可以自己去写code, build自己的作品。比如写个side project, iOS的app,web application, 也可以把学校的项目course project通过更复杂的架构变得高大上。当你有2-3个融会贯通的project之后,你就会在面试中更加自信,而且在中小公司面试中也会很看重你真正做的项目能力,而不只是刷题能力。
好了,以上就是篱笆老师对于如何高效准备CS转码之路的一些经验分享,希望对大家有帮助。「该晒货来自@篱笆老师-北美省钱快报,版权归原作者所有」