某一线城市,做了 4 年的后端口今年在公司做全栈,收入还算可观。
主要技术栈大概是目前是 NestJs/ExpressJs + React/Next.js 这样。
本人对编程有着强烈的热爱,也开发过桌面软件( C#,Electron ),web ( vue ,react ),app ( rn ),后端(主要是 NodeJs )。但是能拿得出手的也只有 Js 系的开发(包括 web 前端和后端 api 开发)。
目前做全栈和后端的热情还是比较高的,不知道怎么选择。
如果选择全栈,我大概会继续精进 Js 相关的内容,包括框架源码,数据结构,V8 引擎的学习,还有一些附加的数据库/服务器优化等。
如果选择后端,我大概会选择偏底层一些的方向且深入学习一门静态语言(目前打算转 Java ),计算机操作原理,网络相关知识等。
因为以前都是自己对什么感兴趣就学习什么,从来没有考虑过工资工作什么的。 但是 毕竟年纪也不小了,且学历也确实不怎么样(专科),希望可以开始“面向工资”编程,而我能无缝衔接并且兴趣较高的两个方向也就是全栈和后端,请问各位大佬我应该怎么选择?
1
crazyTanuki 2023-12-06 09:59:42 +08:00
你都是前后端分离模式开发吧,看 nextjs 趋势要回到前后端混合开发了,全栈应该是个大方向
|
2
hoseawu OP @crazyTanuki 是的,主要是前后端分离模式开发,但是一些小项目也就 nextjs 承包了
|
3
crazyTanuki 2023-12-06 10:04:48 +08:00
@hoseawu 真心觉得前后端混合开发好乱...你平时后端开发有用 views 模板吗?
|
4
Morriaty 2023-12-06 10:05:28 +08:00 1
还以为是老帖,下意识的看了下发帖时间🤣
工作了四年还能有如此纯粹的热情,挺好的。个人建议专而精比大而全要好。 |
5
hoseawu OP @crazyTanuki views 模板是指 ejs 这种么?我有用 ejs 开发过自己的项目和 hexo 的博客主题,但是没有在工作中实战过。
|
6
hoseawu OP @Morriaty 嗯呢,其实我也是这样想的。就是担心低学历找比较专业的工作会比较困难,想着如果是大而全类型的工作是不是对学历要求没那么高
|
7
murmur 2023-12-06 10:16:36 +08:00
做外包的话必须全栈,前端可以不精但是 vue 必须得会,如果你一辈子都能在互联网公司工作可以不全栈
|
8
James107 2023-12-06 10:16:49 +08:00
我是在阿里云做了 7 年的后端开发,个人建议是后端不要进 Java ,做个大前端会更好。后端是个无底深坑,涵盖的东西非常多
|
9
GF 2023-12-06 10:17:58 +08:00
同路线,只是希望不会被饿死
|
10
shui14 2023-12-06 10:18:42 +08:00
全栈本来就比较实际,绝大部分业务短平快。php/ruby 这些一直就没落伍,市场纯粹是人力便宜,加上所有公司不管大小都是想做平台,不考虑实际的搞基建
目前缺乏 vercel/fly 这类平台,next 算是新 php ,它做业务开发完全没问题。搭配 nodejs web 框架也算凑合。就业岗位缩减时,全栈重新回来,只是 java 和 php 还是大头,serverless 这些缺少靠谱平台 |
11
hoseawu OP @murmur vue2 算会吧,react 现在可以得心应手且有一定心得。不知道你说的精通是到什么程度。无所谓在不在互联网公司,如果一切都好(形势,薪资,兴趣),专注互联网也是不错的选择,
|
12
7inFen 2023-12-06 10:23:34 +08:00 1
看好 tRPC 的发展,未来 5-10 年,可能不再有明显的前后端区分,只有业务和数据之分。
|
13
hoseawu OP @James107 并不喜欢完全把重心放到前端上,毕竟感觉自己更大的兴趣与志向还是偏 coding 的,而不是打磨样式。
|
16
QWE321ASD 2023-12-06 10:26:44 +08:00
全栈是方便自己做工具和公司不能给安全感和无聊时打发时间干的.要是对编程没啥喜欢的和公司一副能养一辈子的样子.我觉得专精比全栈好
|
18
gloye 2023-12-06 10:27:54 +08:00
收入还算可观大概是多少
|
19
CaptainD 2023-12-06 10:30:07 +08:00
感觉做数据开发是个好选择,比较偏后端那种,区别于数仓和大数据开发
|
21
gogogo1203 2023-12-06 10:31:13 +08:00
我最开始学的 go->html->jquery->css->js->React. 现在做产品绝大部分时间都是前端。后台用 supabase 的数据库即后台+sql function+edge function. 有了 chatGPT, 写 crud 太容易了。全栈应该很快就要成为默认项了(如果还没有的话)
|
22
hoseawu OP @gogogo1203 我问的问题是深入研究哪个方向,基础的全栈现在已经没什么问题了,想要深入。
|
23
rm0gang0rf 2023-12-06 10:35:19 +08:00
全栈?是不是得把设计 UI 加上 哈哈哈
|
24
hoseawu OP @rm0gang0rf 那个在我心里属于设计方向了,有点心无余且力不足..
|
25
James107 2023-12-06 10:36:21 +08:00
@hoseawu 如果你要做 Java 后台开发
基础知识:Java 语法、JVM 机制、数据结构算法、高并发多线程、服务器 Linux 知识、网络知识编程( TCP UDP )设计模式、数据库优化 框架:Spring SpringMVC Mybatis Springboot Springcloud ( Nacos dubbo seata...) Netty 大数据:Hadoop hbase Hive Spark Flink K8s FBI 数据集成 附带的 MySQL 系列、MQ 消息队列、Redis 、Zookeeper 、Docker 、Nginx 、Tomcat 集群架构、DDD 驱动 以上还只是简单列举了我们每天都要用的,在这基础上的变型产品有很多,比如 springboot ,阿里内部是潘多拉,dubbo 阿里内部是 HSF ,都需要去了解和学习 |
26
gogogo1203 2023-12-06 10:40:08 +08:00
@hoseawu 纯技术层面,我觉得平台化和 chatGPT 的加持下已经大难点。chatgpt 还不能搞还剩下美学,动效和新一点的交互方式。类似 https://reactflow.dev/ 和 threejs 的一些 新视觉。
|
27
gogogo1203 2023-12-06 10:41:14 +08:00
当然,我说得这些只针对独立开发。
|
28
hoseawu OP 基础知识我都会,附带的那些我也会,java 我也能开发。 “转”是指“深入”,不是从头学,主要是学习 java 现在使用的框架且把技术重心放到 java 语言与 jvm 原理。从头学太费劲了,不敢挑战...
|
29
hoseawu OP @James107 基础知识我都会,附带的那些我也会,java 我也能开发。 “转”是指“深入”,不是从头学,主要是学习 java 现在使用的框架且把技术重心放到 java 语言与 jvm 原理。从头学太费劲了,不敢挑战...
|
30
abelmakihara 2023-12-06 10:49:58 +08:00
无脑后端 不过转没那么容易
脑子正常的前端照葫芦画瓢都会写 springboot 增删改查业务 没多大意义 转要学一整个生态 而且需要和其他有经验的后端卷 |
31
hoseawu OP @abelmakihara 哥,我正文写了四年后端工作经验,本来就是后端,今年才正式开始做全栈,现在是问深入哪个方向,你这等于没回答啊..
|
32
abelmakihara 2023-12-06 10:54:59 +08:00
@hoseawu 那还考虑啥啊 专职后端就完了 傻了才去掺和前端
|
33
7inFen 2023-12-06 10:56:26 +08:00 1
@James107 论广度,前端娱乐圈列出来的技术概念四五倍不止,论深度,webpack 打包估计七八成的前端都不会用。前端入门快,但难精通。前后端哪个承担更多,我觉得,大厂后端>前端,小厂前端>后端。
|
34
smallWang 2023-12-06 11:45:22 +08:00
我是纯 nodeJs 后端,现在在学 react ,nodeJs 一把梭 哈哈哈哈哈
|
35
shui14 2023-12-06 11:54:49 +08:00
@hoseawu
对于软件工程师,即便写前端或者后端,也应该知道整个流程的逻辑 java 或者 php 是次要的,从逻辑上理解,大部分岗位都是面向框架八股文,平时投入精力太大,而且是平台需要才会存在,公司有需求才有意义 全栈现在比起以前有个好处,合适的场景可供选择的工具更多。当然面向岗位编程,具备后端能力,不限制具体语言 前段时间试的 vercel serverless function 混合多种语言 https://v2ex.com/t/963777 |
36
hunterzhang86 2023-12-06 12:22:34 +08:00 via iPhone
有了 ChatGPT ,大概后面需要不太会成为障碍,全栈的程序员会越来越多
|
37
eephee 2023-12-06 12:28:24 +08:00 via iPhone
同求问收入的大致范围
|
38
jones2000 2023-12-06 12:40:01 +08:00 1
4 年的开发, 你要考虑的是“你的自己的技术优势在哪里,你比刚毕业的应届生优势在哪里”。 强化自身的优势。
|
39
whyrookie 2023-12-06 13:39:58 +08:00
顺带问一句,全栈可以前端+Java 吗?这条路线的人多吗
|
40
IvanLi127 2023-12-06 14:00:17 +08:00
我觉得即使想专做后端,也不应该选 Java ,再差也得是 Kotlin 。
|
41
nianyu 2023-12-06 14:04:41 +08:00
同意楼上说的 外包必须全栈,在公司上班可以不需要
|
42
dfkjgklfdjg 2023-12-06 14:16:32 +08:00
就业方向全干肯定比单纯的前后端机会多。但是很容易都干不好,总有一边是弱势以及脱离环境的。
特别是年龄越大,精力和时间都会慢慢变少,双向发展就很容易两边都做不好。 我们这边之前的全干就是写的 JS 代码被前端吐槽,写的 Java 代码被后端吐槽。 “大而全”之后的发展路径最后应该会和 Coding 慢慢说再见,转向解决方案之类的岗位。 ----- @whyrookie #39 ,现在很多都是 Java 开发自学 Vue 然后充全栈开发。如果本来是前端开发的话,好像都是 Next/Nuxt ,很少会去单独学 Java 。 |
43
galikeoy 2023-12-06 15:52:49 +08:00
我的学习路径是 前端三件套->jq/vue->nextjs/koa->java, 目前就是全栈的 curd 机器,
工资的话肯定是比前端高的(主要是我觉得前端要拿到我现在的工资,太难了),正在卷全职后端了 |
44
galikeoy 2023-12-06 15:57:48 +08:00
|
45
edisonwong 2023-12-06 17:08:23 +08:00 2
我是 python > golang > swift > vue 完全兴趣导向。个人建议专精,只有专精,收入高,效率高。效率高了,你业余才有时间精力研究别的技术。潜全栈:有 gpt ,学习能力强的应届生很快就写出来,没优势; 深全栈:都深入不现实啊,高不成低不就
|
46
yinmin 2023-12-06 18:01:33 +08:00 via iPhone
全栈肯定好啊。对内:将来更容易升 leader ;对外:能接单做私活; 将来:跳槽就职范围广些
|
47
horizon 2023-12-06 18:34:40 +08:00
国内啥公司用 nextjs
|
48
RealJacob 2023-12-06 19:17:10 +08:00
@horizon 看具体的业务吧,我在某大厂前端我们启的服务端渲染的项目就用的 next ,主技术栈还是 react 。其他的 nestjs ,node 啥的组里都有用到过,尝试新东西嘛
|
49
roundgis 2023-12-06 19:50:51 +08:00 via Android
@crazyTanuki 你是說 php?
|
50
iamtsm 2023-12-06 22:18:06 +08:00
我是从最开始的 java 和 js 全栈偏后端,然后转 node 纯后端,然后又转 python 纯后端,业余也写开源产品和工具,基本都是前后/设计/运维一套梭。
所以我个人是认为如果技术是全栈的,后续的选择性会很好,但是我觉得不应该局限于开发,可以涉猎一些设计,运维,运营方便的事情 |
51
gogogo1203 2023-12-06 22:58:26 +08:00
@RealJacob 我好奇你们有讨论过 server component 吗?纯好奇。我实在不清楚:如果不部署到 vercel, 怎么用 server compoennt?
|
52
dayeye2006199 2023-12-07 05:24:24 +08:00
国外挺好的,创业公司尤其需要。
国内基本上快挂了,因为个人开发,和小公司开发的生存空间快被挤死了 |
53
westoy 2023-12-07 09:14:58 +08:00
全干反而不值钱, 领七八千一个月的网建外包各个都是全干
除非你想创业 |
54
wocao666 2023-12-07 09:31:21 +08:00
如果是后端,想走全栈,那我觉得只需要清楚前端的主要技术栈就完全够了
什么 ES6 、vue3 、vite 、nodejs ,够自己一个人开发出一套完整的应用就行,前端技术够用就行 深度的话还是继续专研后端吧 记住:什么都会等于什么都会一点点,什么都会一点点那就等于什么都不会 |
55
keymao 2023-12-07 09:34:16 +08:00
全栈不全栈的,其实说白了不就是用到什么就得会什么嘛,这块后端的人更有优势一些,会点前端更容易。
|
57
RealJacob 2023-12-07 10:38:05 +08:00
@gogogo1203 用的不就是他的同构能力么,如果 server component 不能用那用 next 还有啥大的意义吗? next 的 server side 本质就是 node ,vercel 帮你提供的是更快更便捷的部署,以及自带的服务端日志等等能力。不代表他只能在 vercel 用啊,即便你自己启项目你也可以用 aws 的 amplify 以及其他类似服务去部署试试,除了要自己处理一些脚本文件和日志等等能力,功能上是不会有太大差别的。。。如果他真的只和 vercel 绑定这些核心能力,他不会是这么火的一个框架的。。。
|
58
gogogo1203 2023-12-07 12:20:12 +08:00
@RealJacob 我的问题是:除了 vercel 自带的环境,react server component 怎么划分和执行 server component. 我看了这么久,没有找到除了在 vercel 部署外的第二个解决方案。
|
59
gogogo1203 2023-12-07 12:27:09 +08:00
@RealJacob 我的主要疑惑: 我原来是 go 后台,react 通过 file server 部署。 现在如果用 server component, 是不是整个后台就要重写了。
|
60
lujiaxing 2023-12-07 13:32:45 +08:00
不算是什么好方向. 应该说软件开发 (IT) 都不算是好方向.
如果你不准备出国, 那么唯一的好方向就是考公务员. --- 如果你就一门心思还是准备做开发的话. 全栈几乎是必然的. 如果你确实很屌很牛逼 985 / 211 本科毕业 + 985 / 211 研究生以上, 阿里腾讯字节华为等大厂 offer 随便挑, 那你确实可以专精前端 / 后端. 这些大厂基本上进去从入职到离职基本上就只干一个活儿. 如果你不是, 那全栈不是好不好方向的问题. 是必然的问题. 事实上是: 中小型企业普遍不分前后端. 基本上招进来之后就是从 css 到 k8s 全干. 后端的话建议就认真学好 java 跟 java 相关的 SpringBoot, Spring Cloud, Dubbo 等. 以及 Docker, Docker Swarm, K8S, ELK, 等. 前端 VUE 跟 React. 有多余的精力可以学一下 C/C++. 至于 GO 等其他开发语言都不建议深入学 (感兴趣除外). 比如 C# 现在岗位少, 工资低, 除了外企以外基本没有大厂在用. 比如 GO 基本上用的都是大厂, 拿来魔改 K8S, Docker 等. 学 GO 能顺利找到工作的大前提基本是 985 / 211 本科毕业. 如果你不是就不建议学 GO. 还有一个方向是鸿蒙开发. 鸿蒙宣布不再兼容 Android 之后有不少大厂高薪招聘鸿蒙开发工程师. 这可能是个风口. |
61
lujiaxing 2023-12-07 13:33:45 +08:00
至于 Node 全栈, 这个据我个人了解, 用 Node 全栈的公司不多.
|
62
RealJacob 2023-12-07 14:32:52 +08:00
@gogogo1203 不太理解你这个问题的意思,跟 go 后台有什么关系?还是你指的 rsc 不是在 next 里用的?如果在 next 里用的话并不需要关注 how it works 这件事啊
|
65
beiwei2008 193 天前
Boss 直聘上用全栈做关键字搜索北京地区,待遇都挺一般的,并且真正招人的公司很少
企业上项目选全栈大概率是为了节省人力成本,并且项目技术要求不可能太高,高要求的前后端分离,各找各专业人才也容易,全栈方向前后都精通的人也少。 还是走专精尖+行业积累靠谱,全栈大而全,自己玩玩还行,职业发展方向还是算了 |