07年已经是陈皓在程序员行业里的第十个年头了。总结这十年,毕业的头两年,陈皓在银行中昏昏沉沉中度过,“这是我最失败的时候,两年的时间几乎完全白费了。”。后来在上海的两年,我拼命地学习看书,并不断总结所做的项目,这个阶段是我补课的阶段,也是我量变的阶段。到了北京的这五年,是我从量变向质变转换的阶段。
拼命看书
刚毕业的时候,陈皓也像很多刚毕业的学生一样,根本没有对自己的职业进行过比较好的规划。“还记得当时什么都没有想,就是想做一些实际的事情,好好的钻研一些技术。实在没有别的什么想法。”在毕业头三年中(1998年到2001年),不要说是对未来的职业有所规划,对所学的技术也是毫无规划。
离开银行后到上海加入了一家专做银行的系统集成的公司,发现自己和别人的差距非常的大,所以开始拼命地看书和学习,在到上海的头一年中,看了四、五十本书,研究的技术包括PB, delphi, SQL, HTML, CSS, DHTML, java, Perl, CGI, ASP, PHP, JSP, XML, UML, MFC, Lotus Notes, Unix, Oracle, Informix, C++, ActiveX, ODBC, ADO, .NET, COM, 乃至CISCO路由器的配置,Photoshop, 3DMAX……陈皓学得很杂很泛,完全没有目的,只是觉得别人懂的自己也要懂。
“看了许多许多的书,完全没有好好想想自己应该走什么方向。现在回头看来也不知道是好还是不好。”
也许是看的书太多,懂的东西太多,后来有机会参与了一次全国性质的项目。后台是AIX+Informix用C开发,前台是用PB的PFC做界面,通过IBM的CICS这个中间件连通前后台。在开发这个项目的一年时间里,陈皓对Unix/C/C++以及分布式系统有了非常深刻地认识,并深深地迷上了它们,同时对大型软件工程的流程和管理有了非常深刻的了解。
这个项目对陈皓的影响非常大,除了技术上的收获之外,更让陈皓逐渐确定了自己的规划。
技术之外
2002年底,北京一家做分布式计算/网格计算平台的加拿大公司对我产生了兴趣,经过5轮面试陈皓拿到了offer,又一次开始了我的奔走——从上海来到了北京。
新的公司让陈皓的Unix/C/C++得到了非常大的巩固,“这个公司也让我这个土狼学到了很多很多,特别是认识和观念上。”特别是在带领一个team对公司欧洲用户做Customer Service方面的工作时,陈皓学到了很多客户管理的知识,英语能力、与人沟通的能力以及对软件的认识得到了完全的升华。
陈皓开始使用一种和以前完全不一样的方法去思考问题——从用户的角度对问题进行思考。“此时,技术方向对我来说已不重要,技术对我来说已经变得非常简单,因为技术只需要看书看文档就可以获取。”陈皓开始用全新的方式思考如何管理一个团队,如何制造一个成功的软件,如何管理客户。并由此有了更进一步的职业规则——成为一个成功的技术主管、建立一个成功的团队、开发一个成功的软件产品。
给新人程序员的八点建议
走过弯路,有过迷茫,回首九年陈皓感慨万千。“今天,我对许多刚上路的朋友都会说,人生的规则很重要,从上大学时就要好好规划。”他结合自身经历,对许多刚踏入程序员行列的新人程序员,他给出了以下八点建议:
1.在大学的时候尽量多地进入公司参与实际工作,一方面积累工作经验,另一方面,提前认识工作和自己,以便毕业时更准确地把握自己的方向。
2.从毕业开始到毕业后至少5年内,踏踏实实地专研技术,这是一个积累过程,千万不要把心思放在钱和职位上。钱和职位只是能力的附属品,不要让其喧宾夺主。
3.从毕业后3年到7年的时间,注意学习工作当中的方法以及相关的管理和流程,不但要知其然,还要知其所以然。
4.30岁以前,踏踏实实地学习。学技术,学做人,学做事。30岁以后再谈自己的发展。
5.毕业后的前5年主要是量的积累,要不停地积累知识和方法。毕业后的5到10年主要是质变,应该着重于思维和想法的更新。后五年应该有很强的包容能力和接受新东西的能力,千万不要太过固执和坚持自己的想法。
6.换工作要“承前启后”,前面的工作会成为后面工作的一个基础,而后面的工作又会成为前面工作的一个很自然的延续。
7.不要只把心思放在技术上,技术是hard skill,只要下工夫就一定会掌握。更要注意与人沟通等为人处事的soft skill上。hard skill像一个大树的根,而soft skill则像一个大树的枝叶。树根是你的根基,能让你站得很稳,而枝叶能让你向天空伸展,获得发展。
8.对于程序员来说,应该始终记住,技术不是主要的,主要的是通过技术能够解决什么样的问题。一定经常想要解决什么的问题,要满足什么样的需求,而不是要用什么样的技术。
分享到:
相关推荐
【标题】: "资深程序员对IT新手的指导原则" 【描述】: "这篇文章汇集了一位经验丰富的程序员对新入行者的实用建议,旨在帮助IT新人避开常见误区,扎实基础,规划长远的职业发展路径。" 【标签】: "计算机 学习 ...
标题中的“程序员新人成长动力(一个项目经理的早年手记)”揭示了这份文档的核心内容,它是一位有经验的项目经理对新手程序员的成长建议和自身早期职业生涯的反思。这份手记可能包含了他在编程、项目管理、团队协作...
总之,《程序员羊皮卷》是一本集理论与实践于一体的综合性指南,它不仅适合刚步入IT行业的新人,也为资深程序员提供了新的视角和启发。通过阅读本书,读者可以更好地理解行业趋势,明确个人职业定位,掌握职场生存与...
书中的“程序员”一词涵盖了广泛的含义,从初入行业的菜鸟到资深的技术专家,每个人都能从中找到与自己相关的内容。而“代码”和“程序”作为程序员日常工作的核心,是本书不可或缺的讨论焦点。它不仅仅会告诉读者...
总的来说,《程序员面试金典 第5版》英文版是一本全面而深入的面试准备指南,无论你是初入职场的新人,还是希望进一步提升自己技能的资深开发者,都能从中受益匪浅。通过阅读和实践书中的内容,你将更好地理解编程的...
《程序员面试宝典》是一本专门为C++程序员准备的面试指南,它涵盖了面试过程中可能遇到的各种...无论你是初入职场的新人,还是寻求职业发展的资深程序员,这本书都将是你的宝贵资源。认真研读,你一定会从中受益匪浅。
《程序员面试攻略》是一本专为准备程序员面试者编写的指南,旨在提供清晰、全面的面试准备策略。...无论你是初入职场的新人,还是寻求晋升的资深开发者,这本书都将成为你面试道路上的重要参考资料。
《程序员面试攻略》第二版是一本深受欢迎的教程,它为准备面试的程序员提供了全面而深入的...无论你是初入行业的新人,还是寻求职业晋升的资深开发者,都可以从《程序员面试攻略》第二版中获益匪浅,提升自己的竞争力。
无论是初入职场的新人,还是寻求职业发展的资深程序员,都能从中受益匪浅。 总之,如果你想在程序员面试中展现自己的实力,这套资料将是你不可多得的伙伴。深入学习并实践书中的知识点,不仅可以提高你的技术功底,...
从给定的文件信息来看,这期《程序员》杂志涵盖了多个IT行业的焦点话题,包括人物专访、行业分析、软件开发技巧、项目管理经验分享以及...无论是对于初入IT行业的新人还是资深从业者,这都是一份值得深入研究的资源。
《程序员面试宝典》是一本深受广大编程爱好者和求职者欢迎的经典书籍,它汇集了众多知名公司的面试题目和详尽解答,旨在帮助...无论你是初入职场的新人,还是寻求职业发展的资深程序员,这本书都能为你提供宝贵的指导。
全国计算机软件资格考试是中国计算机行业的一项重要认证,旨在评估并提升参与者的计算机技术与应用能力。...无论是对正在备考的新人还是希望回顾历史知识的资深程序员,这份资料都有很高的参考价值。
无论你是初入行业的新人,还是寻求职业晋升的资深开发者,都可以从中受益。 总的来说,这份《高级程序员和软件设计师的考试试题及答案》提供了丰富的学习材料,帮助你全面提升编程技能和软件设计能力,为你的职业...
最后,无论是初入行还是资深程序员,都需要具备团队合作精神,善于指导和帮助新人。领导可能会通过分配更多责任来培养潜在的项目负责人。面对这样的挑战,应积极应对,从中学习并提升自我,这将有利于职业生涯的长远...
对于资深程序员,培养和指导新人同样重要。帮助他们成长,可以减轻自身负担,也有利于团队整体效能的提升。当达到一定经验后,考虑向系统分析师或架构师等角色转变,以突破薪资瓶颈,实现职业生涯的进一步发展。 总...
8. **带新人**:资深程序员应培养指导新人的能力,帮助他们成长,同时减轻自己的工作负担,促进团队整体水平提升。 9. **薪资与职位转型**:随着经验的积累,程序员的薪资会遇到瓶颈,此时应考虑向更高层次的角色...
《C/C++程序员面试宝典》是一本专为准备求职的C/C++程序员精心编写的指南,它以CHM(Microsoft Compiled HTML Help)格式...无论你是初入职场的新人,还是寻求职业发展的资深程序员,这本书都是值得参考的宝贵资源。
对于想要踏入这个领域的新人或是希望提升自身技术水平的资深程序员来说,了解并熟悉历年真题是至关重要的一步。这份"程序员历年真题"资料集合,正是为这样的学习需求量身定制。 CHM格式的文档,全称是Compiled ...
程序员求职技巧是每个技术人才在职业生涯中都需要掌握的重要能力,无论是初入职场的新人还是有经验的资深开发者,都需要不断更新自己的求职策略。本篇文章将深入探讨Java和.NET程序员的面试技巧,帮助他们在竞争激烈...
参与需求分析,提出简化解决方案,甚至为决策提供专业建议,这个阶段标志着程序员正向资深工程师转变。 进一步发展,将涉及整体需求方案的设计,能运用一种或多种架构进行项目或产品的规划。评估项目风险,制定备选...