【分享】一位技术人员成长历程

2024-04-27 08:58

本文主要是介绍【分享】一位技术人员成长历程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

来源:http://zwchen.iteye.com/blog/676023 

来源:http://blog.csdn.net/heiyeshuwu/article/details/8619332


我们每天都会遇到下面这些问题,不知道大家有什么新的看法? 


 
1、信息社会,我们越来越不堪负荷,工作被越来越频繁地打断。 


 
2、项目经理,该适当引导团队,管理好各种通讯工具:IM工具、Email客户端,RSS阅读器 
软件开发时,最好能够进入思维流 状态,IT工作者应该有一个安静、隔离的环境。 

提示:以上两图,特别参考了:The Asymptotic Twitter Curve  


 
3、从一周的工作成果来看,加班并不是一种推荐的方法,也许可以让工作更快,但不会更好 


 
4、坚持了第一个月,再坚持半年,以后的学习速度越来越快,你离专家、技术大牛就越来越近了。 


 
5、在有限的阅读时间内,我们如何处理好每天的阅读量? 
我的体会:适度的订阅量,分类好略读和细读的文章,前者如资讯、贴图、娱乐,后者如分析、理论类文章。 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------  


好,其实我们看到了问题,那么如何去分析我们面对的问题,如何成长?


发现很多有成就的技术大牛,很多都在30岁左右,这类人,一般都是23岁左右毕业,工作两年后,开始从事自己感兴趣的细分行业。  

打个比方吧,这位牛人23岁毕业,做了两年嵌入式C编程,25岁时,突然对Java的优雅设计情有独钟,而正好这时,公司有个Java项目,Java技术之旅开始了。  

1、最开始三个月,开始接触Java,比如接口、继承、封装等,买了本《Think in  Java》天天啃,并且同时做项目实践。猛学了三个月后,对面向对象编程OOP熟悉了,原来脚本式思维和对象思维确实有差别。  

2、三个月后,开始啃《Core Java》,《Effective  Java》,对Java有了更深入的了解,回调的概念也有了,逐渐接触到更高的层次,面向对象设计OOD,这时又看了一本书《Head First Design  Patterns》,感觉设计模式特别有趣。再写代码,已经不是面向实现编程,而是面向设计编程。感觉写Java代码太简单了。  
因为每天还有Java的Web项目开发,逐渐了解了WebWork等Web框架的使用。  

3、六个月过去了,Java瘾越来越大,逐渐开始往更高层次攀登,这时,又看到两本书《企业应用架构模式》、《UML和模式应用:面向对象分析与设计导论》,已经开始从设计往面向对象分析OOA、架构攀登了。  
因为大半年的Java企业开发,Hibernate已经比较熟悉了,了解Hibernate背后的持久化技术、Spring背后的IoC容器、组装技术原理。  

4、一年后,他逐渐脱离了Java语言,开始看这类书《面向模式的软件体系结构  卷1》。这个阶段持续了一年,并且对以前的学过的设计模式,如命令模式、观察家模式有一个更深入的了解。 
因为两年的企业应用开发,他已经熟悉了Java  EE的十来种规范,对Web容器和Servlet规范的关系有很深的理解,对JDBC规范和数据库驱动程序的关系也很了解。  

他正在经历Java开发的快速上升期,对应于 曲线的一年时间点。  

5、两年后,他突然发现,他学的很多东西都没用,都是纸上谈兵,比如,在自己的企业应用开发中,Command模式、Template从来没有用过。  
他还发现,本来100行写的一个功能,花了1000行,就是为了所谓的设计优雅性:可扩展。而实际上,还没有等到扩展,该系统就已经废掉了。  
他发现原来设计模式主要用在系统框架开发,而不是应用开发,一般开发人员不用,只需要理解。  
他还发现,他认真学过的JMS、JCA、JTA、EJB像是从来没有用过。突然他想通了,JMS、JTA可能是一种无奈的选择:处理遗留系统。  

当他开始对自己两年学到的知识进行反省、批驳时,他已经有了技术辨别能力,知道技术推广也不是那么纯洁,也有商业炒作。  
知道Java虽然是Sun公司发明的,但Sun公司没有赚到钱,IBM却赚得盆满钵满,最后Sun公司竟然卖给了技术商人Ellison所创立的Oracle了,Java之父James  Gosling也混得并不好,从Sun公司到Oracle,最后还不欢离开了。  

这时候,他已经不限于Java了,开始了解C#,Ruby,发现Java可能并不太适合互联网开发,PHP可能更适合,ROR开发更快但需要在牛人的手里。两年后的这个时候,他才开始真正驾驭Java,他已经不再限于Java,而是企业应用。  

这个时候,技术提升的速度越来越慢了( 曲线的三年分界点),因为不知道还可以学习什么新技术。因为他发现,原来这些东西,最深层次的,都是几十年前的技术概念:消息系统、异步通讯、事件机制等等....  

6、三年过去后,他已经不再限于企业应用,而是解决方案,技术只是一种解决问题的方式,比如企业信息化成功的关键,恐怕不是技术,而是企业本身的业务流程成熟度;企业信息化成功的关键,不是处理好了技术,而是处理好了几位企业高官的利益。  
这时候,对IT行业新闻,逐渐有判断力和免疫力。  

他突然发现,技术的力量很有限,商业才是最大的驱动力量。而此时,他已经不再钻研技术细节,比如JVM的垃圾回收机制,如果他在一个技术研发型公司,比如普元,可能还会深入挖掘技术。如果他在东软这类行业应用开发企业,这类企业的口号是Beyond  Technology,这时候他再执迷于技术而轻业务,恐怕不太受欢迎。  

这个时候,技术的提升,就会进入一个平台期,也就是 曲线的水平部分。再平稳发展,技术大牛就开始炼成了。  

这篇关于【分享】一位技术人员成长历程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/940066

相关文章

linux进程D状态的解决思路分享

《linux进程D状态的解决思路分享》在Linux系统中,进程在内核模式下等待I/O完成时会进入不间断睡眠状态(D状态),这种状态下,进程无法通过普通方式被杀死,本文通过实验模拟了这种状态,并分析了如... 目录1. 问题描述2. 问题分析3. 实验模拟3.1 使用losetup创建一个卷作为pv的磁盘3.

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

10个Python自动化办公的脚本分享

《10个Python自动化办公的脚本分享》在日常办公中,我们常常会被繁琐、重复的任务占据大量时间,本文为大家分享了10个实用的Python自动化办公案例及源码,希望对大家有所帮助... 目录1. 批量处理 Excel 文件2. 自动发送邮件3. 批量重命名文件4. 数据清洗5. 生成 PPT6. 自动化测试

10个Python Excel自动化脚本分享

《10个PythonExcel自动化脚本分享》在数据处理和分析的过程中,Excel文件是我们日常工作中常见的格式,本文将分享10个实用的Excel自动化脚本,希望可以帮助大家更轻松地掌握这些技能... 目录1. Excel单元格批量填充2. 设置行高与列宽3. 根据条件删除行4. 创建新的Excel工作表5

Redis多种内存淘汰策略及配置技巧分享

《Redis多种内存淘汰策略及配置技巧分享》本文介绍了Redis内存满时的淘汰机制,包括内存淘汰机制的概念,Redis提供的8种淘汰策略(如noeviction、volatile-lru等)及其适用场... 目录前言一、什么是 Redis 的内存淘汰机制?二、Redis 内存淘汰策略1. pythonnoe

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

C#读取本地网络配置信息全攻略分享

《C#读取本地网络配置信息全攻略分享》在当今数字化时代,网络已深度融入我们生活与工作的方方面面,对于软件开发而言,掌握本地计算机的网络配置信息显得尤为关键,而在C#编程的世界里,我们又该如何巧妙地读取... 目录一、引言二、C# 读取本地网络配置信息的基础准备2.1 引入关键命名空间2.2 理解核心类与方法

Golang使用etcd构建分布式锁的示例分享

《Golang使用etcd构建分布式锁的示例分享》在本教程中,我们将学习如何使用Go和etcd构建分布式锁系统,分布式锁系统对于管理对分布式系统中共享资源的并发访问至关重要,它有助于维护一致性,防止竞... 目录引言环境准备新建Go项目实现加锁和解锁功能测试分布式锁重构实现失败重试总结引言我们将使用Go作