我是来自阿里云-云通信技术团队的玄照,2015年底进入阿里,刚渡过三年醇,正迈向五年陈的路上。个人兴趣爱好广泛,静的、动的,音乐、游戏、电影、运动都比较喜欢。

玄照,阿里云高级技术专家

程序生涯启航

第一次接触编程是在高中时期“非常不重要”的计算机课程Basic语言,现在回想起来仍然清晰的记得当时第一堂上机课时运行编写好的代码时的那种神秘、好奇、激动的心情,我想应该是从那个时候开始坚定了到今天的程序员生涯。因为偏科严重,大学并未能如愿进入计算机相关的专业,但因为兴趣还在,所以大学时代对软件编程课程格外关注,有时间也会偶尔到学校计算机学院去旁听自学一些课程。

可能就是因为内心始终有一份“执念”,所以运气还不错,毕业就找到了一家软件公司从事网页设计相关的工作,从此开始了转型之路,从网页设计、到测试、到割接脚本、到前端开发、再到后端开发,因为心之所向,所以不管哪里有空缺我都愿意补上去,通过三年的时间,自己也从团队的边缘做到了核心开发。

那个阶段个人的成长和进步还是非常迅速,我认为这主要得益于三个方面:首先是看书学习,当时很明确自己的不足,所以充分利用业余时间阅读了一系列JavaScript、Struts、Hibernate、SQL、编程思想、JVM虚拟机、编程思想、设计模式等技术基础相关的书来补齐自己的短板,让自己的技术体系逐步趋于全面;其次是阅读代码和实践,能主动去找机会承担需求,申请到对应的代码权限,阅读同事的代码知其然知其所以然,从中吸取经验,在实现需求更改代码的过程中也能合理的引入书中学到的一些技术点去落地;最后是虚心请教,遇到不懂的问题一有机会就会向人求教和讨论,工程师们都很热心,能耐心指导,纠结的问题能够快速的得到答案,从而提升自己的效率。

进入阿里云,跳出舒适区

到目前为止我经历了三家公司,选择来到阿里主要的原因有两点。一个是源自于自己的危机感,当时自己呆在一个职业生涯的舒适区,工作上的挑战度和个人的成长在当下的技术氛围环境下很难突破,希望能在更大的平台和有更多优秀技术人的环境中取得个人技术上的突破;其次是对阿里的好奇和向往,在所有的项目技术选型前,不管服务框架、服务治理、消息中间件、数据库、读写分离、缓存、事物处理、发布流程等涉及的技术点和流程都会不同维度的与阿里内部或者开源的中间件进行比较,总感觉得自己站在外面,了解的都是“点”,不能有体系化、深入的了解,确实进入内部了解下阿里整个的技术生态和体系。

接到offer后其实也有过纠结,从舒适区到一个这么有挑战的公司去也还是需要一些勇气,所以决定来之前给自己和家人做了很多心理建设,回想当初,心理上的准备也是我能顺利通过试用期和快速适应阿里氛围和节奏的关键因素之一。

在阿里第一年,我的感触非常多,印象最深的还是两个词:拥抱变化和绩效。阿里文化中提到比较多的词之一就是拥抱变化,也是新人参加百阿培训必定会提的,这个文化的含义我觉得也只有切身经历后才能真切的体会背后的含义,其中节奏的变化、人员的变化、工作内容的变化、团队的变化等等随时都有可能会发生,所以拥抱很重要,拥抱不仅代表对于变化的接受,还需要对于变化能快速的调整自己,学习补足自己来适应变化。

进入阿里也是第一次接触了解到云通信的业务,逐步的去学习Freeswitch开源工具、软交换、运营商的组网等知识。随之而来的也是一系列的变化,试用期内核心成员转岗,随后主管也变了,独自一人承接整个平台,平台也处于孵化阶段,问题不少,从需求设计开发、客户支持、资源接入、计费结算等等都需要人工介入,压力特别大,过程很痛苦。但是十分庆幸当时自己的坚持,那一年把所有事情都扛了下来,自认为很满意,绩效自评的时候给了自己3.75,但最后主管评价是3.5,一开始特别想不通,也开始回顾、反省和总结,后来想明白了,3.75注重的是结果,并不是你过程中有多辛苦,能否把业务支撑下来,而是你能不能让平台能力、让业务变的更好,能不能发挥周边同学的力量和你一起协同作战,其实这一年自己在这些点上做的并不是很好。

伴随云通信一起成长

第二年,经历了我在阿里最重要的一个项目,作为项目PM,完成了我所负责的平台从孵化阶段到产品化的转变,并为云通信业务上云商业化打下了一个坚实的基础。项目制定了明确的业务目标和技术目标,经过上一年的沉淀和问题梳理,从多个维度将平台能力做了全面的提升。
首先是产品化和标准化提升,解决客户接入渠道、协议多样问题;建立资源引入、测试、上线、下线的标准流程;解决人工计费、结算、对账的效率问题。

其次,构建沉淀统一的智能决策平台,基于静态、动态规则的二级路由调度平台,实现调度规则收敛以及基于成本、质量等多维度的资源调度自动化。

第三,平台架构以及稳定性的提升,全面梳理核心链路的单点问题。应用、机房级的容灾能力建设,网关全链路的心跳探测机制,实现分钟级自动隔离和恢复;供应商链路上多专线和容灾体系的构建,去除依赖,链路精简,降低系统复杂度。
第四,运维保障体系的构建,去除过于技术化的表达式配置,将配置结构化、线上化;线上问题定位、排查工具;以及监控、告警体系的构建。

项目结束后,整个平台的产品能力和稳定性得到了极大的提升,同时也能让其他团队的同学介入进来参与到整个平台能力的建设和运维中。在此基础上产品也快速的实现了商业化,成为阿里云云通信业务重要的组成部分。

也基于此,这一年也获得了主管晋升提名的机会并成功通过。关于晋升,之前其实也没有任何心理准备,讲的也都是基于两年内的平常的思考和总结。所以我非常认同,在职场中晋升是一件水到渠成的事情,最重要的是看你自己做的工作能否让业务或者平台发生改变并往好的方向发展,让业务产生更大的价值。

技术型公司需要这样的你

基于自身的经验,我认为在技术型公司团队中最重要的文化是学习能力,只有不断的学习整个团队的竞争力、创新能力才能得到提升,战斗力才能越来越强。关于学习,我的方法首先还是阅读经典书籍,对于要解决的问题、涉及到新的技术通过阅读能够全面、体系化的获取到需要的知识点。其次是像优秀的人学习,我会刻意的多观察高层级优秀同学解决问题、思考问题的方法和思路,同时遇到问题也会向他们请教、交流获取答案。

以上是我基于自己经验的一些看法,希望能给到即将来或者想要来阿里同学一些帮助。

最后,作为云通信业务的基础技术团队,技术同学的主要工作职责是各产品线技术平台的构建、能力优化以及技术创新。随着业务的发展,整体技术面临的挑战也还是比较大的,也非常希望在分布式环境下对系统架构优化、稳定性、高并发、性能优化经验丰富有想法的Java技术牛人加入我们,一起做世界上最好的云通信技术平台!

原文链接
本文为云栖社区原创内容,未经允许不得转载。

相信坚持的力量,我的程序员打怪升级之路相关推荐

  1. [ZT]鲍岳桥:一个程序员的成功之路

    联众世界总裁鲍岳桥:一个程序员的成功之路   计世网   孙小羽 浙江人 "我们老家所有的人都在做生意,有做得比较好的,也有很多失败的,但是,每一个失败的人过一段时间后都还想重头再来,接着做 ...

  2. 试用期被劝退,京东到家某程序员删库跑路,被判刑10个月!

    最近,又有程序员因为"删库跑路"被判刑. 根据上海市杨浦区人民法院的消息,京东到家一名程序员未经公司许可,在离职当天私自删除了京东到家平台系统代码,构成破坏计算机信息系统罪,被判处 ...

  3. 实现pv uv统计_程序员修仙之路优雅快速的统计千万级别uv

    菜菜,咱们网站现在有多少PV和UV了? Y总,咱们没有统计pv和uv的系统,预估大约有一千万uv吧 写一个统计uv和pv的系统吧 网上有现成的,直接接入一个不行吗? 别人的不太放心,毕竟自己写的,自己 ...

  4. 解密初、中、高级程序员的进化之路

    程序员的标准与要求 初级程序员 仅能完成简单模块和项目的开发工作,难以胜任复杂模块的开发.通常是入行不久, 1 年及以下工作经验的同学. 能力要求 熟悉前端基础知识如 HTML.JS.CSS . 能够 ...

  5. 多个容器一起打包_程序员修神之路容器技术为什么会这么流行(记得去抽奖)

    菜菜哥,你上次讲的kubernetes我研究了一下,你再给我讲讲docker呗 docker可很流行呀 kubernetes是容器编排技术,容器不就是指的docker吗? docker可不等于容器哦, ...

  6. Android程序员的进阶之路

    本文主要论述的是Android程序员的进阶之路,博主本人就是一名android开发攻城狮,所以这里讲述的大多数是android开发攻城狮的技术进阶之路,如有问题请多指正. 大家都知道程序员之中有有菜鸟 ...

  7. .Net程序员安卓学习之路5:使用xutils注入View和事件以及图片的显示

    原文:.Net程序员安卓学习之路5:使用xutils注入View和事件以及图片的显示 xUtils注入和图片显示 一.xUtils注入 引用官方介绍: ViewUtils模块:•android中的io ...

  8. 代码内容变成图片_网站只剩25行代码,真有程序员“删库跑路”?

    "可能我删了数据才会轻松吧 可能我格了硬盘才会休息吧 可能逃出了公司我就跑到天边 可能我还没找到 那个BUG--" 曾经,有一位程序员,在某个加班的深夜,一边听着<可能否&g ...

  9. 程序员修神之路--晦涩难懂的CAP,是否完全正确?

    微信搜一搜 架构师修行之路 菜菜哥,帮忙解决一个问题 是不是面试又被虐了? 是的呢,这次面试官问我什么是CAP? 这个可就说来话长了...... 01 PART CAP 说到CAP,首先不能不说分布式 ...

最新文章

  1. Max_user_connections 与Max_connections 与max_connect_errors
  2. 新技术“红”不过十年,半监督学习为什么是个例外?
  3. linux下的sort、uniq、join的使用
  4. 公司内部多表查询 sql在实现类的应用
  5. cmder添加到系统变量中_开发环境搭建之VSCode、Cmder
  6. 260. Single Number III
  7. 【转】Spark源码分析之-scheduler模块
  8. Java架构-面试怎么谈薪资——让自己的利益最大化
  9. 调用gserverdkey dll的飞鸽传书2012
  10. SharePoint2010 内容类型剖析(Content Type/ 內容類型)
  11. 安装CleanMyMac 3提示软件已损坏
  12. Leetcode 946.验证栈序列
  13. 10968134正文 52.puppet自动化运维工具
  14. php数据库插入表情转换,如何转义emoji表情,让它可以存入utf8的数据库?
  15. 35个优秀的电子商务网站设计案例
  16. 开一间蜜雪冰城能挣多少钱?
  17. 【nn.Conv3d】三维卷积参数量与运算量
  18. 生物AI插图免费领取
  19. [精选]大学生实习报告怎么写?
  20. INOVIO携手艾棣维欣商业化新冠候选疫苗

热门文章

  1. mysql临时表空间_MySQL 5.7 深度解析: 临时表空间
  2. rocket mq 监听端口_浅谈业务流程中的mq使用方式
  3. python的数据结构包括那些_python算法与数据结构-什么是数据结构
  4. 【LeetCode笔记】206. 反转链表(Java、迭代、递归、链表)
  5. 当选院士!兰州大学教授斩获美国该领域最高荣誉!
  6. 大佬!莫言获颁第13个荣誉博士学位
  7. 励志!86岁的他,申请获得国家自然科学基金!
  8. 知乎热点:数学专业的学霸们毕业后都在做什么
  9. 冲击双一流:燕山大学到底实力如何?
  10. 杨振宁讲(经典)数学笑话兼论数学和物理的关系