做增删改查有前途吗?
经常会听到一些开发小哥自我吐槽,每天的工作都是CRUD,感觉自己要废了;也听到过一些“开发大佬”吐槽身边的其他开发小哥只会增删改查,感觉他们要废了。
什么是CRUD?
我们在管理、操作大量数据的时候,针对数据库的添加(Create)、查询(Retrieve)、更新(Update)和删除(Delete)等基本操作就是常说的CRUD。CRUD工程师有时也作为一种调侃性质的标签,为广大工程师所熟知。
做增删改查有前途吗?
不得不说这是一个很现实的问题,先说结论:所有技术都是为业务进行服务,我个人认为CRUD才是公司业务的常态。
从表面上看,后端相当多的工作量都是CRUD,所以很多开发人员想避免或者大量减少这些重复劳动,这种心态可以理解。CRUD工程师的主要职责就是建表、封装接口、然后让接口输出数据符合客户端需求。实际上这里面依然牵涉到许多充满技术含量的东西。
从前期的需求收集,需求分析,需求评审,方案涉及,发布计划,测试计划,线上监控,事后补偿,这一整套流程你能不能深入参与进去?每一个接口的性能能不能做到极致?每一行代码是否足够优雅?这些都是决定你是不是准备一直只做CRUD。
举个例子,就说数据库建表,也并非想象中那么简单。例如主键是用自增序列,还是用UUID,该怎么设计索引,如何设计缓存,如何运用分表分库策略?这些看起来很简单的东西往往并不简单,从海量的用户需求中,分析出与系统息息相关的核心部分,并分析出符合用户需求的核心领域,这种业务分析与设计能力是一位IT工程师非常重要的核心技能。
除此之外,代码的质量本身,也是一件值得深入钻研的方面,其他软实力包括沟通技能、架构能力、风险意识,也都会在这些CRUD的开发过程中得以体现。
如果你已经成为行业的大牛,就当我什么都没说。而对于其他总是认为CRUD毫无挑战的开发人员,你大概率已经走在了云程序员的路上。
回到主题:做增删改查有前途么?
不论是技术,还是业务,最终目的都是为了创造出价值来,要想创造出更大的价值,这二者是缺一不可的,作为一名程序员,要清楚的认知所有的技术和架构都是为业务服务的,IT要成为业务的伴侣。技术一定要强,这毕竟是自己的看家本领,但是也不要忽略对业务的熟练程度,在某一个平台下工作,只有业务比其他人更熟练,才能使自己更具有竞争力,那些对业务熟悉不屑的程序员就等同于拒绝了发展的机会。
我们的最终目标是成为真正合格的工程师。
聚焦技术与人文,分享干货,共同成长
更多内容请关注“数据与人”