我丧失了一项重要的能力!
Posted 码农翻身
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我丧失了一项重要的能力!相关的知识,希望对你有一定的参考价值。
01
单枪匹马搞定一个系统
刚学编程的时候,接了点儿私活,有个人的,有学校的,也有公司的,都是网站。
基本上是一个人搞定,因为简单, 全是静态的html。
使用Dreamweaver这个大杀器, 用嵌套的表格做布局,加点儿图片, 再用javascript这种“高科技”实现跑马灯效果,“客户”就很满意了。
最后用CuteFtp上传到某个空间去,用浏览器打开,测试一下,搞定,交工。
很有成就感:自己单枪匹马就能搞定一个系统,也有“钱途”。
02
继续单枪匹马搞定系统
过了几年,静态网站就不吃香了。
大家需要聊天室,购物车,甚至网上OA系统,需要CGI, ASP, JSP,Cookie, Session, Servlet这样基本的技术做支撑。
这也不难,不就是在HTML中嵌入代码吗? 像这样
<%
out.println("Hello World!");
%>
把业务都在ASP/JSP/Servlet中实现, 后台数据库一般是mysql或者SQL Sever, 用JDBC/ADO去连接访问,同样,所有的代码都在ASP、JSP/Servlet中。
系统的规模一般不大,这么干一般也没啥问题,我的脑子也能抗得住。
开发完了就上传到Tomcat或者IIS的某个目录,测试一下,交工。
相比之前稍显麻烦, 但还是挺有成就感:自己还能搞定一个系统!
03
力不从心
再往后,Spring框架来了,AJAX来了。
页面变得越来越漂亮,越来越动态,花在jQuery上的时间简直要和服务器端的代码差不多了!
服务器端的业务逻辑越来越复杂,组织机构、角色、权限、安全、工作流!再加上各种各样奇葩要求,能让人写代码写到吐。
04年左右出现了一个非常酷的快速开发框架, Ruby on Rails, 它的“脚手架”功能帮助我们迅速把项目骨架搭建起来,约定重于配置又可以把ORM的开销降到最低。RoR迷倒了一众程序员,很多人从此爱上了Ruby。
但是, 无论有什么工具帮忙, 自己一个开发系统力不从心了,需要找小伙伴帮忙才能搞定。
04
彻底傻眼
2010年以后,软件业的发展骤然加速。
前后端分离:前端的框架疯狂地出现,恨不得一天出来一个
大数据崛起:Hadoop、Hive、Spark、ES、Flume 、Kafka,Storm,Flink
每一个领域又迅速分叉、生长,最终成一颗由无数技术点组成的参天大树。
移动互联网发展对后端提出了严酷的挑战,并发越来越高,数据越来越多,而响应时间不能变长,什么负载均衡、读写分离、缓存,搜索,都变成了必备。
单个程序员,已经不可能学会所有的东西了!
写公众号有点小名气以后,很多人找我开发系统,我一评估就傻眼了:这系统又要Web端,又要手机端,还要数据分析,甚至要想整点儿人工智能......
我搞不定了, 我彻底丧失了独立开发一个系统的能力, 只能把类似的需求转给朋友开的公司去做,我在中间牵个线,搭个桥。
05
好事还是坏事?
前面啰嗦这么多,大家已经体会到了:时代的发展,已经让软件系统从单人搞定,发展到需要几十人、几百人合作才能实现的程度。
《黑客与画家》的作者Paul说:程序员要想致富,需要具备
(1) 可测量性
(2)可放大性
很可惜,现在可测量性已经极大的降低了, 之前的系统,活儿都是我一个人干的,是好是坏都是我的责任,赚多赚少是我能力的体现。
如今我的工作很难直接看到业务价值,个人的工作和别人的工作混在一起,很难区分。
公司无法测量我的直接贡献,大家是集体工作的:有人做界面,有人做后端,有人做大数据, 最终对外呈现的是一个互联网的服务。
如果我对老板说,我打算10倍努力地工作,你把我的薪水也增加10倍吧,老板肯定以为我精神出了问题。
程序员只能在某个细分领域做打工人,想换车道很难。
在大分工的时候该怎么办呢? 有两个小建议:
1. 努力量化自己的贡献(可测量性)
平时注意收集各种数据,无论是写周报,给领导汇报,还是写简历,尽可能地用数字说话,例如:
用React开发了订单应用,收入增加了15%, 客户留存率提高了20%
用Redis实现了缓存层(写了一个通用模块封装客户端对Redis的调用),由于不需要每次都访问数据库,API的响应时间提升了45%
2. 依然要具备搭建一个系统的能力
我现在虽然无法独立地开发一个系统,那样工作量太大,但依然努力保留了搭建一个系统(或者系统的某一部分,如后端、前端,手机端、数据分析)的能力, 如有需要,我就可以带着团队把它开发出来,这就是我的价值。
(完)
下面是我开的一个备份号,防止被人投诉后失联,请小伙伴们保存一下吧。
这个号不会空着,经常会发一下轻松有趣的漫画,让大家在紧张的工作之余乐呵一下。
以上是关于我丧失了一项重要的能力!的主要内容,如果未能解决你的问题,请参考以下文章