对于一个从未到过南方的内蒙汉子来说,北京的大学一直是中学时憧憬的殿堂,而离家上千公里浙江大学,则是从来没有考虑过的地方。机缘巧合之下,被一位年近七旬的浙大老师说服,我自此开始了南下“修炼”之旅。没想到转眼间竟已九年,杭州也成为我的第二家乡。

值此1024程序员节来临之际,抚今追昔,回顾一下自己的“修炼”历程。

大学时光,尝试不同的计算

和计算机的缘分也是从大学开始,初入新手村的我拥有了自己的电脑。

升入本科的第一年我们没有细分专业,只有学科大类。大二选专业的活动,就像是第二次高考志愿填报。09年的信电系异常火爆,但比起硬件底层,我对操作系统、软件、app更感兴趣,最后选择了计算机。

然而,计算机系挑战更大,很多进来的同学都早已打下基础,相比之下,从头开始学习如何编写代码的我是彻头彻尾的“萌新”。因此在完成课业之余,我整天泡在图书馆:一个一个实现《算法导论》中的算法,研究解决同样问题;使用不同算法把复杂度从N(n^2)下降到N(nlogn);和同学在ZOJ(Zhejiang University Online Judge)比拼刷题…

逐渐熟悉掌握前人的知识的我,就像获得了打怪的武器。大二开始在不同的领域,逐步尝试用算法和计算来实现自己的想法:

• 作为国内第一批使用Kinect的玩家,基于Kinect的SDK,做了一套手势+肢体动作操作PC的键鼠的小工具,并完成了一局全身充分运动的扫雷。

• 尝试Obj-c, 开发了射击类的iPhone小游戏。依靠这份经验,和小伙伴开发了一套课堂交互系统(支持教室通过app布置作业和回答问题),拿到了网易的app创新比赛奖项。

• 自学《集体智慧编程》和Andrew NG 《机器学习》公开课,逐渐点开了“推荐算法”和“机器学习”的技能树。

正是通过这些积累的经验和知识,大四拿到了阿里巴巴集团的实习offer,正式从新手村毕业进阶。

初到阿里,成为算法达人

从实习到最初两年在阿里集团的工作,我都在和各种算法打交道。而2013年的阿里,“算法工程师”还算是很新的一个岗位,我们要在海量的信息上,通过机器学习和挖掘算法让其可读、可用、有价值。

我最初就职于淘宝,怎样帮助买家在淘宝成百上千品类和数以亿计的商品中,挑选出自己想要购买的商品,或者母婴产品分类该怎么做?我用了一整个月时间,研究了淘宝的母婴类目,从关键词到宝贝类型、细节描述、品牌归属、品牌定位……原本的单身宅男几乎变成了一个母婴专家,甚至在之后半年里,我的女同事们都会找我咨询如何购买母婴产品……

在淘宝的这段时间,也是我成长和学习最快的时候。数据库、机器学习算法、JAVA项目构建、GIT版本管理,每一个技能点都得到了很大的提升。由学生时代的几M数据的算法Demo进阶到TB级的数据处理,传统的单机算法已经远远不能满足需求。

经常优化算法到深夜的我,深刻体会到了算法从N(n^2)下降到N(nlogn)的意义:也许对于算法Demo只是跑的慢一点,但对于业务,可能就决定了这个业务能不能做,能不能控制住成本,能不能真正落地应用,我也觉得身上的责任更重了。

工作不仅仅是完成任务,更是不断地去研究和解决问题。这些披荆斩棘攻坚克难的经历,也让我练就了强大的内功。

拥抱变化,让城市更加智慧

青年们,到祖国最需要的地方去!后来在阿里云的日子,颇有些这样的滋味。

三年前因为团队调整,我们来到了阿里云,也促使我完成了从把自己的算法做好,到帮助用户去实现用户数字化转型的变化。看待问题的视角也从由局部到整体,乃至整个行业。

可以做的事情更多了,挑战也更大了。来阿里云做的第一个产品是针对新媒体行业的推荐引擎,在这个项目中,我第一次完整的参与了一个商业化产品诞生的全过程:立项、研发、测试、发布。个人能力的边界进一步扩展到了项目管理,产品运维,算法来说也有了更加全面的扩展。

2017年,又一次的拥抱变化,是转投向交通行业。在追赶城市大脑的浪潮中,接触到杭州的交通行业,才发现自己对已经待了8年的这座城市,了解还远远不够。杭州“首堵”的称号扬名在外,而每天需要开车一小时通勤上下班的我,逐渐更关心这个城市的每一个交通的脉络,每一个新的规划和改变。道路就像是杭州的“血管”,我们通过算法的应用,为这座城市疏通它的每一寸“经络和血管”,注入能量。

这样的工作实际解决的每一个环节都与我们的生活息息相关。每每想到自己的每一分努力都能够帮助整个城市,都会获得满足感。如果优化算法,能使信号灯的通行效率提升一个点,就可以节约所有人加起来上百个小时的时间。如果切实的减少拥堵和提出建议,更能减少人力资源的浪费。

未来怎么样让这个城市变得更加智慧?也成为了我新的目标。

在淘宝的两年,我关注如何用算法做好一件需求。而在阿里云,我更关心怎样的产品和云平台,能帮用户更好地实现算法的联动,实现无法计算的价值。

寄语

掐指一算,今年正好是来到阿里的第5年,在杭州的第9年。

而这份“修炼”,仍在进行中……

对于有志于做算法工程师的同学,也有一些“修炼”的建议:一是持续学习,多去尝试不同的细分领域,找到自己最喜欢也擅长的方向,当然个人认为喜欢相对来说重要一些。 二是希望大家把关注点放在解决问题上面,无论是用什么框架,什么算法,高效的解决问题才是王道。 三是一定要了解计算逻辑,同时算法开发的能力也很重要,开发的过程中可以帮助梳理思路,评估算法成本。

点击了解ET城市大脑

https://et.aliyun.com/brain/city

阅读原文

转载于:https://blog.51cto.com/13687323/2308969

阿里云专家穆轩的《杭州九年程序员之“修炼”手册》相关推荐

  1. 云栖大会特享,热营抢先开,阿里云专家的私教课,限时抢报!

    简介:开发与运维.云原生.云开发,三大领域八营齐开!阿里云资深专家授课,千载难逢! 准备好了吗? 云栖大会,特享先行营,这就来啦! 2020年云栖大会就要开幕啦! 刷爆开发者朋友圈的训练营也来了! 这 ...

  2. 我的创作纪念日-从写作到阿里云专家博主的故事

    目录 在创作之路上追寻自我 首先是我为什么会埋下创作的种子 种子的萌发 通过这些经历,此时创作的种子正在长成一棵小树 创作的小树茁壮成长 大树终将结出丰硕的果实 在创作之路上追寻自我 在创作之路上追寻 ...

  3. 阿里云华东服务器上海和杭州区别对比及说明

    阿里云服务器节点杭州和上海有什么区别?华东1杭州和华东2上海只是地理位置区别吗?云服务器性能稳定方面有区别吗?哪个快网来详细说下阿里云服务器杭州和上海节点区别对比.测速说明: 阿里云服务器上海和杭州地 ...

  4. 《程序员的修炼——从优秀到卓越》一一1.6 勿以专家自居

    本节书摘来自异步社区出版社<程序员的修炼--从优秀到卓越>一书中的第1章,第1.6节,作者:[美]Jeff Atwood,更多章节内容可以访问云栖社区"异步社区"公众号 ...

  5. 程序员思维修炼:如何从新手成为专家

    在"职场跃迁工具:德雷福斯模型及应用2例"中,给大家分享了"德雷福斯模型": 这个模型,来自<程序员思维修炼>这本书: <程序员思维修炼> ...

  6. 《程序员的修炼之道——从小工到专家》读书笔记

    概览 最近读了<程序员的修炼之道--从小工到专家>这本书,感觉这本书又是属于开发进阶的必读的一本著作,而且我觉得一遍甚至还只是入门,这是一本值得都第二遍的书.再次推荐给大家,没看过的都去看 ...

  7. MongoDB 杭州用户会全记录(千寻位置、妈妈帮、阿里云专家等精彩分享)

    MongoDB杭州用户交流会于2017年3月12日下午在阿里巴巴西溪园区举行,吸引了来自全国各地的近300名用户参与,千寻位置.妈妈帮.阿里云等公司的5位技术专家分享了MongoDB 的运维管理及使用 ...

  8. 【沉淀】“三淘”和阿里云成长经历:千万不要挑活,记访谈阿里云专家子嘉...

    <沉淀>是云栖社区品牌栏目,在品味技术人百味人生的同时,也能够帮助你沉淀技术,获得点拨.工作中,如果有不错的大牛让你受益匪浅,也欢迎通过电子邮件(lose.zy@alibaba-inc.c ...

  9. 阿里云专家为你解读安全管家服务

    课程介绍 阿里云安全管家服务是阿里云安全专家基于阿里云多年安全最佳实践经验为云上用户提供的全方位安全技术和咨询服务,为云上用户建立和持续优化云安全防御体系,保障用户业务安全. 阿里云应急响应服务能够在 ...

最新文章

  1. 从某一日期开始过day天的日期
  2. MFC程序框架的剖析
  3. 算法---------两个数的交集
  4. Java FAQ(6)
  5. android152 笔记 2
  6. php 数学函数bc的使用(浮点数计算)
  7. Spring MVC和Struts2
  8. converter 无法查询活动linux源计算机,【VMware】Converter迁移linux系统虚拟机
  9. javagei图片设置热点_【物理考点】重磅押题: 2020高考物理必考热点+命题预测+例题解析, 快快快收藏!...
  10. stats | 线性回归(四)——显著性检验和模型评价
  11. 如何判断两个矩形相交
  12. FLEX APIs、Libs、Components
  13. 产品需求文档:如何撰写一份敏捷的PRD (模板2.0)
  14. Laravel文档梳理5、HTTP请求
  15. 全面解读流程图|附共享单车摩拜ofo案例分析
  16. SVG之线条动画相关
  17. TalkingData
  18. 计算机吴军科学家个人故事,吴军:阅读与写作50讲+吴军个人成长书单
  19. ProFTPD对接LDAP
  20. FPGA(二)串口通信

热门文章

  1. Python装饰器学习笔记 1
  2. 【转载】分布式数据库架构--分库、分表、排序、分页、分组、实现
  3. CCF NOI1144 众数
  4. 《开源思索集》一如何更有效地学习开源项目的代码?
  5. 使用sublime text 开发node.js
  6. [postgresql] postgresql 安装
  7. 一篇男人必看的创业文章。(人活着不能没有钱,但是活着却不能只为了钱)...
  8. Design Patterns之Adapter Pattern总结
  9. 合并重定向 command file 21 解析
  10. .net core ef mysql 的使用