`
timonzhang
  • 浏览: 2726 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

技术生涯随侃1-工作环境对程序员生涯的重要性

阅读更多

本来因为最近工作环境原因正想发几篇博客,没想到一登上ITEYE,就见到一篇引起共鸣的充满正能量的文章,作者和我有一样的理想,不仅是想自己做好一名程序员,更想通过自身的努力改善这个行业的环境。 我从毕业开始就一直很关注环境对程序员的影响。

为什么会这样,也缘于我的经历。我的第一份非实习工作是知名欧美外包公司,当时年幼无知,进去做了3个月后,彻底颠覆我当时美好的憧憬。顶着压力,未转正毅然裸辞,然后找到了另一家我一生都会记得的互联网公司,公司的CTO之前也是硅谷的华人程序员,所以公司文化是相当好,也因此彻底改变了我的技术生涯,我在里面技术突飞猛进,工作生活也非常开心。

我要说的第一个特别重要的观点就是:工作环境对程序员生涯特别重要。 特别是对刚入行的程序员第一家公司,可以说决定了90%的程序员的生涯。

因为开发这职业说到底最和兴还是取决于你自身的技术,而技术在国内来看,肯定是通过在工作生涯中积累进步的,好的环境和差的环境对你技术变化得影响是如此之大,再加上时间的推移,从起点的差距经过若干年后可以说指数级别的扩大。

好的环境总结可有以下几点:技术氛围浓,工作压力正常,薪酬较好,那差的环境就反之。我们可以看出这里是有良性循环和恶性循环的关系的。先说 如果进了差的环境,工作压力大导致学习动力下降或者学习时间下降,实践机会少,导致心态身体不健康,缺乏精力,导致技术进步慢,技术进步慢又导致无法减轻工作压力,无法有时间学习思考,写不出好的代码,没有余裕扩大眼界思考问题, 只要技术无本质提高,那么又很难跳槽到好的公司,最多只能跳到薪水略长,但其他一般的地方,继续周而复始。。随着时间的推移和好的程序员差距越来越大,就更难跳到好的公司,于是就出现了所谓程序员做不到30岁的情况,因为已经无法再向上了,你唯一的资本是所谓的工龄或经验,但是这相对于技术变化那么快的行业来说,你也就只能做到这个年龄了。然后你的职业不尴不尬了。。上不去,又不想下,但工作又不轻松。。


进了好的环境,技术进步的很快,于是工作压力随之降低,可以有更多的时间思考,学习,进一步提高自己,进一步提高工作的效率,内心也舒适,生活也轻松,不用加班,因为技术提升,更容易跳到更好的公司,薪水也更好,环境也能更好,同时更进一步。。。

接下来举个自身的例子,是所谓的好的环境中的一点。目前我做开发5年多,不算长不算短,有一个特点,这5年多中,我加班累积的小时数不超过7天。我想是大部分程序员都做不到的。。收获呢?不算大好,但绝对不算坏,现在在网游公司做服务器架构师。。。怎么能做到这样?就是很普通的经历,因为我的第一家公司环境好,技术氛围浓,但又不强迫加班,我在一开始就有一个良好的心态,和好的技术环境,刚开始也有压力,但是因为公司不强迫加班,我每天晚上都能有精力自学,同时工作内容又有挑战,有许多发挥的空间,学习的内容可以马上实践,于是技术马上明显提高,同时自信也增加了,对问题的思考,处理的方式又上升到新的高度,能接触的工作内容也更广了。。于是第一二年,我已经在技术上非常有自信了。接着我跳槽了,但是我坚持不加班和技术不能差的原则,凡是加班或技术差的都坚持不去(也是顶着压力找公司的),就这样换了几家公司,保持这种进步的节奏。。很快,到第3.5年,我和同年的程序员平均技术已经有明显突破了,这个时候就能迎来更好的机会,因为我的效率是同年的平均水平的N倍,所以我的各种机会更多,相同的工作内容,我可以有更多时间去学习底层,了解框架,学习基本理论,去思考。。。。于是在第4.第5年,我在技术上又有了质的突破,并且因为技术优秀,更没人会限制我上班的自由,从而达到了很好的良性循环环境。

能体会到环境重要性远远胜过你开始技能和天赋的同学可能会接着问究竟怎样一开始找到好的环境,或者怎么知道好的环境?。我也不是什么有背景,或天生特牛的人,但是只是我坚持我的原则。如果是刚入行的同学,至少找一家技术氛围很浓,且工作内容很有挑战的公司,即使加班也没关系,要么就找一家不加班,工作特别闲,很自由,能自学的公司。总之,前几年一定要使自己技术进步快,这样之后你的选择余地就大,进入良性循环的轨迹,这其中一步走错,你就只能在差的圈子里很难跳出来。

回到开头,我深知环境的重要,所以我现在也努力创造好的环境给我的下属,也用我的文化在感染他们,努力让他们知道,IT行业的正常风格应该是怎样的。更希望以后他们当上管理层后能继续创造好的环境。

 

分享到:
评论

相关推荐

    敢问路在何方--一个程序员从迷茫到坚定到再次迷茫之路

    总结起来,这篇分享体现了程序员职业生涯中常见的挑战和抉择,包括选择技术方向、面对职业困境、自学新技术、适应不同工作环境以及处理职场人际关系。同时,它也强调了持续学习和自我提升的重要性,尤其是在快速变化...

    精品报告系列-2018年中国程序员研究报告.pdf

    - 报告可能包含了关于程序员对于个人职业生涯的规划,例如晋升路径、技能提升、工作稳定性以及对行业未来趋势的预测。 4. 移动互联网行为 - 尽管报告具体细节未披露,但标题中提到的“移动互联网行为”可能涉及到...

    考试类精品--分享个人程序员职业道路上的一些总结与思考,包含知识技能、团队管理、标准规范、面试等各个方面.zip

    在程序员的职业生涯中,知识技能、团队管理、标准规范以及面试技巧是四个至关重要的领域。这份压缩包"考试类精品--分享个人程序员职业道路上的一些总结与思考"显然为我们提供了这四个方面的宝贵经验。 首先,知识...

    C++ 入门--非C程序员自学教程

    学习何时何地使用它们对管理对象的生命周期很重要。 6. **模板**:C++的模板机制允许创建泛型函数和泛型类,增强了代码的复用性。理解模板的工作原理以及何时使用模板函数和模板类是提高编程效率的关键。 7. **...

    张辉-布道师-《程序员的credit 》

    这个词通常被理解为信用,但它远远超出了信用的范畴,包含了同事、领导和团队对程序员能力、工作态度、技术特长和其他个人特质的广泛认同。张辉在其分享《程序员的credit》中深刻阐释了这一概念,并指出了如何在团队...

    程序员职业规划:让自己变得重要

    投资前调研的重要性** - 类比于企业的CEO在决定投资某一项目之前会进行全面的市场调研,程序员在选择学习新技术时也需要经过深思熟虑。 - **案例分析**:例如,当前云计算、大数据、人工智能等领域正处于上升阶段,...

    a-软件工程、程序员修炼三部曲

    - **实用性与综合性**:不仅适合初学者学习基本编程技能,也适用于高级程序员进一步提升自己的技术水平。 - **案例分析**:通过丰富的实例来解释复杂的概念和技术点,使读者能够更好地理解和掌握。 #### 三、...

    java程序员职业生涯规划.pdf

    程序员职业生涯规划的重要性 在软件业中,程序员是核心人才,需要具备强的技术能力和设计思想。然而,许多程序员在工作中会发现自己的设计思想落后,无法跟上技术的发展和行业的需求。这是因为他们没有系统的设计...

    是非人生--计算机程序员成长

    文章中提到,主人公最初只是通过简单的复制粘贴来完成工作,这反映出基础知识和技能的重要性。要想成为一名优秀的程序员,仅仅掌握一些表面的技巧是远远不够的,还需要深入理解编程语言的核心概念和技术原理。 ####...

    51cto-技术还是管理,程序员应该如何规划自己的职业道路

    - **注重人情**:人际关系的重要性不容忽视,但在工作中过于注重人情可能会影响决策的客观性。 ##### 职业路线评估 - **好处与坏处的对比分析**:在选择技术或管理路径时,应全面考虑每条路径的优势和劣势。 - **...

    java程序员的职业生涯总结与规划.pdf

    Java 程序员职业生涯总结与规划 本资源是 Java 程序员的职业生涯总结与规划,作者分享了自己...同时,作者也强调了技术成长和职业规划的重要性,希望 Java 程序员能够掌控自己的思想和行动,开开心心地生活和工作。

    php100-100PHP程序员的学习之路和未来职业规划.rar

    1. **第100讲.pdf** - 这可能是一个系列教程的最后一部分,或者是总结性的一讲。PDF文件通常包含文本和图像,这可能是一个深入的讲解,涵盖了PHP学习的高级概念,或者关于职业规划的建议,如进阶技能学习、项目经验...

    程序员成长路线图1-2章

    "程序员成长路线图1-2章"主要探讨了初入行业的新人如何逐步成长为一名优秀的程序员,并在职业生涯中取得成功。以下是这两章内容的详细解读: 第一章:程序员自我修炼的基石 1.1 技术基础:学习编程语言是程序员的...

    【2018-2019】软件开发程序员201X个人工作总结[1]-精选word文档(3页).pdf

    在技术层面上,程序员提到设计模式的重要性,这是从实践中提炼出的通用解决方案,可以提高代码的可维护性和复用性。ASP.NET的实现模型,如POST和GET请求,以及服务器控件的工作原理也被详细阐述,突出了微软框架的...

    程序员如何选择职业赛道-中级程序员.docx

    - **重要性**:作为公司的中坚力量,中级程序员对于项目的成功至关重要。他们不仅需要具备出色的编程能力,还需要有一定的领导力和项目管理能力。 #### 二、中级程序员所需掌握的关键技能 - **2.1 编程基础**: -...

    java程序员职业生涯规划

    Java 程序员职业生涯规划 一、自我认识 在规划职业生涯之前,首先需要认识自我。通过个人分析,可以了解自己的性格、兴趣爱好、能力和不足。认识自我是职业规划的基础,可以帮助我们更好地发掘自己的潜力和优势,...

    2021年程序员工作总结工作总结.docx

    总的来说,2021年的程序员工作总结突出了持续学习、积极心态、信息处理能力、项目管理和个人成长的重要性。程序员不仅需要扎实的技术基础,还需要良好的职业素养和不断适应变化的能力,以实现个人和公司共同的进步。

Global site tag (gtag.js) - Google Analytics