记得刚踏出学校,开始工作的时候,作为一个软件行业的从业者,我一直都在考虑,如何精进自己的技术,去研究一些底层的技术,哪怕工作中根本用不到这些东西。
因为在我心目中,我所属的行业是IT行业,技术是才是IT行业的根本,其他的业务,都是增删改查,有手就行。
这种观念在我工作的前几年,根深蒂固,对我影响挺大。 但是后来,我慢慢发现,我实际的行业,并不是IT软件行业,而是金融/金融IT行业,电商/电商IT行业,数字货币行业。在这个大的业务行业里,IT只是其中起了支撑作用的一环。
从某种程度上讲,我们可以认为自己是软件行业从业者,但是呢,软件这个所谓的行业里,软件本身无法通过所谓的技术而独立存在。
为了金融系统提供IT技术能力的,我们可以叫金融IT行业,它是为金融业务而服务的。
为了制造业系统提供IT技术能力的,我们可以叫做制造业IT行业,它同样是为了制造业提供服务的。
IT技术,一旦形成一定的规模,它就变成是一种非常基础的设施,跟水电煤一样,日常你不用去感觉它的存在,但是它确实又无处不在。
所有问题都是认知问题:试想一下,如果一个行业躺平就能赚钱,并且没有多高门槛,那么所有人都会来做这个行业,从而迅速的把价格收益打下去,变成一个不那么赚钱的行业。所以这个事儿对我们的启发就是,正确认识程序员这个行业,避免无效的内耗和竞争,从而去成为有创造力和高价值的程序员。
“现在公司格子间里边做PPT的那些人跟100年前踩着缝纫机的纺织女工,没有本质区别”。
我非常认可这个观点,不是贬义,恰恰相反,是褒义。
当我们还处于工业社会初期的时候,纺织女工其实就是一个非常不错的工作机会了。
每个时代都有自己这个时代的产业工人,也有主流产业,脱离时代局限来看,都是当时非常体面的工作。
以前有同学问我,秦老师,你怎么看程序员这个职业,能不能发财,怎么样才能财务自由?我说: 程序员就是一个会一定手艺活的手艺人。
什么是手艺人呢?就是有一定专业技能,像是几百年前的木匠,铁匠,皮匠,比一般的农业劳动者,能生活的好一些,体面一些,饿不死,温饱线以上。
这是一个收益下限比一般行业高,但是本质上还是用自己的技能去劳动创建价值,对社会做出贡献的工作。都属于“士农工商”中的“工”,而非其他方式,跟发财和财务自由,没有必然关系。
有了这么一层认知,踏踏实实的做技术这门手艺活,你就能明白很多其他道理。
以上段落来自如下文章,详见:
【0101】技术的定位:程序员是这个时代的手艺人 - kimmking的文章
工作十来年后,对于做为程序员在工作中的各类问题,每个大的阶段都有很多不同层次的思考和认识,经过两年断断续续的总结沉淀,积累成了一本书的电子稿〖程序员的进阶书〗。
这是一本程序员进阶的答案之书。所有的问题,最根本的就是认知问题。从内到外,改变自己的认知,才能看清楚很多现象背后的实际本质。
目前计划分成几个部分整理发出,分别是:行业定位,工程难题,团队困境,设计悖论,其他问题。
-
行业定位,讲讲我们对于社会的价值、行业的定位、职业的选择,自我的认知。
-
工程难题,讲讲在项目管理,研发过程中遇到的各种疑难杂症,如何分析和处理。
-
团队困境,讲讲团队协作,团队建设,团队发展过程中的一些技巧和经验,吃过的亏。
-
设计悖论,讲讲系统设计和架构实践中的一些常见误区和千奇百怪的问题,如何应对。
-
其他问题,讲讲学习,讲讲思考,讲讲生活,讲讲不好归类到其他四个部分的东西。
此处先发第一部分,行业定位。
经常有朋友或者学生问我,秦老师,为什么我总是感觉很迷茫,关于职业,关于选择,总是搞不清楚。希望这本小册子能改变你的一些想法,让你在迷茫的大海里,能找到方向。正确认识社会,行业,自我,在这个大环境中的各种认知,以及应对方法
《程序员的进阶书-第一部分:行业定位》
第一部分 - 正确地认识社会、行业、职业、自我
【社会】技术的定位:程序员是这个时代的手艺人,程序的意义:为什么我们需要软件程序 【行业】有趣的解读:软件从来不是一个“行业”,而是服务于具体行业颠倒的定位:开发是中后台的成本部门,最终服务于业务价值
【职业】职业的选择:我们需要什么样的职业观,生涯的变动:怎么正确认知工作变动
【自我】角色的多样:不同场景里的不同角色,能力的矩阵:技术、产品、业务、管理
技术是提高生产力的手段,应用到业务场景才等于价值。
正如技术本身不是一个“行业”,需要结合一个落地的应用场景,给自己的直接/最终用户提供价值,才变成“行业”。
软件技术是基础设施,像水电煤一样无处不在但不易察觉。技术需要结合业务场景才能产生价值。软件行业具有高上限和较高下限,因为它可以服务于所有行业,同时技术发展也能推动行业发展。深入行业领域,洞悉业务,理解业务模式是创造业务价值的关键。技术与业务相互促进,形成良性循环。
对于程序员而言,选择有发展潜力的行业和工作至关重要,技术是根本,但正确的选择可以加速个人成长和积累。
以上内容来自:《有趣的解读:软件从来不是一个“行业”,而是服务于具体行业》
技术人员在一般企业里话语权很低。产品、运营、业务人员的声音,往往比技术人员大得多。
开发被认为是中后台的成本部门,公司创造的价值都是业务部门带来的收入。开发和业务之间,存在着比较大的鸿沟,大家并没有深层次的融入和协作。
为了解决彻底这一类问题,技术人员必须深入的学习业务,把自己变成业务专家,站在业务本身的角度去思考研发问题。
同时研发资源永远是不够的,所以需要把研发资源的问题放到更高的层面去解决。 甚至更进一步实现业务技术融合,
从技术支撑业务,到促进业务,最后实现引领业务。 业技融合得越好,场景挖掘得越深,就越能够让技术变成前台部门,创造巨大的实际价值。
以上来自于《颠倒的定位:开发是中后台的成本部门,最终服务于业务价值》: