徐磊(Devops):一名写了十几年代码但还没写够的程序员

640?wx_fmt=png


640?wx_fmt=png

徐磊(Devops 社区领袖)

【个人介绍】

徐磊,微软MVP(微软最有价值专家,大中华区域社区技术总监,Devops 社区领袖),从事过网管、技术支持、网络、软件开发等工作,一名写了十几年代码但还没写够的程序员。1999年,本科毕业于北京理工大学工业管理专业和计算机专业;2001年,硕士毕业于UNSW信息工程专业。2004年加入了SSW(www.ssw.com.au);2005年组建SSW中国研发中心任Country Manager,2012年成立独资公司SSW LIMITED BEIJING,任SSW中国研发中心总经理。2014年创立Lean-Soft,专注于软件工程领域的创新实践。目前为英捷创软CEO首席架构师,资深ALM顾问和解决方案专家,ScrumMaster,敏捷教练,超过10年的软件研发项目管理经验。


【写在前面】

编程语言绝对不是学习编程最核心的东西,因为语言只是传递信息的方式/工具,把学习编程语言当作学习编程的最终目标那就是最大的误解!”。学习方法其实很简单,就是多写;另外还要保持好奇心,对任何新技术要保持热情。



·  正  ·  文  ·  来  ·  啦  ·

640?wx_fmt=png

学习与工作


初识编程

第一次接触计算机是在小学时代,当时在妈妈工作单位的机房中有几台apple II电脑,在上面玩游戏玩得不亦乐乎;上高中以后,终于有了自己的第一台286电脑,也开始学习一些Basic编程。真正意义上的编程并用技术赚钱是在高中毕业的那个暑假,我在中关村的一家电脑公司打工,当时还在使用DOS和Windows 3.1系统,很多客户都希望可以打开电脑后,自动的进入VCD播放或者开始玩游戏;于是我就用之前玩过的.bat编写一些电脑引导程序,可以在启动的时候自动显示菜单供用户选择要进入的程序,很受欢迎,基本上每个客户都要求安装我写的引导程序,自己也很有成就感!


工作之旅

1995年毕业于北京理工大学管理学院,主修管理工程专业,辅修计算机专业;2001年赴澳大利亚留学,2002年在新南威尔士大学(UNSW)修完信息科学专业的硕士研究生,在澳大利亚工作了5年后回国。

在澳大利亚期间,在多家软件公司工作过,最早从事PHP/Java开发,后来为IBM工作1年时间,完成了澳洲税务局的桌面系统升级,澳洲最大的连锁超市(coles)的打印系统升级和澳新银行(ANZ)的柜员系统维护工作;最后进入SSW,开始从事微软技术的开发,完成了公司最受欢迎的产品SSW Exchange Report的开发工作。2005年,受SSW委派回到中国,成立了北京研发中心,任公司首席架构师和总经理,开始拓展中国区业务。2007年开始活跃于微软开发人员社区,作为微软背景.NET俱乐部的核心组织者,开展了很多社区工作,也成为了微软最有价值专家(MVP),并于2008年获微软社区最高技术奖项,微软区域技术总监(Microsoft Regional Director),此奖项在全球只有约100人,当时是我是中国区的唯一一名。

2008年开始,借助多年技术开发和项目管理积累的经验,开始从事软件生命周期管理(Application Lifecycle Management - ALM)方面的咨询服务,与微软Visual Studio 开发团队建立了良好的合作。至今已经为超过100家各种类型/规模的软件开发团队提供过和ALM落地服务,包括:华为、石化盈科、中国移动、中国人民保险、百威英博、京东、招商国际和斯伦贝谢等大型研发团队的管理。其中多家公司的研发团队规模超过2000人,涉及各种不同的开发平台,技术和工具。同时,我也开始在各种类型的技术会议上进行技术交流和演讲,主要专注于微软开发技术和ALM方面的实践和解决方案,案例的交流。

2014年,我成立了英捷创软(Lean Soft),继续专注于软件工程领域的服务和创新,并开始开发自己的产品。2015年,开始运营个人博客站点:http://devopshub.cn及微信订阅号 devopshub。

640?wx_fmt=png


关于创业

提到创业,应该说我的这些经历都是我创业的原因之一;我经常和别人说的最多的一句话就是,我希望把这些年看到别人犯的错误都写下来,分享给别人,让其他人不要再走同样的弯路。其实这就是作为一名咨询顾问最大的优势,看到的多了,自然就知道哪些是更好的解决方案。

我的公司叫做Lean Soft(英捷创软),大家如果对精益有了解就应该明白我公司名字的用意了;其实这里面有2个意思,第一个是我希望以精益的思想来运作自己的公司,第二个是我希望能够帮助其他的软件开发团队了解精益的思想,变得敏捷起来。成立这家公司其实也是希望把这些年积累的各种管理经验和技术自我操作一下,如果在我自己身上可行,那才有可能拿出去给别人做为参考,才能帮助到别人。

说不上是梦想,就是希望能够有更自由的方式做自己想做的事情;最大的挑战其实是如何平衡家庭和工作。说实话,之前工作的10年我过度关注工作的重要性而忽视了家庭,所以这一次我希望能够平衡好,毕竟工作不是生活的全部!创业者最需要知道的是自己擅长什么!现在很多人创业都在问,现在市场需要什么,其实这个问题真的不重要,你自己能做什么才重要!

其实从05年开始运营SSW北京研发中心开始我就已经不算一个纯粹的技术人员了,面对管理、市场、财务、业务、销售等等问题都需要解决和面对。其实不是技术人员创业会遇到瓶颈,而是每个人都会遇到瓶颈,这个瓶颈就是你不懂的东西,而保持好奇心就是解决这个问题的办法。记得07年开始公司曾经一度无法招聘到合适的会计(因为总部要求熟悉中澳两国的会计制度),我一边编程一边把公司的账目梳理,并且完成了近3个月的会计工作,而且使用Excel的Pivot Table功能作出了财物预测功能。其实每种工作都有其中的乐趣,保持好奇心,发现你能改进的东西,一切皆有可能!

近年IT业快速变化,影响肯定是有的,但“影响”本身是个中性词,不代表好坏!而我所专注的软件工程领域其实这几年变化很大,不过其核心思想是不变的,变化只是方法,工具和做事的人!


640?wx_fmt=png

经验分享


学习经验

【学习语言】

编程语言绝对不是学习编程最核心的东西,如果把学习编程语言当作学习编程的最终目标那就是最大的误解!就如同我们日常说话一样,语言就是帮助你传递信息的方式/工具,而你要表达的意思才是核心。理解了这一点,你就会发现,学习不同的编程语言不过就是不同的表达方式而已,这比多掌握几门外语其实简单过了,至少变成语言只使用26个英文字母,而且不用读出来。

学习方法其实很简单,就是多写;我入门时候的时候曾经把谭浩强老师的C语言教材中所有的代码自己敲了一遍/运行一遍;现在我也是一样,在网上看到希望学习的语言,我都会自己敲一遍,而不是拷贝/粘贴运行一下而已。另外一点就是要保持好奇心,对任何的新技术都要保持热情,好折腾是一行的本质!

【分配时间

分配时间其实是个大难题,因为很多事情每天都在变,而经常还有各种突发情况。我的习惯是尽量让生活形成规律,将不同的事情区分对待!比如各种杂事是可以用零碎时间做的,而编程则需要比较长的时间持续进行,我就把这些杂事做为编程的调剂和休息。

写程序还是每天的必修课,不过有时候是工作内容,有时候纯属兴趣爱好,最近比较喜欢玩JavaScript、Node.js、还有PowerShell … 对脚本语言比较钟情。

工作中的每一天都在充实,看到不懂的东西就会顺藤摸瓜的去研究一下;现在搜索这么方便,没有什么知识是互联网上找不到的(当然,要用Google,不是百度!)。


三个收获

【收获一:学会如何学习】

出国对我来说,确实和编程有很大的关系,我在大学选专业的时候没有办法直接选择自己喜欢的计算机专业,而进入了管理专业,虽然后来自己辅修了计算机专业,但还是觉得不过瘾。于是,毕业以后就开始准备出国留学,继续学习编程。应该说,在那个大家都希望出国移民的时代,我的出国意愿非常单纯。

出国留学对我来说,收获很大。其中最重要的应该是学会了如何学习,在国内的大学中,其实一直处于被动学习的状态,但到了国外才发现,学习真的是自己的事情。特别是,第一次电子工程考试失败后,老师告诉我如果期末不能得到95分以上,我就必须重修的时候(要知道重修一门课程就是将近2000澳币的费用);我开始疯狂的学习,每天只睡3个小时,一直持续了3个月。


【收获二:思维方式的转变

第二个重要的收获是,思维方式的转变。其实,从国外回来才开始真的感觉外国人的思维方式和中国人确实不同,因为那个时候不仅仅要做开发,还要管理北京研发中心的日常运作,开始和总部之间有了很多的“非技术”交流,开始深深感受不同文化背景给每个人所带来的影响。我不想评论孰好孰坏,但对这种不同的了解开始让我可以用多个角度来思考问题。


【收获三:为人父母学会生活

最后一个才是最大的收获就是我的儿子,开始为人父母以后很多事情真的不同了。我儿子2004年出生,现在已经上小学5年级了。虽然现在很多时候需要照顾他而改变很多自己的习惯,比如熬夜、晚起等等;但我也发现,其实一个人只有会生活,懂得如何生活才真的知道自己想要些什么。


640?wx_fmt=png

社区建设


当选MVP

07年第一次当选MVP,至今连续8届。其中做的事情很多,博客/论坛/技术交流/演讲等等都有。国内的技术社区首选CSDN和博客园,最近我还比较关注开源中国;另外国外的就是GitHub,StackOverflow这两个。其实参与论坛和社区对技术人员很重要,因为你所遇到的问题80%以上别人都已经遇到并解决了,所以知道“从哪里”和“如何”获取这些知识就是决定了你成长的速度,想象一下:你花了2天时间琢磨出来的问题,我用Google搜索5分钟找到了答案,那我就比你节省了2天的生命(技术生命)。我们常说10000小时定律,但怎么能够善用这10000小时,让它更有效率其实才是你真的应该关注的!

640?wx_fmt=png


经营社区

兴趣为先,谈论自己感兴趣的话题当然有的聊!但是经营还是需要的,这里面又很多方法,比如你必须熟悉SEO(就是搜索引擎优化)。如何用技术和非技术手段,不花一分钱提高自己的网站排名,这是有办法的。最好的例子就是我原来所在的SSW公司的网站(www.ssw.com.au),我曾经有2年多的时间负责公司网站的SEO工作,让公司的网站在没有使用任何的竞价排名的情况下,对主要关键词的搜索结果进入Google前2页!

从2015年开始,我开始运营DevOps门户(http://devopshub.cn)这个博客社区,利用这些经验和手段,我没有使用任何的竞价排名的情况下让我的《快速创建网站》系列博客的每一篇文章都在3天内阅读量超过3000,总阅读量超过50000。无论是演讲和写博客,内容都首位的,你的战术再好,如果内容不好还是不行的。所以讲干货才是所有的经验中最重要的!

640?wx_fmt=png



640?wx_fmt=png

兴趣爱好


跑步/旅行/养狗

跑步、旅行和养狗是我除了工作之外的主要爱好了。坚持每天跑步和健身,这应该算是最好的充实自己的方式!其他的,读书、听音乐也不错,但我觉得这几年我做的最正确的事情就是坚持每天跑步,其实很多程序员的生活方式都非常不健康,熬夜、吃垃圾食品等等,我之前也一样,但是开始跑步以后真的一切都在发生改变。所以,最后给大家最重要的建议就是:坚持运动、保持健康、每天编码!

我的阿诺(一条4个月大的拉布拉多犬), 我工作的时候它一般都会乖乖的趴在脚边,当然也会时不时的提醒我休息一下。

640?wx_fmt=png


阅读(书/博客)

【好书推荐】

  • 《Running on air 跑步时该如何呼吸》:这本书真的很好,很多人都有跑步岔气,受伤等问题;其实根本问题是呼吸的方法不对。因为我们无法直接控制自己的心跳和血液供氧率,呼吸频率和深度是唯一可以控制的。所以在跑步的时候控制好呼吸就是你正确控制心率和提高跑步质量的最好办法!

  • 《The Lean Startup 精益创业》:这是微软全球副总裁Julia推荐给我的书,微软的Visual Studio 团队使用精益方法成功的将自己的版本发布周期从2年缩短到3个月;这里面思维方式的转变非常重要,Julia做为vs团队的领导者对这一些深有感触。我自己读过以后也觉得受益匪浅!建议每个创业者都应该读一读;这本书与那些讲商业模式的书最大的区别是作者用自己的真实经历在叙述过程,由你自己发现结果;而不是上来就讲些啥模型/模式等等!(建议阅读英文原版)

  • 《Clean Code 代码整洁之道》:关注代码本身质量的书不多,这本不错。如果说写代码是在用“编程语言”说话,这本书则在教你如何“唱歌”,讲究韵律,规则和美感应该是每个程序员应该学习的,也只有那些真的关心编程本身的程序员才能体会到这些!


【博客推荐】

  • DevOps 门户:我运营的研发运维一体化技术门户,自己广告一下!

  • Scott Hansleman 博客 :这哥们写了10多年,我也看了10多年,要关注微软技术的最新动向,特别是Asp.net,Azure的内容,多关注这个博客。

  • 微软ALM开发团队博客:如果你对软件工程感兴趣,这个博客不容错过。


640?wx_fmt=png



·  写  ·  在  ·  最  ·  后  ·


关注Devops

最后感谢大家的阅读!

  1. 文档中心:https://docs.devopshub.cn

  2. DevOps+LIVE直播频道:https://devopslive.bopoda.cn

  3. 微信群:微软DevOps技术交流群 (关注devopshub公众号就可加入)


640?wx_fmt=jpeg

徐磊与潘淳,2018年11月27于苏州邮储,开展关于《金融科技创新环境下银行科技的项目管理思路和案例》的专题培训。


640?wx_fmt=png

夹岸高山,皆生寒树。——南朝梁·吴均《与朱元思书》

就做一个有个性,较高端的,Office 技术小品牌~~~

QQ交流群:976054900

查看更多交流方式

微信号:寒树Office

英文ID:HSOffice

640?wx_fmt=jpeg


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是我为您推荐的 10 本 .NET 国内程序员读的书: 1. 《深入理解C#(第3版)》- 许莹: 这是一本经典的 C# 语言教材,从基础语法到高级特性深入讲解了 C# 语言的各个方面,是 .NET 开发者不可或缺的一本书。 2. 《ASP.NET MVC5实战》- 韩亮: 这是一本实战性很强的 ASP.NET MVC 教材,通过实例演示了 ASP.NET MVC 的各种技术和应用场景,对 .NET Web 开发者来说是一本非常有价值的书籍。 3. 《C#高级编程(第10版)》- 本特利: 这是一本关于 C# 高级编程的书籍,包括异步编程、LINQ、泛型等多个方面的内容,对于想要深入掌握 C# 语言的开发者来说是一本不可多得的参考书。 4. 《CLR via C#(第2版)》- 杰弗里·里克特: 这是一本关于 .NET 平台的内部工作机制和实现原理的书籍,对于深入理解 .NET 平台的开发者来说是一本非常重要的读物。 5. 《ASP.NET Core实战》- 徐磊: 这是一本实战性很强的 ASP.NET Core 教材,通过实例演示了 ASP.NET Core 的各种技术和应用场景,对 .NET Core 开发者来说是一本非常有价值的书籍。 6. 《C#设计模式》- 邹欣: 这是一本介绍 C# 设计模式的书籍,通过实例和案例讲解了如何使用设计模式解决实际开发中的问题,是一本非常实用的 C# 设计模式入门书。 7. 《C#多线程编程实战》- 张喜民: 这是一本介绍 C# 多线程编程的书籍,通过实例和案例讲解了如何使用多线程编高效、可靠的 C# 程序,是一本非常值得推荐的多线程编程入门书。 8. 《高效程序员的45个习惯》- 罗伯特·C·马丁: 这是一本关于编程习惯的书籍,通过 45 个实用的编程习惯,帮助开发者出更加高效、优雅的 C# 代码。 9. 《C#高级编程指南》- 刘铁猛: 这是一本关于 C# 高级编程的指南,包括语言特性、集合框架、反射和动态编程等多个方面的内容,对于想要深入掌握 C# 高级编程的开发者来说是一本非常有价值的参考书。 10. 《C# 7.0新特性详解》- 刘铁猛: 这是一本介绍 C# 7.0 新特性的书籍,包括元组、模式匹配、局部函数等多个方面的内容,对于想要了解 C# 7.0 新特性的开发者来说是一本不可多得的参考书。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值