写在前面:JAVA 是世界上最好用的语言;生活中唯一不变的就是改变;由内向外的是新生,由外向内的是打破。

一:西安与华为
我叫秦风(笔名)。从学生时代接触 Java 写第一行 “hello world” 至今已有十多年了,2011年正式加入华为西安研究院先后负责接入网、做自动化测试工具、分布式调度系统等项目。这里要吹嘘一下:能进入华为的人都是牛人,这样说是有依据的,当时我们接手的这个系统主要是用于分布式执行自动化测试脚本,起初只有十几台PC机,界面极其简陋,每次只能跑一个项目组的几千个测试脚本,和预期的要求差太多甚至不能支持部门的调度执行,这其中的原因和前人留下的坑至今想起都不禁哀叹。同年7月赶上JavaSE7发布, 我们六个人决定放弃 PC 机测试的方式,采取了云虚拟机的方式部署,从50台虚拟机到500台虚拟机的调试运维,经过近2年的探索尝试,最终我们的分布式自动化测试脚本,支持了整个部门超10w个测试脚本的调度执行。原先需要一晚上时间才出来结果,后面优化到2个小时跑完。这种效率的提升就是编程的力量, 这种改变就是JAVA 轻部署易调用带来的改变,JAVA 是世界上最好用的语言!

项目的成功让我憧憬着,照此下去,很快我就可以晋升到更高级的职位:高级软件工程师。多拉风头衔啊!从此以后,谈论起职业生涯我就可以说,“是的,我是高级软件工程师,在华为工作。”全村之光有没有。当我又在同一岗位工作了两年依然没有晋升,我才认清了现实。

我的工作主要是负责一个旧的自动化测试系统。它已经处于维护模式很多年了,但是由于负载的增加,已超出了负荷。它会经常悄无声息的死掉,或输出错误的信息。我需要花好几天的时间分析并找到原因,因为除了原始需求外,没人写过任何文档。我所做的所有工作中没有任何一项可以用数字度量。或者说所做的事没有直观的展示体现。

在华为工作了4年后,我选择了离开,当时很多人不理解,华为当时正在快速发展阶段,大把的晋升机会和优厚的福利待遇。不过这些都不能给我带来安全感,也许印证了那句话——世界上唯一不变的就是变化。每天朝九晚五的生活,一成不变的工作内容,给人带来不是安全感。在这样一个快速发展的时代,颠覆性变革的周期越来越短。安稳是个危险信号,总会带给人莫名的焦虑。如何突破自己,如何跟上时代的脚步,成为了几乎每天都会不由自主的问自己的问题。

二,北京与智能一点
有一天在朋友圈里看到一则关于AI的推文《用人工智能代替重复的工作》,第一反应是这不就是我想要找的方向吗(我居然想用人工智能机器人取代自己的工作/笑哭)。欣喜一阵之后,很快冷静下来,30岁,程序员都觉得大龄了,何况要转型到一个陌生的领域。

更何况已有妻小,所有的因素都不准许我再做近似疯狂的决定。那段时是我自我审视最多的一段时间,一度对人生有些沮丧,每个人的一生都有很多问题要克服、要解决,面对困境我们是选择放弃,还是迎难而上取决于我们自己。沮丧解决不了问题,担心受怕也不能改变现状,只有积极努力向前才是最正确的选择。

在家休整的那段时间开始学习算法接触人工智能,一边找回快要荒废的数学、英语,另一边努力补充新知。就这样坚持了5个月的时间,利用可以利用的时间补充了很多“能量”。新的问题又来了,继续这样没头没脑的学,不可能成功,又不是搞科研,也没这机会。只有运用到实际的场景中才是正确的出路。

机缘巧合之下遇到了胡博士(智能一点创始人胡云华,通常我称呼“胡博”,他当时在西安做人工智能讲座),经过几次交谈,决定给我个机会试一试。自此我才正式接触到了智能一点,进入了这家进入了这家 AI 技术驱动的创新企业,来公司第一天就听胡博分享了《人工智能时代算法工程师如何成长》,收获还是挺多的,掌握一门甚至几门编程语言、数学、英语是基础。然后自学占10%,交流讨论占20%,工作中实践占70%。体会最深的就是满以为学了机器学习就可以解决很多问题,有时在实际工作中还是脑袋一片空白。还得具体问题具体分析,比如计算语义相似度,看过很多计算错误的情况,也许发现是错别字的问题,也许是分词的问题,还有可能是少了领域关键词。模型有很多为什么选择线性模型,不选择决策树,深度模型一定就适合你当前的项目吗?所以算法在结合实践才有意义。

天道酬勤。最初是跟着视频课程学习,从简单基础开始,有些技术可能需要不只一遍的学习。第一遍可能清楚了几个概念,第二遍搞懂了其中原理,第三遍就可以上手做几个简单的实验。在讲究快速学习的时候,一定不要忽略将其内化成为自己的,不然看再多也只是停留在表面。

谦虚谨慎,戒骄戒躁是一句什么时候都不过时的话。周边入行好几年的同事、CTO莫瑜(这里要着重介绍下,我们都亲切的叫他“莫大”,因为他不仅是 《编程之美》的作者,还是深度学习与Tense flow框架主编,之前在必应后来还做了哼唱识别歌曲的算法)、胡博他们看过的书和paper都不在一个数量级上,而且还在持续在努力。觉得能跟他们一起共事,并能在这一领域精进,是一件幸福的事情。

胡博从创立公司起,就一直在想如何带人和培养人,大家都说他“好为人师”。其实不然,这和他当年在微软亚洲研究院带实习生、阿里带团队培养技术人才的经历息息相关。所以他提出了 Touch AI 人才培养计划,借助之前学术界的资源请来北大、清华、中科院大牛来讲课,让大家理论联系实际,埋头苦干也抬头看路。当然,还有CTO为我量身打造学习计划,点点滴滴,无比感动。虽然,这不是一蹴而就的事情,但确实让我在往专业的方向充满了信心和希望。

我也时常思考人生,如若有一天回首往事,不因虚度年华而悔恨,不因碌碌无为而羞耻,为梦想而努力奋斗过,即便最终不如你所愿,但享受了这一过程,也不虚此行。

这就是一个十年JAVA 工程师转型的故事,我并不擅长抒情,所以也没奢望它精彩,但我想把我转型的故事分享给大家,我知道有一群和我一样的人,或许此时此刻他们也在思考我曾经思考或纠结过的问题。如果我的转型历程对你有帮助和借鉴意义,将是我莫大的荣幸。

转载于:https://blog.51cto.com/13662204/2089441

转型AI ,80后华为Java工程师的故事相关推荐

  1. 3年工作经验的华为Java工程师分享程序员应该具备的技能

    每个程序员.或者说每个工作者都应该有自己的职业规划,如果你不是富二代,不是官二代,也没有职业规划,希望你可以思考一下自己的将来.今天小编给大家分享的是一篇来自华为Java工程师对3年工作经验程序员的职 ...

  2. 30岁转行程序员,华为java工程师工资

    有赞: 一面 hashMap原理,put和resize过程 线程池有哪些类型, concurrentHashMap分段锁原理,java8和java7实现的区别 B-树和B+树区别,数据库索引原理,组合 ...

  3. 华为java工程师面试题,Java开发入门教程

    前言 Redis作为基于键值对的NoSQL数据库,具有高性能.丰富的数据结构.持久化.高可用.分布式等特性,同时Redis本身非常稳定,已经得到业界的广泛认可和使用.因此,作为一个Java开发者,掌握 ...

  4. Java面试题2021,华为java工程师工资

    前言 难道程序员的职业生命线是青春饭?答案是的. 35岁考虑转行,然后35岁又成了一个新人,而外国可以做到60岁,啥也不说了,可能是觉得中年大叔油腻,不及小鲜肉便宜,唉,可叹市场更新换代太快,快到我们 ...

  5. 80后IT创业启示 [CSDN]

    今天,在1980年到1989年之间出生的那一大批人,被称为80后.自诞生时起,80后就一直是个矛盾的群体,有人担心他们会成为垮掉的一代,也有人说他们是比过去的任何一代人都更加健康向上和积极进取的一代. ...

  6. 资深算法工程师万宫玺:Java工程师转型AI的秘密法宝——深度学习框架Deeplearning4j | 分享总结

    资深算法工程师万宫玺:Java工程师转型AI的秘密法宝--深度学习框架Deeplearning4j | 分享总结 本文作者:杨文 2018-01-02 11:03 导语:一文读懂深度学习框架Deepl ...

  7. 【人工智能】25岁Java工程师如何转型学习人工智能?

    本文目录 本文目录 25岁Java工程师如何转型学习AI? 关于基本概念的学习 系统学习资料 Yaser Abu-Mostafa Geoffrey Hinton UdaCity 小象学院 推荐阅读书目 ...

  8. 70 后,80 后硅谷派 AI 创业者的观察与思考

    截止 2018 年上半年,全国 AI 企业达到 4040 家.其中,26%的 AI 企业在北京,北京 61%的 AI 企业注册在海淀. 海淀为何能得到如此多的 AI 公司的青睐? 张弓是犹他州立大学博 ...

  9. 百度EasyDL深度学习实战营,免费教你转型AI工程师!

    新型冠状病毒的疫情动态牵动着每个人的心,在当下疫情控制阶段,AI技术的应用也正在为抗疫贡献自己的力量. 百度飞桨联合百度技术学院正式加推"EasyDL深度学习实战营"系列直播课,免 ...

最新文章

  1. javascript网络_没有JavaScript的网络外观
  2. deepin ubuntu修改grub启动延时时间
  3. wps右键新建里面没有word和excel_wps常用的基本操作方法
  4. SQL进阶,子查询与窗口函数
  5. extjs tree下拉列表_使用ztree来代替Extjs的下拉树
  6. 浏览器的“sleep”
  7. Android中ContentProvider组件详解
  8. WinEdt LaTex(一)—— hello world!
  9. primefaces_Primefaces命令按钮
  10. CloudStack 4.4学习总结之cloudstack-management安装
  11. 电子科技大学《图论及其应用》复习总结--第六章 平面图
  12. Camtasia 2019编辑视频文件时程序无响应的解决方法
  13. AR入门之动画的制作与导入
  14. “低碳生活,绿建未来”主题活动——微信运动步数打卡比赛统计分析
  15. TOM企业邮箱注册流程是什么,如何开通邮箱
  16. RS导出Excel交叉表角对应的列占用多列问题
  17. linux新建分区步骤
  18. 我上半年深陷泥淖的往事
  19. 微信登陆的LOL只有一个服务器,LOL:新功能!部分大区开放了微信登录功能,网友:有啥用?...
  20. 乐视网被冻结价值9000万财产 要贾跃亭以FF股权抵偿债务

热门文章

  1. canvas画布的基础用法
  2. OneNav一为主题魔改教程(五):点赞后自动加入到首页“我的导航”--洞五洞洞幺
  3. CornerNet: Detecting Objects as Paired Keypoints 论文笔记
  4. 入门必看 | 三分钟教你学会操作台式万用表
  5. offline强化学习之Revive SDK的使用
  6. ORB_SLAM2源码阅读(三)相机定位
  7. nvchad添加插件
  8. vcruntime140_1.dll丢失的解决方法(仅一招解决)
  9. 发卡网源码(企业和个人发卡网源码二合一)及代理系统附搭建教程
  10. 你的电脑是不是github访问一段时间又不能访问了?提示无法访问此网站。教你原理,这次学会就不用再百度