对后端和前端的理解
经过一小段时间的实习,我个人对后端和前端理解是:“后端重业务,前端重技术”。这句话肯定有失偏颇,但是从我的观察来看,后端的工程师普遍不是很在乎你个人写的代码、思想等等(我干的活都是中台业务,搬砖那种,不涉及到很底层的东西),而是主要关注你是不是把业务做好了,这也就要求你必须对好几个部门在干什么都比较清楚,同时也对他们的领域有一定程度的学习(然而面试的时候问的全是技术本身的细节,或者八股)。而前端虽然也是需求驱动开发,但是实现方式比较多样化,也有更多可以自己操作的空间(我们组十几个后端,只有一个前端),开会的时候也不用去理解他们都在谈论什么业务,反正把接口跑通了就 ok 。我个人对公司在干什么业务以及其架构什么的非常不感兴趣,可能和性格有关吧,更喜欢一些小而美的东西,这一点上我觉得前端对我来说更有意思一些。
另外本人的业余爱好基本都是艺术相关的,前端的设计属性可能也是个加分项(虽然我高度怀疑这一点,实际业务中大概就是某个同事给你指指点点设计一些丑爆了的页面?)
学习过程
由于之前看网上的言论都是“后端钱多、后端上限高、后端门槛高”等等(这个之后详说),所以一开始就学的后端。准备项目的时候由于都是一手操办,每个地方干了什么都非常清楚,也觉得很有逻辑很有意思,所以一直没怀疑过这个选择。但是在公司内就很不一样了,在网上看到过一个描述觉得很贴切——“屎山拉屎”,甚至不知道是拉在了尖上还是边上。
不想在屎山拉屎也可以,要么做底层那些有技术含量的,但本人对自己智商十分了解,目前的业务算是熟练了就能会的东西,再难了就像高数的证明题一样,不会就是不会;要么混时间长了爬到管理岗,但可能是学生思维吧,我观察公司那些领导,成天就是开会下指令,偶尔讲个话,我觉得工作全干这种事也挺无趣的。
最近在下班时间学习 React ,感觉难度对我来说非常合适,像是回到了舒适区一样,另外不管开发的是什么内容,能看到自己写的东西就感觉要舒服一点,好歹我能知道屎山被我拉完以后变成啥样了。
网络看法
上面提到,网上很流行的说法就是“后端钱多、上限高、门槛高、更容易晋升”,钱多不多我不太清楚;上限虽然高,但是我觉得以我的智商大概前端的上限也是摸不到的;门槛确实高,但是如果前端学得足够好,也应该能建立自己的技术壁垒吧;后端确实可以向着 CTO 发展,但是我个人也没有太高的追求,以后如果能干技术岗然后 WLB 就非常满足了。
技术栈变化
很多人会说前端技术栈变化太快,淘汰率高。找这家实习之前我一直自学的 Go 语言,结果进来后现学 Java ,痛苦异常。我之前也接触过 React 和 Svelte 框架,个人感觉这两个框架之间的差别远没有 Go 和 Java 的区别大,另外后端的技术实在是过多了,Java 、Spring 、数据库、缓存、MQ 、Spark 、Hadoop ,这些感觉基本是每个互联网大厂的标配了,还得和算法组那边对接,感觉等把这些都掌握的差不多了,前端那边也轮了好几遍了,我可能还宁愿专心钻研 JavaScript...
市场需求
这一点确实不太清楚,以后还准备出国工作,就更不清楚了,希望有前辈能提供信息。
大概先写到这里,由于以上基本都是自己的脑补想法,所以实际也不知道是不是真的应该迈出这一步。胡言乱语非常抱歉,提前感谢每一条回复!