一名程序员十年技术之路的思考与感悟

回顾在腾讯的十年,作为一个本科毕业生,在管理上六年升任副总监,技术上七年半晋升 T4 专家。虽不是发展最好的,但相对平均速度来说都是比较快的。我总结主要的几点是学习成长、合作共赢、总结呈现、思考前行。分享一下这些方面的体会,希望可 以帮助初入互联网行业的技术人员或发展遇到困惑的人突破和提升自己,让自己成为精兵再到骨干,并进一步成长为一名强将。

要成为一个团队的精兵,必须是专业知识过硬,经验丰富,指哪打哪,能够非常让人放心的完成领导安排的任务的人。要做到这些,学习和实践是最直接的路径。通常一个毕业生,刚进入企业的时候,所学的知识并不能100%胜任岗位的需要,这个时候,快速地学习补充自己的知识缺陷就显得非常重要。在企业里的学习和实践,要注意以下几点。

1.借助导师、同事资源。这样可以让自己快速解决遇到的问题,少走很多弯路。

我刚毕业时的导师就对我有问必答,直到现在和同事讲起我的导师时,我都会说他是我工作以来遇到的技术最全面的、最佩服的人之一。

2.系统化的学习工作所需要的是基础知识,而不是到百度或谷歌查资料解决。

这样有助于遇到问题后通过相关知识关联分析,也有助于搭建更合理的技术架构,或改进现有技术架构的不足,让知识形成协同效应。为了让没有做过研发的运维同事对研发不觉得神秘,能够去分析异常故障深层次原因,我特意开发了《直观认识网络通讯》、《直观认识进程间通讯》、《直观认识HTTP协议》等几门课程,将这些知识体系化地通过一个个的小程序案例传递给我们的同事。

3.除了工作中需要的新知识外,建议在工作一段时间后再回头系统性学习相关专业基础知识。

因为在学校的学习多数都缺乏实践,很多知识的掌握比较粗浅,在工作一段时间后重新再学,会有完全不同的收获。比如,我有了一段时间排查业务异常和网络问题的经验后,又将学校读过的《TCP/IP详解卷1:协议》读了一遍,发现收获特别多,很多实际业务在异常时表现的现象都和书上讲的对应起来了。一些只在书上看过但无法在试验环境模拟的现象都在实际工作中找到了场景。

4.借助平台学习成长。

实际工作中,爆发式增长的业务或大平台是一个人快速成长和进步非常好的资源。因为爆发式增长的业务会让你在很短的时间内遇到在其他地方好多年可能都 不会遇到的问题,而大的平台一定是从小而来,趟过很多的坑,在这样的环境中,保持一个好奇好学的心态,可以快速提高自己。比如,在QQ空间业务开始爆发增长的时候,有段时间我曾经十天里有六天夜里和同事一起分析解决业务异常,经常持续几小时甚至到天明,也正是那段时间,遇到了别人几年才 有可能遇到的各类问题,让自己知道该补充什么知识,在后续的运维工作中对我有了很大的帮助。

5.如果可以对自己进行细分定位会更好。

就如同我和我的团队在过去的七年里都经历了工作内容和岗位的细分一样,现今社会是一个信息爆炸的时代,IT技术也是不断地出现新的技术分支,要想每一样都做到精通是非常困难的。所以结合自身情况以及工作需要,对自己有一个更加细分的定位,这样做精力才能聚焦, 更有可能快速在你所做的领域不断深入,进而成为专家。而如果你想要成为一个综合性的人才,也可以考虑通过阶段性专注于某一细分领域,重点学习积累,具有一 定深度后再切换重点关注领域。

随着经验的增长,从精兵变成骨干,我们所从事的工作会逐渐由简单直接变得复杂综合且无法独立完成,这时候就需要团队协作甚至跨团队、跨部门推进。这个时候就需要我们很好地协调平衡各方资源,推进项目达成目标,并将团队的业绩最大化展现,获得肯定。在这个过程中,要注意以下几点。

(1)保持开放的心态。

需要在沟通合作中更多的换位思考,多创造一些双赢的机会。平时先帮助兄弟团队或同事完成目标,等到自己团队需要帮助的时候,也一定会有兄弟团队或同事出来帮助你。

(2)找到一些对大家都有帮助,大家又都感兴趣或可以学到新东西的事情。

比如我前面提到的速度优化虚拟团队就是一个例子。

(3)注重成果总结和展现。

我在公司职级晋升以及一些技术奖项评审中发现有不少人或团队所做的工作成绩非常突出,但在答辩的时候讲得很一般,平时很辛苦,最后呈现很糟糕,没有 通过评审或取得的成绩比较靠后,很可惜。职场不是一个只有一次机会的演讲,更像一个马拉松。对于不善表达的人来说,可以更多地注重利用日常工作中通过各类 文本的形式表达场景,这样可以在长期的工作中,让周围的同事和领导了解自己及团队的工作成果。

(4)注重平时的资料积累。

总结展现不好,很多情况也是由于内容不够丰富有价值。为了解决这个问题可以养成将一些日常工作中坚持将成果邮件、PPT、数据图表等案例分类汇总保留。这样在需要总结的时候数据会很丰富,有内容就不怕讲不出。

很多骨干走上管理岗位后,随着管理人数和团队的增加,会发现以前由领导指派的清晰目标逐渐没有了。团队部分成员甚至一些团队整体都会困惑应该做什 么,除了不断重复一些任务和工作外,团队成员长远的发展是什么等关键问题不明晰。如果这个问题得不到很好的解决,那么团队就可能出现不稳定、士气不高、战 斗力差等情况。

这个时候是很难的一个坎,因为以前不管是单兵作战,还是团队项目,目标多数比较明确,但在带领一个较大规模的团队时会发现,自己的工作内容往往不再是如何完成一个既定的目标,而是思考该做什么,我该将团队打造成一个什么样的团队,怎样帮助团队成员的发展,等等。

我自己也作了一些思考和探索,比如我在运维团队里以减少运维对象以及按专业分工的思路将团队分工不断细化,并尝试清晰地定义每个团队的核心工作职 责,让大家在自己团队核心工作职责的方向上不断沉淀,通过积累建立起和别的团队差异化的经验,形成自己独有的经验和平台优势。另外,提出“服务产品、服务 研发、服务自己”的理念,特意将产品放在第一位,研发第二位,希望引导运维团队有产品意识,寻找更多的办法去帮助产品、协助研发,从而让产品更加成功。而 不是只着眼于自己的运维效率,做一个纯粹的支持者。只有做好这个思考和探索,我觉得才能真正转变为一个强将,我自己依然在这样的思考与探索的路上。

希望每一个刚进入互联网行业的技术人员或发展遇到困惑的人都能突破自己,从精兵成长为强将。

一名程序员十年技术之路的思考与感悟相关推荐

  1. 成长的足迹:阿里巴巴5位专家技术之路的思考与感悟

    五四青年节之际,云栖社区特别邀请了5位阿里云技术/产品专家,来分享他们的#成长记忆#,每位专家将呈现出他们独一无二的人生经历.认识和感悟,希望能对大家有所帮助和启发. 以下为5位专家的分享: 第一位专 ...

  2. 福利 | 2018 年,程序员全新的技术之路

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 年年岁岁花相似,岁岁年年人不同.新年伊始,看着朋友圈各种年终总结.新年新的 KPI,你是否会 ...

  3. 程序员如何从技术岗转为技术管理层

    有一个非常有趣的现象:据说大部分的技术管理者,在其从程序员转为管理岗位的时候,都是在领导或公司的要求下,被动的推到管理岗位上的,并非是自己当初有强烈意愿.主动去选择管理岗的.这种被动的比例还不低,高达 ...

  4. 程序员如何从技术岗转为技术管理层?

    有一个非常有趣的现象:据说大部分的技术管理者,在其从程序员转为管理岗位的时候,都是在领导或公司的要求下,被动的推到管理岗位上的,并非是自己当初有强烈意愿.主动去选择管理岗的.这种被动的比例还不低,高达 ...

  5. 作为一名程序员,如何高效的学习技术

    今天收到官方推送的标题,说是作为一名程序员,如何高效的学习技术,通过我的切身工作经验,我总结了一些程序员高效的学习技术的一些经验,分享给大家 制定学习计划:在学习新技术之前,制定一个合理的学习计划,包 ...

  6. 作为一名程序员如何优雅的使用谷歌搜索技术(Google)?

    作为一名程序员如何优雅的使用谷歌搜索技术(Google)? 大家都知道作为一名程序员Google的作用很大,但是Google又很难优雅的使用.需要轻功高明.当然也有一些人做Google的镜像,但是发展 ...

  7. 因未发项目奖金,一名程序员决定删代码泄愤

    长按识别上方二维码,关注公众号:后端面试那些事 回复"报告",获取你的GitHub年度报告! 作者 | 刘琳 来源 | 刘琳 你永远都想不到程序员会因为什么删掉代码. 你可能还记得 ...

  8. 来自一名程序员的表白

    长沙连续冬雨连绵的天儿至昨日终于晴朗了,见到久违的阳光,心情格外舒畅,看哪儿都是带着"有色"眼镜.昨天翻看手机一看,原来是感恩节,老天还格外开恩把太阳放了出来. 感恩节虽是西方传统 ...

  9. 面向犯罪编程,9名程序员锒铛入狱

    程序员新鲜事(ID:CoderNews)整理 内容综合自:平安时报.平湖在线 2年开发50余款APP,从中非法获利500万元,直到警察上门.最终,9名程序员被抓. 近日,平安时报平台发布了这样一起&q ...

  10. 【转载】以前ioi上看到的一篇关于如何成为一名程序员的文章

    一.为何要学编程? 每个人的动机不一样.大致有: 1.为了找个好工作:或为了有更好的机会和更好的发展. 2.看到别人超厉害,所以也想学. 3.实际工作中很多场合需要. 4.从小就立志做个程序员,做软件 ...

最新文章

  1. XML解析文件出错解决方法
  2. [codeVS1204] 单词背诵
  3. 帮我看看这点破事 EVENT
  4. spring、springMvc、springBoot和springCloud的联系与区别
  5. 深度之眼课程打卡-python入门05
  6. 7. 基于策略的强化学习——蒙特卡洛策略梯度REINFORCE算法
  7. SQL AVG() 函数
  8. 基于webpack4.X从零搭建React脚手架
  9. php中怎么让主键自增长,在数据库设计中,无论如何也该设计一个自增ID字段作为主键吗?...
  10. [图] DevOps:提速从研发到交付流程
  11. 用python编写一个点餐程序_Python写一个自动点餐程序
  12. 6条shell小技巧,让脚本显得不再业余
  13. 【英语之夜】遇见--Peter
  14. linux php pdo dblib,PDO_DBLIB (MSSQL) on Ubuntu Server
  15. 各大杀软免费救急光盘合集——这个可以收藏备用了
  16. 锁住余额,为何还会更新异常?
  17. bio linux 创建_Linux 五种IO模型
  18. 2019最新Python学习路线(Python学习教程_Python学习视频):Python2和Python3你们都是怎么选的?
  19. python 画三角函数_如何用python表示三角函数
  20. 用C++完成华氏温度换摄氏温度

热门文章

  1. c语言健康,C语言健康驱动输入和屏幕输出.ppt
  2. linux自定义命令行显示,在Linux上自定义bash命令提示符
  3. 关于python经典的80个案例操作(附源码解析)
  4. elementui文件上传nginx 报405错误
  5. 理财魔方凭借用户立场入围毕马威中国领先金融科技企业50强
  6. 汽车转速传感器采集之电路设计
  7. java pdf 表格_java 创建一个表格pdf
  8. iTunesconnect 缺失Beta版权利
  9. 完美解决please restart word to load mathtype addin properly的问题。
  10. Python3安装及使用心得