that means your work is too primitive. everybody can code/program, but not everyone can design, build, manage, scale and maintain a system. these knowledge and skill sets will determine your ceiling.
我觉得不一定要精通,但是 1。要知道有那个东西,以后用到的时候起码有个出发点,可以去查资料现学。 2。要知道自己什么不知道什么地方薄弱,靠刷题拿到offer 以后有意地补一下短板。 总而言之就是you know what you know, you also need to know what you don’t know.
转码要成功,这些基础要扎实:
数据结构: stack, queue, list, heap, hashmap, tree 各有什么特点,再哪些场景下适合使用。
语言基本概念: class, function, interface, abstract class, inheritance, method overloading, static method, instance method, reference vs pointer, garbage collection, statically typed vs dynamically typed, compilation vs interpretation, virtual machine, JIT (just in time compilation), stack memory vs heap memory, thread vs process vs coroutine
操作系统基本概念: 二进制,文件系统(file system), 内存管理,kernel space vs user space, linux bash, linux file permissioning (chmod), linux pipes
网络基本概念: http, tcp vs udp, web server, web request (一个web server 收到 web request 以后怎么处理,怎么返回数据的?), xml, html, javascript (typescript), 现代 javascript 怎么在本地浏览器运行的。 面试最喜欢问的问题: 你在你浏览器打入一个网页,按回车键开始,直到这个网页出现,这当中发生了些什么?
分布式系统基本概念: Database (SQL vs NoSQL), Transactions (ACID), Messaging Queues, Load Balancing, Hashing, Master-Slave, Replication, CAP theorem.
你光刷题,就算进去某个大厂,不牢牢掌握以上知识,也出不了活(除非去做哪些平台有人给你搭好,你在上面填业务逻辑就行的那种产品工程师,所谓“API Boy”, 这和software engineering 没啥关系 )。你基础打好了,用什么语言,什么框架,都是细枝末节。就好比,你知道这个世界上有个东西叫锤子,有个东西叫螺丝,有个东西叫螺帽,有个东西叫钉子,知道他们的工作原理,应用场景。你别这些没搞明白,花时间钻研某个牌子的锤子外面涂的什么颜色,把手是塑料的还是铁的,放在盒子里头朝上还是朝下,这就是学了叶子没学根,本末倒置了。
最后,哪怕失业在家,也别去肺部X光片厂。
最后贡献75道算法必刷题: https://www.techinterviewhandbook.org/grind75 必刷不是指高频题,而是指很有代表性的,对某些常用技巧和概念有强化意义的题。若能每道题背后技巧原理吃透,就算打通任督二脉了。
但大厂都有各种搭好的平台给你用,要出活主要还是靠要学得快,trouble shoot快,各种工具熟练使用,对各种平台很熟悉
谢谢楼主分享 点赞mark收藏
点赞mark收藏 CS
所以楼主看不上meta啊
mark~~~~~~~~~~
这种manager,技术问题一问三不知得靠底下的人撑起来才行。这就靠management的个人魅力了,如果management skill强,带着有技术的人一起腾飞,如果管理能力不行,底下人跑路了,management就抓瞎了。
可能是Facebook吧。
没错,刷进厂了才是学习的开始,编程这事儿,直觉好的,一分钟看出别人一周都找不出的bug,但直觉的的培养都是时间经验积累出来的,先把那一周的功夫下了,才能有那一分钟的直觉,别的行也不知道,这个行业的senior 都是自己坑吃坑吃填坑填出来的,没有捷径。如果进去有人带你走捷径,那人只是想敷衍你。
很多人进厂以后imposter syndrome很重,只能努力学习才能真的消除
我觉得会搜索的能力非常重要,stackoverflow能解决大部分问题,碰到问题的时候直接去搜,涉及到更深的原理就再继续搜,知其然也要知其所以然,才能提高得快
也很难知道那么多。
还有转码刷题到最后,题刷的差不多了,再看看那几个classic 的white paper, 然后就信马由缰,看到不熟悉的概念,就顺藤摸瓜查查,这样很多事情不见得深入,至少有个概念,以后需要的时候不至于一抹黑。
是的,我觉得现在的学习都是由果寻因,顺藤摸瓜,不懂也能把活儿干了,但是干完活儿也花时间好好反思总结把该啃的瓜啃了才有进步
but alot of them will get laid off sooner or later in a downturn
that means your work is too primitive. everybody can code/program, but not everyone can design, build, manage, scale and maintain a system. these knowledge and skill sets will determine your ceiling.
感谢🙏楼主的发言
说的都对,但是没啥用。人家面试的就喜欢考锤子上的漆是啥颜色,你有啥办法?
还有,这年头都不能好好说人话吗,什么肺部光片,深井冰。
这是练内功 功夫深的都是外形差的锁男。练功需要长时间坐着 肚子就大了 没有逼操 内功再好有屌用
mark mark
请问什么途径转码最快?能自学吗?
我觉得不一定要精通,但是
1。要知道有那个东西,以后用到的时候起码有个出发点,可以去查资料现学。
2。要知道自己什么不知道什么地方薄弱,靠刷题拿到offer 以后有意地补一下短板。
总而言之就是you know what you know, you also need to know what you don’t know.
况且“多花时间学根”这种说法本身就不靠谱,作为一个非CS专业的人,你花五年都未必能把根学明白,还转什么行啊。
没说要学到博士程度,知道这些概念,你会发现对工作有如虎天翼的作用。而且我列的这些概念,没有一个牵涉到高深数学和逻辑,自己静下心来网上查查资料就整的明白 。还用五年?不过肺部x光厂的人估计确实对这些东西一窍不通,要五年也不是不可能。