互联网公司程序员的职责

本文讲述了互联网公司程序员从初期的重架构、轻代码到逐渐重视代码质量的过程。早期程序员主要关注架构和手工运维,随着技术发展,基础服务自动化,程序员的价值转向业务理解和代码质量。最终,无论公司处于哪个阶段,【业务】+【代码】是程序员的核心竞争力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚进互联网公司,很长时间的感觉就是公司不重视代码质量,现在已经在互联网做了接近十年,回头想想,不重视代码其实背后是有其发展的必然性的,但随着技术和公司商业的发展,你会发现,重视代码质量又会成本必然选择。

阶段一:重架构重手工运维轻代码

在阿里或京东技术并不成熟的时候,各大电商比拼流量,比如阿里巴巴的双十一大促,京东的双十一,大家都是比拼谁流量大,谁没有挂;电商研发部门的考核指标就是能抗量双十一,六一八。通过这个阶段的对话来体现下:

  • 程序员说:这段代码写的不够优秀,我们优化下?
  • 领导说:现在单库扛不住了,赶紧的优化成分库分表,再加个Redsi集群抗写,代码优化不着急,不出问题就行了。
  • 程序员说:我觉得这些业务代码,可以这样这样改造下,会更好维护。
  • 领导说:赶紧着,马上双十一了,快对系统压测下,看看服务器,数据库和Redis要不要扩容,系统没事别动,尽量少改。
  • 程序员说:我应该写单元测试,变动业务的时候出Bug更小。
  • 领导说:业务上线有测试;大家要有责任心,程序员必须24小时5分钟内处理各种问题,手机必须时刻关注报警短信,要随时摘掉性能不好的服务器;网络出问题,要随时切向备用机房。

程序员的核心你会发现根本不是编程,通过部署架构来优化心性能(比如分库分表,水平扩展Redis集群),24小时随时处理程序的各种突发问题(盯监控,切换配置,摘除不可用资源),代码质量,不好意思,可能有少部分人在乎,但整体上真的没人在乎,从公司视角看下就能解释了。

 

公司商业视角:各种资本都在看系统能不能撑过双十一,这堆程序员不管他们怎么做的,一定要搞定系统不挂!一层层管理者都是系统挂了直接走人!不难理解到程序员这自然变成了这个状况。

阶段二:沉淀基础服务与运维自动化

随着时间推移,群体(公司和程序员)会发现第一阶段的监控和容灾手工处理其实可以自动化的,高并发的方案是可以沉淀为很多基础服务产品的,并且形成的基础服务和监控产品是可以对外商业赋能的,比如阿里或亚马逊提供虚拟服务器服务后,也会把自身高并发业务沉淀出来的消息服务,缓存服务,数据库服务对外卖钱,这样就形成了一个良性循环,内部高并发场景孵化出稳定的商业产品,商业产品卖钱外部客户(广告就是,我们的产品在阿里的双十都能扛过去,你这点流量就放心用吧),有盈利后,基础服务团队就可以招兵买马,基础服务产品就会越来越完善,基础服务产品的完善也会让阿里的电子商务系统更完善,这个时候你发现原来的程序员还能做什么呢?原来做的发现都已经自动化产品来做了。

  • 程序员说:我能加班,有责任心,能24小时摘除坏的服务器。
  • 公司说:不好意思,现在服务化治理系统会自动摘除性能不好的服务器。
  • 程序员说:我能开发基于Redis和数据库分库分表的大并发程序。
  • 公司说:不好意思,现在有成熟的数据产品,只需要新人按照成熟的方案编写少量代码就可以支持高并发。
  • 程序员说:我可以备战双十一,加班半夜去压测系统的瓶颈。
  • 公司说:不好意思,现在压测系统只要跑指定好的脚本,会自动生成压测报告,只需要几个人来维护脚本就行。

到了这个阶段,如果一个原来需要30人的团队,如果达到同样的效果,现在需要5个人左右就够了。

 公司商业视角:这批程序员薪水这么贵,能不能少点人;咱们公司的系统这么牛!能抗双十一,最好把这里边的基础产品卖钱,这样可以卖云服务器,云数据库,云缓存,云消息系统,经过流量检验的产品很有卖点,云服务是个巨大的市场。

阶段三:程序员的价值

这个时候,作为程序员的你什么才是你最核心的竞争力呢?

前面你熟练操作各种监控工具和预案,不好意思,这些是运维工具做的;

前面你了解各种互联网架构,并能实现,不好意思,现在几行代码就搞定了;

现在只剩下业务代码的书写了,顾名思义,重要的是【业务】+【代码】

你会发现最终所谓的互联网架构其实并没有想象那么重要,你说那我去做运维工具或基础技术平台?那你会发现代码更重要了,因为基础技术平台的【业务】+【代码】中的业务需求就是互联网架构大并发,就是【互联网架构】+【代码】了,架构知识作为需求出现了,并且这个需求相对稳定,所以更突出了【代码】的比重了。

总结:作为程序员或架构师,你会发现最终最核心的还是【如何写好代码】,绕了一圈,你会回到起点,如何命名变量?如何IF-ELSE,如何组织代码块?如何抽取方法等基础问题才是你面对的本质问题。

职业规划

不管你的公司处于哪个阶段,都应该重视代码 如果处于阶段3,可以选择去做基础工具开发,核心竞争力就是【代码】 如果处于阶段3,可以选择留在业务团队,你需要成为业务专家,核心竞争力就是【业务】和【代码】 如果处于阶段3,你可以换个处于阶段一的公司或团队,继续发挥【互联网架构】的价值 不管怎么样,好像都逃不出代码,【X】+【代码】 如果你想过得开心,同时你不喜欢代码,那你还是换个职业,别做程序员或架构师了 如果你想过得开心,同时你喜欢代码,那你可以只找个喜欢的【X】就可以了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值