说说背景,刚好 5 年前端开发经验了,之前干的公司都是融资拿风投,冲项目赶时间的公司,说白了 toVC,看得太多没日没夜的加班了,所以想离开这个环境,找一些不需要融资的软件公司。
面试的时候说做新项目+维护旧项目,来了快三个月了,头一个月把新项目前端部分用 vue 全家桶做完了 ,接口用的 easy-mock,到现在第三个月了接口呀、立项呀什么都没消息。
同时这三个月一直在维护旧项目,jsp+jq+原生 css,我弄了 gulp 编译 jsp、新加页面换成了 vue 开发,页面直接引入,用了 gulp 把页面 js\css 抽离,做静态资源管理(也有一些恶心的东西,jsp 模板直接套到 js 里面,这些就不好弄)。
这里是把 git 当 svn 用,大家都提交到 mater,我一进来的时候就提出开分支,release/feature/fix/gitlab review/merge request 给项目负责人介绍了一遍,得到的答复是“后面慢慢改”。其实只要后端开发接口,一个个页面慢慢换过来,项目的技术就可以更新了。技术环境也就搭建起来了。
上周可能是手误把其中 2 个页面的代码搞乱了,文件变空了,提交到了 master,因为这次提交了接近 80 多个文件,没注意到,我指出其实根本原因是没有建立 merge request/code review,并且我们开发中应该提交到 release 分支,进行 merge,我们不能保证每个人的提交都没问题。主管就发脾气了,说我反驳搪塞,不承认错误。
那些落后的技术真的是毒瘤,看着就好不舒服,但主管技术视野也不足,导致很多时候不明白我在做什么。文档也不齐全,后来的人很难维护,经常定位一个问题要先查 java 代码的 controller,找到一个 jsp,在 jsp 中阅读代码,找到跳转到其他 jsp,通用函数是直接全局绑定 a 标签的一个类名。
平时也没什么事,很少加班,感觉是一间很养老的企业。 请问各位,面对样的情况,我应该怎么做。感谢各位花时间阅读。
1
helionzzz 2019-02-18 11:24:51 +08:00 1
你想折腾想加班就换,想养老就留下加入他们。
|
2
AllenW 2019-02-18 11:40:41 +08:00 1
我觉得在自己负责的项目或者模块中按自己想弄得来 当然不要影响其他人 至于团队什么的 不要说太多 那不是你应该管的
按照楼主说的情况 我建议还是按照原来的公司的标准弄吧 毕竟这种公司项目一般以稳为第一目标(懒) 如果不是那种探讨学习交流新技术的团队,你这么做只会让人觉得你在炫耀自己的才学,不合群之类的 |
3
Cbdy 2019-02-18 11:43:14 +08:00 via Android 2
如果你希望改变,就发动智慧推动。这里面本来就没有对错,只有利弊。离职也是一条路。
|
4
shylockhg 2019-02-18 11:46:34 +08:00 3
领导:想夺权吗?
|
7
zaul 2019-02-18 11:54:14 +08:00
加入他们
|
10
passerbytiny 2019-02-18 11:58:14 +08:00
前面都是新项目让继续用 JSP 被吐槽,我站楼主那边。但你这个是旧项目 JSP 被吐槽,我站楼主的对立面。
主观让你维护旧项目,然而你给重构了。这种旧项目,基本只能重做,不能重构。 抓紧找主管谈下接下来的工作重点,如果是维护旧项目而不是新项目开发,赶紧趁还在试用期立马走人。 |
12
nolest OP @passerbytiny 有理!看来我不应该去折腾旧项目的!当初我也这样想,但是心里总觉得好不舒服,后来忍不住了
|
14
simonkuang 2019-02-18 12:15:52 +08:00 2
1. 工作和职业应该分开。你这个问题,我可以理解成,“工作内容不高端,我的职业天花板太低了,怎么办?”好办,就让工作归工作,职业归职业吧。具体怎么做,楼上很多人都有提到,就不说了。
2. jsp + jq 怎么了?不高端怎么了?公司的产品市场认可吗?有用户吗?能挣钱吗?跳出程序员局部最优化的框框,从产品(市场)角度全局去看,偶尔拔高自己的视野,重新审视一下自己的工作,会发现不一样的风景。这个可能比你单纯提高所谓技术竞争力,更有价值。而且是能延续到你职业生涯 40 岁以后的价值。 |
15
nolest OP @simonkuang 明白您说的,从市场和产品角度,是以经济驱动的,而企业的运作目的就是这个,如果我也放下技术的包袱去思考以后自己的事业生涯,那早就不干程序员了,坚持干程序员,做工程师,为的是心中对理想技术的坚持,而不是大众所追求的金钱物质,房车楼,这些,够用,就行了。所以当我还在打工,而不是自己作为企业运营者的时候,我必定优先一切追求技术。
|
17
qunl 2019-02-18 12:24:19 +08:00 via iPhone
@nolest #5 想与大环境不脱节,除了加班,被无他法。毕竟新的东西坑很多,你需要去填坑,不加班根本不可能
|
18
bk201 2019-02-18 12:27:05 +08:00
技术这东西是服务于业务的,太纠结反而不好。
|
19
SakuraKuma 2019-02-18 12:37:16 +08:00
最近看太多前端说公司技术老的帖子了...
都开始面向简历编程了吗? 公司业务为主, 赚钱就好, 而且领导要是有家庭, 稳为主. 你引入一大堆东西, 发布, 搭环境, 持续部署等等... 你来加班搞咯:( 所以还是, 稳点, 如果不能忍, 换个公司吧... |
20
jzmws 2019-02-18 13:04:56 +08:00
用什么写能满足业务就可以了.你用 vue 好,用 jsp+jq 也罢.上线的系统不可能做大的改动
|
21
nolest OP @bk201 当技术还能和业务 match 的时候,同意技术服务业务。但当技术太过于落后会影响业务发展的时候,例如修一个前端 bug 需要到 java 代码找 controller,耗时接近 30 分钟,还要去问 java 代码放在哪里,当业务量一下子爆发的时候,应付不过来,才来想到要更新技术,才来堆叠工时来解决么。。。。。
|
22
nolest OP @SakuraKuma 也没在意招聘是怎样的,平时就看技术发展多一点,估计刚好和外面的招聘重合了。
也是,毕竟我不是主管,只是一个小小的前端,主管都撸 jsp,也不去较这个劲了,自己关门玩技术,忍不住走就是了。 |
24
Caballarii 2019-02-18 13:19:00 +08:00
有错要认,别找太多理由硬杠,流程并不能避免一切的操作失误造成的后果
|
25
nolest OP @Caballarii 没有不认。。而且,为什么会觉得是杠,不是应该找方法让这个问题以后不可能再出现么?
|
26
shangfabao 2019-02-18 13:26:09 +08:00
出了问题浪费了工期领导不需要担责任的么?
JSP 有的前后端绑定的,用 JSP 的项目动了基本就是前后端一块动 |
27
ryan18 2019-02-18 13:37:25 +08:00 via Android
很多老单位老项目都是旧框架旧语言在运行和维护的,全重构用新语言很多时候不实际也不划算。最近看了人类简史,重新思考了很多东西,人类这样子疯狂发展日新月异并不是一直以来,占整个人类史万分之一都不到,怎么说呢,这个样子,并不一定百分百正确。有时候,慢一慢,错一错,也未必不好。
|
29
wake1bear 2019-02-18 14:25:54 +08:00
我这个公司老项目前端也全是 jsp+jq,在项目做大升级的时候提过用 vue/react,组内大多数人都否定了。现在新项目都是 vue/react 一把梭,项目不大写着也快,就是感觉写起来没什么成就感。楼上那位老哥说的好,工作归工作,职业归职业吧。
|
30
anyele 2019-02-18 14:42:04 +08:00
楼主, 我深刻的理解你的想法, 因为我所在的环境和你一样。 不说技术更新了, 我举个栗子, 我跟领导提出更新 JDK 版本升级 tomcat,因为我们生产环境还在用 JDK7,tomcat7,被领导拒绝了, 理由是生产环境出问题了谁负责。 从这点点就看出,我与这里格格不入,我感觉到了自己不合群(估计用过 Java 的都知道,用低版本 JDK 的技术含义,意味着 JDK8 以后的重要特性,我同事都不会, 意味着很多只有支持 JDK8 以上的项目,我领导和同事都不会,大家还意犹未尽的用着 N 年前的东西)
|
31
arthas2234 2019-02-18 15:04:08 +08:00 1
找工作的时候碰到要求会 jquery 和 jsp 的一律不去,想想就坑
|
32
xiaoyang7545 2019-02-18 15:15:26 +08:00
老项目你很难改成用新技术的,尤其是并行需要更新的时候。一方面是根本没时间,另一方面是运营那边胆子小,怕出问题。
|
33
xiaoyang7545 2019-02-18 15:16:44 +08:00
我们公司推动过多次想用新框架,都以失败告终,根本没人能推的动,涉及面太广。你可以反思一下,如果领导放权给你让你推动,你能推动的了吗?
|
34
ryonanamizu 2019-02-18 15:30:14 +08:00
所以为啥要去这家公司……
|
35
BeFun 2019-02-18 15:36:28 +08:00
稳定的大项目,牵一发动全身,出了问题谁负责,只能慢慢改。
|
36
northernlights 2019-02-18 16:02:58 +08:00 1
能理解楼主的处境。我还遇到过在公司呆了 10 年的.Net 程序员,不会 linq,代码还停留在十几年前.net2.0 的时代,并且公司新项目用的技术栈要听他的。你不是公司管理人员,你不可能去改变公司的,能改变的就是自己(并不是去适应公司,落后的技术注定要被淘汰)。像楼主这样有追求的人不可能在这公司待很久。“平常没什么事、不加班”这为楼主改变自己提供了一个好的自学条件。
|
37
nolest OP @shangfabao 是的,jsp 模板直接套在 css 宽度,套在 js 里面运行的。我这小组四人,其他三人都是 java,对前端排查 BUG 经常一查就是半小时到一个上午。。连 window.location.reload 这种都不太清楚的,而这个项目是前两手帮忙做的,我来之前这个组是 4 个 java。。。
|
38
nolest OP @ryan18 如果全人类一起慢,那作为其中的一员慢下来也没什么问题,但是大环境都在加速,革新,特别是前端工具、库大波大波的来,如果慢下来,赶不上大环境,最后还是自己吃亏了
|
40
braveLeon 2019-02-18 16:51:44 +08:00
也在广州?搞得我都想去你们公司,我只想不加班,要不你来我司吧咱俩换换,哈哈,vx:15638572096
|
41
nolest OP @wake1bear 我对旧技术有些纠结,如果我不去处理,那么这个项目就一直一直往后不知道什么时候才能得到技术更新了。。
|
42
Gzp 2019-02-18 16:53:26 +08:00
有想用的新技术 可以自己找一些 idea 在自己的小项目里用用 来学 要在公司里推 肯定要自己本身对于新的技术非常精通 不然就是有大牛 以上都是个人的想法😝
|
43
nolest OP @anyele 握个爪,抱一下。以前还不懂这些的时候,觉得没什么所谓,领导说怎么就怎么的了吧,但是工作有一些年份,有一点经验,稍微有点技术视野之后,就希望能够把这些优秀、新的、高效的技术应用到自己所处的环境之中。。
|
45
nolest OP @Gzp 被上面各位指点过之后,觉得就应该自己的小项目里玩玩,公司的项目除非自己可以做主,否则还是不出声好了,但是又想起至尊宝抱着紫霞仙子说孙悟空“他好像一条狗”啊~~又纠结又难受~
|
46
daydaydayup 2019-02-18 17:19:40 +08:00
我们公司还在用 JSF 你有了解过吗?
|
47
greatghoul 2019-02-18 17:24:42 +08:00
会不会你们公司可能就做几个内容页面,然后你上了 vue,然后解决不了 SEO 问题,然后就没有然后了。
用什么技术看具体需求吧。 |
48
momuou 2019-02-18 17:53:23 +08:00
那作为一名 java 开发,jsp jq 用的很溜是什么回事?一个人当两个人用,减少成本。
|
49
nolest OP @daydaydayup 第一次听,好像比 jsp 耦合更加大,在 java 代码中控制 html 渲染
|
50
nolest OP @greatghoul 是一套后台管理系统,不涉及 SEO。如果解决 SEO 可以用 nuxtjs ssr,也是有现代的解决办法的。
|
51
nolest OP @momuou 当初前后端分离其中一个目的就是降低 java 人员的工作量,令大家术业有专攻。这个开发流程对于前端都是很不友好的,要配置 java 环境,还可以更改 java 代码,git 代码管理也弄在一起了。
|
54
lychnis 2019-02-18 19:18:21 +08:00 via Android
flag 里面也有用 jsp 是不是就觉得平衡了
|
55
yhxx 2019-02-18 19:23:37 +08:00
曾经也和你一样
现在只想不加班 能不加班让我去写 C++98 都可以 |
56
notreami 2019-02-18 19:25:28 +08:00
不爽,就换公司。
舍不得换公司,就自己探索发展方向。 |
57
CoverStory 2019-02-18 19:45:57 +08:00
我现在的公司还有用 Flex 的项目。。。。。。
|
58
daydaydayup 2019-02-18 20:07:06 +08:00 via iPhone
@nolest 确实如此,不过太重量级
|
59
UIXX 2019-02-18 20:22:46 +08:00
写了一大段,算了。汇成一句话:
技术总是随着人的需求变更的,技术可以一下子切换过来,人的习惯 /思维方式则是需要培养的。 |
60
winglight2016 2019-02-18 21:10:38 +08:00 1
你站在主管的立场上想一想就明白了,不管什么原因,你的提交产生的 bug ——虽然不知道有没有影响线上,你就要负责,你提任何理由都是“搪塞”,你不负责谁负责?再看一下你的目标,想要使用新技术——这完全是你的个人偏好,想要说服别人,不能靠价值判断——每个人价值观不一样也不可能一样,那么你能做的不是靠鄙视链来改变别人,而是改变自己融入团队然后才能谈得上潜移默化改变团队,不然都是空谈。
|
61
johnnie502 2019-02-18 21:13:10 +08:00
"我指出其实根本原因是没有建立 merge request/code review"
黑人问号,你们的根本原因是没有自动化测试吧,就算走 code review 流程能保证什么。对于一个没有完整测试覆盖率的项目,应该先提高测试覆盖率再去优化流程或者重构代码 |
62
galaxyyao 2019-02-18 23:29:31 +08:00
从描述来看,领导不支持,同事不配合没追求,项目没挑战,但看起来你心态还不想养老,还是想在技术上折腾。那么留在这家公司只会让你自己痛苦。
另外以个人观点,提交代码出的那个问题,锅至少 70%在你身上。一次性提交过多的文件,提交之前没有仔细查看所有的改动,这两个问题不应该发生在一个 5 年经验的开发身上。外加没有第一时间诚恳承认错误,轻描淡写地称之为“手误”,并甩锅到版本管理上。在主管看起来很可能被评价为态度不端正,好高骛远。印象一差,就很难会信任你在技术上的建议了。 |
63
murmur 2019-02-18 23:31:45 +08:00
技术不值钱,现在是资本的社会,只要你实现了需求,jquery 一样跑,能跑多牛逼还得看后端
|
64
q397064399 2019-02-18 23:57:55 +08:00
@nolest #21 还是太年轻,太理想主义,从现实的角度来看,这种遗留项目不出事就是最好的事情,整个团队都在养老,你在那边瞎鸡巴折腾 很让人讨厌的,另外生产效率真的重要吗?很多 ZF 的项目,一个破网站可以卖几百万,中间回扣各种油水,老板还真不一定 care 你的生产效率。
|
65
q397064399 2019-02-19 00:01:12 +08:00
9012 年了 追求技术栈的更新肯定是重中之重,毕竟这是码农安身立命之本,说不更新技术栈的 都是说风凉话的
另外还是要用现实的眼光去看待事物,很多事情 你根本没法反抗,除了改变自己去适应,别无他法。 |
66
wdv2ly 2019-02-19 08:17:30 +08:00
你一边吐槽 master 一把梭一边自己也往 master 推?如果认为 mr 能解决问题至少自己先用上吧
|
67
shangfabao 2019-02-19 10:59:43 +08:00
@nolest 所以领导不会让你动旧的项目的
|
68
eamon666 2019-02-19 13:52:02 +08:00
技术不值钱,现在是资本的社会,只要你实现了需求,jquery 一样跑,能跑多牛逼还得看后端
|
70
nolest OP @winglight2016 3 个月以来,几乎每一次代码出现回滚,覆盖,我都会说需要开分支,但一直的答复都是“后面慢慢改”,难道敲两条命令就这么难?
|
71
nolest OP @johnnie502 我同意你的观点,你的意思在代码提交后保证没问题,我的意思是在自动化测试之前,人为保证提交的代码没问题,加入测试实在期望太高了,,,我也很希望有。。
|
72
nolest OP @galaxyyao 其实过多文件,绝大部分都是这个 push 新建了 src 目录,而对于原来的 webcontent,只动了一个文件,而恰恰那个文件代码缺失了,确实是我的失误,但人是一定会犯错的啊!上次是 A,这次是 B,下次是 C,至少保证人犯错的时候可以卡住这个 push 不能 mr,对吧。
|
73
nolest OP @eamon666 的确,站在经济角度来说,要触碰市场,才有收益,而市场的接受适应性很广,只看产品和结果。但作为一个打工者,一个程序员,一个工程师,目的是把自己遇到的所有事情做到最好,追求完美,有自己的信仰。
|
74
nolest OP 谢谢各位的关注,已经提了离职,上层有人挽留,但我无法保证不被人针对,so,各位加油!谢谢!
|