V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
azh7138m
V2EX  ›  职场话题

初级前端的离职碎碎念

  •  2
     
  •   azh7138m · 2020-06-29 21:43:50 +08:00 · 6428 次点击
    这是一个创建于 1606 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我在字节这一年

    17 年毕业 双非 渣前端,19 年初跳槽到字节

    tldr

    过去一年自己的成长过慢,最近对自己成长的焦虑感越来越强,所以选择离职出来看看。


    以下信息均与对前 /现 /将来的老板所述一致。

    本人可以接受加班,若对加班 /内卷 /工贼行为感到不适,请及时关闭页面。

    我现在依旧觉得字节会是内地发展最快的公司,前景十分好,能从腾讯手上啃下用户时间的都不简单。

    没有啥绝对的好与不好,只有适不适合自己,值不值而已。

    仅为个人感受,不同的人体验应该会不一样。

    去年跳槽的原因

    第一份工作做了两年(实习的时候就在了),大部分时候是面向内部员工的系统,天花板肉眼可见,业务场景单一,自感成长空间已经不大。

    19 年初的字节给人发展势头很猛的感觉,想去看看。

    现在离开的原因

    在字节我应该算小程序工程师,业务上用到的库主要是 wepy+redux,一个非常细分的小业务线。

    平时看分享比较多的可以回顾下,快手某员工某次分享对小程序的技术评价 :)

    排查问题链路过长,运营去年投诉过响应慢,但是这个业务上面向终端用户只有我一个前端,排查问题非常吃力,且消耗时间。 吃力分很多维度

    • 用户问题需要一个 case 一个 case 看,归纳困难
    • 链路长,某次,一个问题追查到最后是 rust SDK 的一个时序问题(?),这个问题花费了我一天的时间,持续的推动上游的上游的上游团队定位问题让我感到痛苦(花了很多时间,但是你的业务产出几乎没有)
    • 我依赖的直接上游提供的客户端 API 质量堪忧
    • 有些东西大家没接触过,去年我看了很多 iOS/Android 的文档,就为了定位一个小问题
    • iOS 13.0 ~ 13.2 糟糕的质量,导致一个问题我来回跟进了得有两个月,不断逼迫我的上游增加埋点,还要联系字节内的用户用测试包测试,最后发现是 iOS 的问题,当时对那个 iOS 开发的态度有点糟糕,感觉有点不好意思

    垃圾 wepy 毁我青春。

    累和加班其实不是啥大的问题,糟糕的是,劳累的一天结束后,我今天做了什么?累的原因是什么?我今天的成长在哪里?这种微妙的迷茫感充斥着我。

    无法从工作上获取成就感+糟糕的问题排查体验+正好有人打电话问要不要看看新机会,促使了这次离职。

    为什么不换个业务线看看呢?

    离职的时候和 leader 聊了大概 40 分钟,看法并未得到统一,对新饼并不感兴趣。

    其实按来之前的 JD,我也没想到我要做的业务是这样子的。。。

    字节那些有趣的地方

    内网有个 ByteKM,上面有些分享很厉害,也很有趣。

    之前故障发全员邮件,过滤器把 p0 故障筛选出来,特别下饭。

    使用上的问题感觉响应很快速,我反馈的 bug (非我业务上游,一些 app bug )感觉很快就有修复。

    实名表扬下 starling,我觉得很好用。

    Data 系统惊人的好用。

    但是有些内部系统的前端一言难尽,你能看到 react 里面的 key 是 [object Object]

    包饭其实是个让人纠结的事情,吃多了会胖,吃少了感觉亏。

    现在觉得可惜的地方

    今天账号被停用的时候想起芝士计划的 E 卡没有兑换,血亏。

    最后三个周匆忙做了重构( wepy 到 taro ),只验证了主流程,其他流程和样式还存在很多问题,感觉对不起接锅的小姐姐 :(

    45 条回复    2021-11-18 01:54:19 +08:00
    fhsan
        1
    fhsan  
       2020-06-29 22:01:24 +08:00
    一个 api 三天写好,前端文档三天还没看懂
    aaronlam
        2
    aaronlam  
       2020-06-29 22:07:55 +08:00
    但是从言语中还是感觉楼主很强呀,能否给一点初级前端发展的建议。
    azh7138m
        3
    azh7138m  
    OP
       2020-06-29 22:09:37 +08:00   ❤️ 2
    @fhsan
    三天写好?出了问题,我一个业务方,跑版本数据,来告诉客户端是哪个版本改崩的?
    然后我的代码里面就充斥这奇怪的兼容代码
    什么某个版本启动的时候不能调用 X API,Android 会 crash
    什么版本之前切后台时要清理定时任务,Android 会 OOM
    什么版本之后,iOS 你要标记用户是因为什么切入后台的,因为这个版本开始,JS 执行会直接暂停,会污染统计数据
    我一个前端,一个业务方,是遭了什么罪,得去给客户端三天写好的 API 做这些兼容?
    lovedebug
        4
    lovedebug  
       2020-06-29 22:13:36 +08:00
    前端的坑随着时间流逝越来越多,直至无法填满,然后重做或者开新产品线
    throns
        5
    throns  
       2020-06-29 22:16:39 +08:00 via iPhone
    同是一名初级前端,刚开始工作的时候,面对一些陈年老坑的项目非常抵触,做着很痛苦,后来慢慢地调整了心态,一步步改造,自己忍耐度不断提高,抵触的情绪也消失了。个人觉得心态的调整非常重要,很多成长都需要自己去挖掘,和要好的同事多交流很重要!
    linghutf
        6
    linghutf  
       2020-06-29 23:33:00 +08:00 via Android
    查问题确实费劲还不讨好,没什么产出。而且 case 多了也并不能累积经验,因为千奇百怪。头条后端也这样吗
    daquandiao2
        7
    daquandiao2  
       2020-06-30 06:12:17 +08:00 via Android
    前端面试进去要算法吗?
    大部分人没有涨薪?入职即巅峰?
    mxT52CRuqR6o5
        8
    mxT52CRuqR6o5  
       2020-06-30 07:32:23 +08:00 via Android
    @azh7138m
    安卓这边用户不愿意升级应用,强制升级可能造成用户流失,结果就导致开发要各种兼容旧版
    Ios 你描述的那个问题感觉应该让 api 提供方解决
    xwhxbg
        9
    xwhxbg  
       2020-06-30 08:59:52 +08:00
    2020 年中旬了,还没用 Typescript 真的是自己给自己找坑
    wotemelon
        10
    wotemelon  
       2020-06-30 09:38:57 +08:00
    @azh7138m 简直太真实了,现在代码充斥着各种 magic number
    fhsan
        11
    fhsan  
       2020-06-30 09:42:22 +08:00
    @linghutf 头条目标十万员工,怎么都要有人填坑
    030
        12
    030  
       2020-06-30 09:44:24 +08:00
    @mxT52CRuqR6o5 不升级还不是自己作,越升级体验越差,国产应用不配自动更新
    mxT52CRuqR6o5
        13
    mxT52CRuqR6o5  
       2020-06-30 09:49:27 +08:00 via Android
    @030 我指的是应用市场的问题,google play 和 app store 默认都会自动升级吧,而国内应用市场混乱导致升级不能保证
    deepred
        14
    deepred  
       2020-06-30 10:07:33 +08:00
    老哥很厉害了。我当初字节呆了 3 个月就跑了,可能当时心态崩了吧。
    nianyu
        15
    nianyu  
       2020-06-30 10:14:13 +08:00
    不想当工具人,想实现自己的价值,就得自己有产品观念,把自己的东西做成产品,翻身做主人
    azh7138m
        16
    azh7138m  
    OP
       2020-06-30 10:15:11 +08:00 via Android
    @xwhxbg
    > 2020 年中旬了,还没用 Typescript 真的是自己给自己找坑

    匆忙重构后是 ts,但是重构前的主要流程,我都有写 jsdoc,出入参类型还是有的

    19 年初离职的时候,我们项目代码有 1/3 是 ts ( 10w 行),应该算是个中型应用了
    委实说,ts 并不能解决业务问题,只是用来降低协作成本与后期维护成本

    但是我看全文,也没吐槽这个东西,老哥是怎么脑补出来的。。。
    nuanyang
        17
    nuanyang  
       2020-06-30 10:38:30 +08:00   ❤️ 1
    评论区一些老哥脑补过于严重,感觉到一点点恶意
    1044523901
        18
    1044523901  
       2020-06-30 11:00:08 +08:00
    @throns 现在就不抵触陈年老项目了?
    beizhedenglong
        19
    beizhedenglong  
       2020-06-30 11:07:45 +08:00
    离职去哪了
    serco
        20
    serco  
       2020-06-30 11:27:49 +08:00
    字节的一些工具真的烂到令人发指。。。巨量引擎日常 500,各种小 bug 更是多到数不过来。。严重影响我烧钱的心情🐶
    xwhxbg
        21
    xwhxbg  
       2020-06-30 12:18:40 +08:00
    @azh7138m 因为你抱怨的所有问题都可以通过 Typescript+单元测试证明自己的服务没问题,而不是去 debug 后端,前后端分离以后因为后端有单测,rust 各种编译期检查,所以人家可以自信的说自己的 service 没问题,是前端 bug,你找出对方的 bug 是没用的,你得自证稳定性,不然出了问题你猜老板第一个 @谁?
    rioshikelong121
        22
    rioshikelong121  
       2020-06-30 12:20:52 +08:00
    bug 路由器?
    azh7138m
        23
    azh7138m  
    OP
       2020-06-30 12:32:53 +08:00 via Android
    @xwhxbg
    > rust 各种编译期检查,所以人家可以自信的说自己的 service 没问题

    这么自信啊,那 rust 时序问题坑到我是我的问题喽? hyper 请求 HTTP/2 服务慢于 HTTP/1.1 也是我的问题喽?

    前端代码没有问题,客户端出现问题,你就得兼容,用户不会管问题到底出在哪里,运营不会,你的老板也不会。

    你要没有被上游坑过,或者没有阅读能力,可以不用强行回复。
    royzxq
        24
    royzxq  
       2020-06-30 12:36:46 +08:00
    starling 那边 oncall 处理的也很快,SDK 也蛮好用的(就是有时候有点抽风发布了不能及时生效)
    mxT52CRuqR6o5
        25
    mxT52CRuqR6o5  
       2020-06-30 12:38:53 +08:00 via Android
    @azh7138m 是指代码层面先发请求 a 再发请求 b,结果 http 层面请求 b 先发出去了吗?
    azh7138m
        26
    azh7138m  
    OP
       2020-06-30 12:41:06 +08:00 via Android
    @mxT52CRuqR6o5
    是网络请求发不出去
    后来 rust SDK 的同学处理了,只是遇到这类问题着实心累
    我要来回看大量的日志,去找上游说明问题
    运营还一个劲的问有没有进展,太难了
    xwhxbg
        27
    xwhxbg  
       2020-06-30 12:59:25 +08:00   ❤️ 3
    @azh7138m 我做过 2 年前端,然后 3 年后端,js,ts,rust,node,golang 都写过,事实是老板不会管问题真的是谁的,他只 @最不自信的那个人,客户端有问题你应该据理力争让客户端修复,而非懒得跟他们计较,我原来做前端的时候调用 native 实现的地图 SDK,然后出了问题客户端说我调用 SDK 的时机不对,此时我就不会问时机是什么,而是督促客户端修复一个稳定的 SDK 出来。后端 bug 同理。
    听你的语气感觉应该是个暴躁老哥了,我以前也以为技术最重要,那帮菜鸡不会修那我自己动手,然而客观事实是国内的公司主要是管理问题,如果你的上级不强硬,你得自己跟客户端后端甚至设计师去博弈,不然最终会发现设计师丢给你一个半成品要你自己切图,后端接口连他自己都没用 postman 测过,全靠前端承担所有义务和责任。

    既然你觉得我是强行评论,我觉得你可以 block 甚至 report 我,但是客观事实不以情感为转移。
    seki
        28
    seki  
       2020-06-30 13:17:22 +08:00
    不知道是不是字节内部的文化和流程有特殊性,运营肯定优先找到前端这没问题。如果有时间当然可以到处查代码,把最终问题都找出来,但是作为前端,当确认不是自己的问题的时候,应该可以把 case 转给其它团队的吧。不应该都挂在你的头上
    ai277014717
        29
    ai277014717  
       2020-06-30 13:26:22 +08:00
    @azh7138m 这些都是常规操作。远离混合开发就好了。
    azh7138m
        30
    azh7138m  
    OP
       2020-06-30 13:32:07 +08:00 via Android
    @xwhxbg
    > 客户端有问题你应该据理力争让客户端修复

    客户端要修复和你要兼容并不冲突,已经发上线的版本,你不可能说不兼容就不兼容

    除非真是大问题,否则一般不会是我老板来 @我,正常都是 运营 /Pre sale 同事来 oncall

    我们开发要接 oncall,用户报过来的是问题,你要修复

    我并不暴躁,PM 甚至觉得我有耐心,能和用户一遍一遍解释问题(🐶

    后端都是自己团队的,问题也很少出,出了修的也很快,上游都是你依赖的其他团队

    非重要的 bug 都得前端自己兼容,修复有可能会到下个双月

    我没有觉得上游蔡,只是频繁的排查客户端问题让我心累

    为什么不让客户端自己去排查?你没有石锤的证据,推都推不动

    比如客户端有个很严重问题,来回扯皮了半年,感觉终于要开始着手修复了

    我要是让运营告诉用户让他们等半年,估计我就先被打死了


    @seki
    to B 业务,现在都是用 Data 反馈平台,过来基本都是 oncall,很少有 /会用 jira
    scriptB0y
        31
    scriptB0y  
       2020-06-30 14:19:41 +08:00
    非常真诚的分享!祝楼主发展顺利!
    mxT52CRuqR6o5
        32
    mxT52CRuqR6o5  
       2020-06-30 14:29:51 +08:00 via Android
    @azh7138m 是这样的,我也帮上游找过 bug,日志翻出来对比明确是上游 bug 上游还不承认,还得我去翻他们 native 代码告诉他们哪一行写的有问题才承认
    ShaunLi
        33
    ShaunLi  
       2020-06-30 14:47:13 +08:00
    @azh7138m 你好,我是 Moka 前端负责人,我们这边业务发展很快很缺人,考虑来 Moka 这边看看吗?
    azh7138m
        34
    azh7138m  
    OP
       2020-06-30 15:35:28 +08:00 via Android
    @ShaunLi
    不了,没考虑换城市
    ShaunLi
        35
    ShaunLi  
       2020-06-30 17:32:40 +08:00
    @azh7138m 嗯,如果考虑换城市再联系哈
    mars0prince
        36
    mars0prince  
       2020-06-30 18:18:17 +08:00
    很正常的,在大公司,前端属于产品流程链最末端,只要页面显示不出来,就找你。碰见专业测试可能会抓个包帮你看下,但是绝大部分时间基本上只有你自己在盲人摸象。而且绝大部分问题都得靠前端兼容,客户端问题要发包,服务端问题影响线上,只有前端改最快。老板不在乎谁改,只在乎改的速度和改完了有没有问题。
    fe619742721
        37
    fe619742721  
       2020-06-30 18:25:19 +08:00
    同感,尤其是 toB 前端,干着干着就成 bug 路由器加半个问题推进解决家了,十分难受
    yuanfnadi
        38
    yuanfnadi  
       2020-07-01 08:53:44 +08:00
    小程序指的是头条端内小程序?还是说微信小程序。
    KuroNekoFan
        40
    KuroNekoFan  
       2020-07-01 11:53:56 +08:00
    是这样的
    客户端有坑
    老板:前端先兼容一下吧
    于是这个 bug 变成前端的了,而且一直在兼容
    可能最佳实践和规范不配西恩码农吧
    revalue
        41
    revalue  
       2020-07-01 17:00:16 +08:00
    @azh7138m 如果楼主还在里面,我是建议楼主狠心转岗的,可以去做一些新的业务部门。(某条的情况我不太清楚啊)最好转岗之后和原部门没有交集,大家好聚好散各不相干。

    最后,说到“不利于成长”,出到外面也是差不多的。
    revalue
        42
    revalue  
       2020-07-01 17:02:06 +08:00
    @azh7138m 头条那么多业务线,为什么还和原 leader 聊。 诶算了,都离职了。
    azh7138m
        43
    azh7138m  
    OP
       2020-07-01 21:42:03 +08:00
    @revalue
    > 头条那么多业务线,为什么还和原 leader 聊

    离职要和 leader 沟通的呀,老板当然要先画饼留人 :狗头:
    好聚好散是啥,我和老板也没过节。。。
    正好也想去阿里看看,就走了 :)
    AhianSong
        44
    AhianSong  
       2021-02-12 23:42:07 +08:00
    还好我分到的岗位做的是前端,小程序是真的不喜欢
    yukinotech
        45
    yukinotech  
       2021-11-18 01:54:19 +08:00
    你走的早,没碰上 lynx
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1101 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 22:58 · PVG 06:58 · LAX 14:58 · JFK 17:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.