1
HongJay 2020-04-14 23:24:29 +08:00
属于放弃所有优势,建议转大前端
|
3
sty 2020-04-14 23:48:51 +08:00 via Android
后端好找工作,都是初级要求的话,比客户端简单
|
5
zhgg0 2020-04-14 23:58:24 +08:00
5 年客户端开发转后端两年了,相比客户端,后端开发真简单,客户端各种乱七八糟的兼容问题太烦了。后端也更容易学,并且需要学的知识有范围,各种中间件原理都看一遍就行了;并且那些知识基本永不过时,数据结构基础好就学得很快。感觉这两年转后端的进步,比之前 5 年的进步还大。
|
7
zhgg0 2020-04-15 01:05:09 +08:00
@FutherAll 之前是安卓,转的 java 后端,转之前 JavaWeb demo 都没写过,转后直接和别的后端开发同样的需求,不会的就让别人稍微提点下。
|
8
Mohanson 2020-04-15 01:15:02 +08:00 via Android
能转的话可以考虑下转啦,后端对认识计算机体系结构会有帮助,相比框架,工具,后者更是圈子里的硬通货(跑在操作系统上的程序会比跑在浏览器的程序有更多机会了解操作系统和计算机本身
|
9
RRRSSS 2020-04-15 01:24:49 +08:00 1
我就是前端转后端,其实主要是思路的转变,业务上干活也差不多。
给你比较一下,我之前前端是 TypeScript,转后端 Java,什么类型、接口这些概念都能理解,上手很快。 说了那么多,还是要看自己努力的程度的,比如我之前团队就是不用 TS,我就自己学,在自己的业务项目上用,才能理解静态类型语言的魅力。再比如之前团队有个自己维护后端项目是 Nodejs 写的,有人离职,没人接手,我就主动接下来了,然后顺便学习了 Docker 、Nginx 。突然感觉自己这几年还是挺励志的,哈哈。 前端转后端,除了语言,最重要的是思路的转变,前端讲究还原度、体验,后端讲安全、qps 。 说了这么多,要是感兴趣的话,投个简历呗,大家一起学习。 邮箱:Z2FveWlib2JvYm9AeGlhb21pLmNvbQ== |
10
fookwood 2020-04-15 01:25:50 +08:00
我跟 @zhgg0 一样,五年安卓转的 Java 后端,因为兴趣和有项目需求转的,技术感觉还 OK 吧,没什么大的障碍,就是找工作的时候,没有什么优势,猎头也不太愿意推 Java 相关岗位
|
11
RRRSSS 2020-04-15 01:27:23 +08:00
接上一条,还要考虑你自己的情况,比如年纪,比如是否愿意在技术上再花一些功夫,毕竟不是说转就转的。
举个例子,你的目标是一座山峰,要是你现在的路就能上山顶,又何必走另一条路呢 |
12
JayFang1993 2020-04-15 09:31:21 +08:00
你笑客户端画 UI 我笑服务端增删改查
|
15
FutherAll OP @JayFang1993 确实也有这个顾虑,不知道写起业务来是不是都是 crud
|
17
jackchao7432 2020-04-15 10:14:53 +08:00
不建议,你在客户端能达到的高度,基本上也决定了你能在服务端能达到的高度。发展空间取决你自身素质,属于极少数人。
|
18
weirdyu 2020-04-15 10:23:38 +08:00
服务端发展空间明显高于客户端。
|
19
TimeRain 2020-04-15 10:27:18 +08:00
后端开发一点也不比前端移动端简单,建议不转,抓住自己优势
|
20
FutherAll OP @jackchao7432 主要是想从职业发展的角度再看看,比如假如转了,以后再找工作可能是不是就有劣势了,毕竟相当于空白了一段工作时间
|
23
rudy24 2020-04-15 11:41:46 +08:00
为什么不能回复?
|
24
damngood 2020-04-15 11:43:35 +08:00
这个开发难度。。。 作为一个常年两边都捣鼓的人来说, 都差不多, 这个看需求.
有的需求难度在客户端, 有的需求难度在服务端. 就拿我自己做过的项目来说: 1. 之前做的一个 Apple 平台上的项目, 客户端实现字典, 而且支持模糊查询, 还有大量图文排版还要兼顾性能等等等, 这种项目客户端的难度也不小. 而且这还不算是高难度的. 2. 之前做的一个棋牌服务, 大量的计算都在服务端. 为了让计算更快, 消耗更少的 cpu 和内存在算法和各种地方都要仔细考虑. 而且这也不算是高难度的. 但是最关键的一点区别是, 做服务端的时候很少有人在后面指点说这个左边移一点那个右边移一点, 几乎没有. |
25
crackhopper 2020-04-15 11:53:33 +08:00
爱折腾就试试。我全部都做过,目前看来最大的好处就是创业会比较需要;坏处就是比单独深入在某个领域的人来说,不够精通,找工作劣势。
|
26
FutherAll OP 再补充一下我的感觉:
1. 客户端主要是平台依赖性比较高,日常开发基本是直接面向用户的体验,需要覆盖的繁琐面比较广。发展方向长远看一个是往架构方向,一个是往底层方向。 2. 最近了解了一些服务端开发模式,好像大部分的开发业务可能都是在写 API 、调服务,包装解析数据等等,大的公司都有比较完善的中台服务,可能日常开发也很少能接触到比如网络、DB 、消息队列这种。但是从长远的角度看,是不是有往这些方向发展的可能 |
27
BoomJoe 2020-04-15 15:51:12 +08:00 via iPhone
我之前也有类似的想法,主要是自己做客户端遇到瓶颈,业务上也没有深入的机会。团队也有客户端转后台的。后来学了一段时间 go 后面发现其实做前后台,都会有类似的情况。当然对比之下后台技术栈更广,也更稳定。大前端变化更快。
而且习惯了客户端开发,一开始会感觉后端逼格更高的错觉😂。但是回头想一下客户端可以深挖的东西也很多,逆向安全,跨平台,热更,网络乃至性能优化。可以尝试去了解一下。 对于这种情况其实我更倾向于回头再学一次基础,比如计算机系统,网络,算法数学结构,因为不管以后做什么都可以用到~ 这是我个人的见解,希望对楼主有用 |
28
vivili 2020-04-15 16:01:00 +08:00
并不能搞钱,并不能阻止你三十岁后退休。总结没啥卵用
|
30
FutherAll OP |
32
BoomJoe 2020-04-15 19:41:21 +08:00
@FutherAll 我理解的话,不要仅仅只关注到代码语言层面上,很多解决方案或者抽象思想是殊途同归的,举个例子像大前端的代码架构设计其实思想都是通用的,不管 MVC, MVVM, MVP 在大前端基本思想都是一样,都是模块解耦,提高复用,数据驱动 UI,只不过可能平台不一样处理细节有差异。17-18 年已经开始鼓吹 iOS 没人要了,但是看看目前 iOS 的招聘需求还是很缺的。
你说的代码在后台复用高其实我觉得也还好,特别是微服务或者说容器流行起来,我个人理解开发语言对后台开发的影响更少了,甚至我也遇到过不同服务用不同语言开发。但是都离不开对基础的理解,而且多数目的都是为了高可用高并发的目标推进,根据业务进行不同的架构设计,对数据库、消息队列、rpc 、负载均衡等进行不同选型。如果一般的业务开发,其实也是各种调包 |
33
BoomJoe 2020-04-15 19:42:35 +08:00
@FutherAll 另外客户端复用度比较低这个,其实你可以看看 google 的一些项目,比如 chromium,也是一个客户端,但是也是差不多兼容全平台了
|
34
FutherAll OP @BoomJoe 但是感觉国内公司都是敏捷开发,堆需求,真的就是大部分时间都在调各种复杂的交互。
|
36
Sivan 2020-04-15 20:43:16 +08:00
其实都属于大前端范围,语言学会后,经验可以复用。大前端范围空间也很广。
转后端才是之前的经验几乎白费,但是拓宽横向知识,在纵向积累达到一定深度前可能只在小团队做技术管理岗会有优势。 |
37
ArJun 2020-04-15 20:52:53 +08:00
如果你在学校的基础扎实,mysql 和数据结构算法基础还可以推荐转,转的成本也低
但是你如果没有一点后端基础,那还是先慢慢学吧,不然比较坑了 |
38
FutherAll OP @Sivan 有这个顾虑,而且接触到的一些技术部门 leader 都是客户端出身的,可能是样本量比较小,或者是客户端离产品和产品形态更接近
|
39
FutherAll OP @ArJun 基础知识还好,但是 mysql 、mq 这些基本没用过,如果日常开发入手对这些依赖大吗?感觉好像是偏中台一点的
|
40
ArJun 2020-04-15 21:17:55 +08:00
@FutherAll crud 基础都不会,你想写 bug 吗··
还有后端对于整体架构要求挺多的,虽然用不上,但是基本会问微服务,分库分表,mysql 性能优化,大数据处理等等.. |
41
ArJun 2020-04-15 21:19:26 +08:00
数据库和数据结构算法是后台的根基,掌握的成熟程度严重影响你的未来薪资,
当然也有吹牛成功个别的特殊案例 |
42
newtype0092 2020-04-15 21:28:25 +08:00
转了 3 年了,不用画 UI 、不用配适各种机型、不用处理 Android 和 iOS 各种版本差异问题是真的爽。。。。
后端很多东西只要你有精力可以看到很深的地方,客户端底层很多情况下接近黑盒了,厂商驱动、各家魔改操作系统、各种流氓与反流氓操作,真的难受。 总的来说,如果你很有想法,喜欢 show 自己的点子,客户端(前端)能让你快速搞出好玩好用的东西,如果你不太有自己的想法,只是想钻一下技术,那后端肯定收益更高更长远。 |
44
FutherAll OP @newtype0092 几年工作经验转的,出来面试的话感觉如何
|
45
mars0prince 2020-04-16 10:20:32 +08:00
不推荐,程序员职业生涯本来就很短,服务端后端到最后都是拼加班,要是刚工作一两年还可以考虑,三年以上就没意义了
|
46
newtype0092 2020-04-16 10:26:17 +08:00
@FutherAll 也 3 年左右吧,内部转的。
语言应该不是问题,本来做客户端什么 java 、C++、C#、Lua 之类的都写过,换成后端的 Java 、PHP 、GO 、Python 之类也是大同小异,主要看下语言特殊特性就行。 计算机网络和数据库是很重要的两块,我以计科专业基础还算扎实,这块没学过的话一定要好好补一下,不然以后很难受,基础有了很快熟悉一下 Nginx 、MySQL 、Redis 之类的就能上手。 Linux 应该要用的 6 一些,毕竟一直和服务器打交道,建议能上 mac 上 mac,没条件就格了 windows 直接装 Linux 日常用,开始恶心点但很快就习惯了。 |
47
newtype0092 2020-04-16 10:30:31 +08:00
@mars0prince 这个倒是,客户端你再紧急的需求提审了就不能有什么大动作了,热更新现在也各种被针对,不会有太紧急的情况。
后端线上出了问题真的就是救火了,哪怕休假的时候,真的出问题了得想一切办法处理,不然后果很严重。。。 |
48
mars0prince 2020-04-16 15:41:51 +08:00
@newtype0092 我打错了,是客户端后端,我的意识程序员到最后就是拼 PPT 能力,或者拼加班能力,或者全拼,和你从事前端、后端、客户端,关系不是很大
|