近几年的工作心得

不知不觉从事互联网行业已有3年,回想起初学习搭建demo项目的时候, 感觉每天很充实,不断收获新的知识,掌握不同的技能。

从第一次写 Hello Word,到自己做一些简单的游戏,爬虫,管理系统。 一路走来总感觉这个行业的知识体量是非常庞大的。深刻的感觉到了互联网行业门槛虽不高,但其天花板很高,随时都有种宛如站在巨人的肩膀上看更高的巨人的感觉,长期在行业中也感觉到每个人接触到的技术层次也是各不相同。

其中开源的社区是非常重要的存在,在开源社区中,总能找到新鲜技术点,新的想法,新的项目,新的概念。如果想要快速提升技术实力,必须尝试几次自主构建项目,编写到维护以及上线,这是算是职业上的必经之路。自己独立完成第一次设计系统时,凭借自己学习到的知识,搭建出自认为效率不错的,结构优秀的架构,能收获不少的成就感。

随着工作经历越来越多,会逐渐发现自己的技术栈还是存在一定局限性,需要更多且各个方面的知识补充。将会从安全,可靠,可用,高性能,监控,维护,扩展,整体体系,部署方案等方面进行设计。但这样的技术瓶颈,往往不能快速突破。

因为想要突破再次瓶颈已不是只看几本书,一个专业领域知识能够弥补的。随着技能不断增多。系统架构越发复杂。运用在系统中的技术种类越来越繁多。系统可以无限制的横向扩展,并更新系统架构。但人的精力却是有限的,也就容易出现学不动,知识点零散的问题。有人说这样的情况就特别容易被下一代人所替代,因为新人,更年轻,学习能力更好。

但我个人觉得,那是因为没有自己的技术核心,在达到了某一些高度,确实需要日积月累的技术沉淀才能总结出来的东西,而年轻人虽然可以进行开发或者设计,但整体思维的高度肯定还是有所差别。

其实这是非常正常的现象。在达到某一个技术高度后,想要继续提高自身知识水平,光是某部分的技术提升是很容易遭到瓶颈的,需要开辟新的领域学习,如数据库,学习关系形数据库的存储引擎实现,非关系形数据库,存储引擎种类,图形数据库,这些就要花费不少时间。毕竟这也是原本就是一个专门DBA职位的知识体系。并且数据库可以说是系统的最根本的一部分,这些知识也是必不可少。再者系统应用架构,软件效率,软件可扩展性这些都直接取决于此系统设计人架构师的知识储备与实战经验。架构师的水准决定着系统应用软件的开发走向,而架构师需要掌握的知识储备可以说是非常之多。宏观整个系统部署与扩展,docker容器的每个参数带宽,内存,cpu,硬盘速率,jar部署,和细微到每个接口的定义以及k8s编排中的通信安全策略,使用具体的容器技术,参数校验,数据库字段长度存储字节,分库分表策略,异地多活容灾,安全设防,数据传输加密等。

又者产品经理。这个职位算是软件行业中,起到领头作用。软件在市场的竞争力,用户交互性,软件的种类定位,软件的未来发展方向,能解决社会的什么问题,整体软件的流程与所有功能的设计都是由产品来决定的。一个合格的产品经理并不是单一只会根据市场情况,客户需求来确定功能点。而是要根据系统效率,数据影响,数据库表设计,软件体验度等多维度来进行评估功能是否有必要添加。就算增加功能或调整功能点,也有可能不能满足大部分人需求,而只满足部分用户需求的情况产生。

最后项目经理,负责整个软件开发部门的协调。任务分发,任务评估。代码质量把控,掌控项目整体的实时进度,项目的各种短板,长处都要做到心中有数。

这些每一个职位所需要的知识量,都不是一个简单的学习流程。更像是一种经历,职业以及人生的经历。而且到了一定的技术程度,你会发现你已经从一个开源软件使用者,逐渐发现目前行业的痛点并渐渐成为行业中间件架构解决方案的软件开发者之一。

到最后,如果人们回过头来看看自己的经历 ,回想一下是什么支撑着自己在这个行业不断前进,是对知识的渴望吗,还是自己的一腔热血,还是这本就是普通的生活。

文章目录

随心笔记

技术无止境 创新不停驻