本期对话嘉宾:@夏磊
访谈编辑:芒果果前端
英国伦敦泰晤士河旁的威斯敏斯特大教堂里有一座无名墓碑,上面刻着一段流传甚广,关于改变世界,关于梦想与现实的文字。大意是“最初想改变世界发现目标太宏大而难以实现,若是从小事作起也许真的能改变世界”。程序员
夏磊目前是一家知名互联网公司的高级后端开发工程师,与他聊天的时候,我真切地感觉到了他仍像当初那个少年,仍然对写代码充满热情。编程
从高中起夏磊就坚决了学习计算机的目标,把编程看做极具创造力的事。如今,28 岁的夏磊说:“只要你有好的点子、想法,均可以借助计算机实现,这是多么美好的一件事情!”segmentfault
Q:尝试用两种不一样的方式介绍一下本身吧后端
程序员中最会讲段子的,段子手中最会编程的。用三个词来形容的话就是:乐观、幽默风趣、好奇心强。前端工程化
姓名和性别的话相信经过个人 ID 应该能发现了:夏磊,年龄28,在现阶段仍是能够说一下的,可能日后就没那么好意思说了,哈哈。服务器
Q:您以为 28 岁对一个程序员来讲应该是职业的什么阶段,有什么规划吗?微信
28岁是一个具体的年龄,实际上每一个人进入行业工做的年龄不尽相同。架构
工做的第一个五年是个分水岭,五年以内能够根据兴趣换语言、换技术栈甚至是换行业等等,用五年的时间去熟悉业界的技术、语言,根据本身的兴趣去选择一个方向深刻钻研,构建起属于本身的知识体系和技术栈。另外,就是要有一点点上进心,拒绝只会“复制-粘贴”的程序员。框架
Q:何时开始接触编程的,契机是什么?
大学吧,高考志愿填报的计算机系。说到契机,应该仍是兴趣吧,可以经过本身的双手实现那么多有创造力的事情。
Q:掌握的技术栈?目前主要使用的编程语言是?
参加工做这么多年,主旨就是一个“用合理的语言解决需求”。
常言道:“没有程序员不会的,只有程序员没学的”,因为工做需求,在前端、服务端、App 端均有涉猎,服务端语言主要是 Go+Java,偶尔写写 PHP和 Node.js。前端的话主要是Typescript+Node.js,对Vue/React/Angular 三大框架均有使用,目前倾向于 Vue 和 React 框架。App 端的话主要是 React Native,若是对性能要求不高而对审核敏感的话通常是 Cordova+Vue 组合。
Q:您在前端、服务端、App 端都有涉猎,哪种您以为更驾轻就熟?
驾轻就熟的话目前谈不上,具体问题具体分析吧,随着前端工程化和 App 框架的兴起,相对来讲,前端和 App 是比服务端简单一点的。根据不一样的业务场景,可能会有差异,目前主要仍是以服务端为主。
Q:工做中最常使用的几个工具是什么?好用的插件推荐?
工做中主要仍是 Jetbrains 全家桶吧,要说推荐的插件的话,插件那么多,我只推一个:PlantUML,对于我这种写代码以前会把架构理清楚的人来讲,UML 必不可少。而经过纯文本的方式就能编写 UML,节省了大部分排版、美化的时间。
Q:不一样工做阶段会学习不一样的语言吗?是处于什么缘由呢?
学习语言的目的应该说是为了弥补短板,好比使用 PHP 几年以后发现性能瓶颈确实很差解决,所以学习了 Node.js 去开发一些高性能、实时性强的程序,而 Node.js 的弊端应该算是工程方面,没有全栈框架,这一点 Java 作的很是好,因此逐步去学习 Java 了,而 Java 虽然开发效率、运行效率都不差,可是挺占用服务器资源,随着微服务的兴起,就去学习 Go了,学习语言的时间都不算太长,更多的时候应该花在了生态上,语言提供的功能都不会差太多,毕竟不能让语言成为门槛。
Q:最近有没有尝试新的编程语言?
尝试过 Kotlin和 C#,可是对于语言这个东西,我仍是以为内功最重要,语言只不过是武器罢了,而内功部分包括的东西比较多,可是我以为最重要的是发现问题与解决问题的能力,这是核心竞争力。
编码以前、设计先行、流程图/UML 图先行。早前喜欢边想边写,后面遇到复杂的业务逻辑时常常须要推到重来,浪费时间,因此后面养成了画图的习惯,有什么问题在编码以前就可以暴露出来解决掉,能够极大地提升生产力。
Q:尝试 Kotlin和 C# 的缘由是什么?
Kotlin 算是工做须要吧,公司的 App 须要进行迭代,刚开始用的 Java 开发安卓 App,因为语言的局限性,确实会有必定的效率损失,因此尝试了 Kotlin。至于 C# 的话是我的兴趣,有段时间比较喜欢捣鼓 GUI程序,这一块作的比较好的应该仍是非微软莫属,基于 C#+WinForm 开发了一些工具。
Q:通常经过什么方式和渠道提高本身的能力?
通常经过系统性地学习,消化以后,经过博客的形式发布出来,和社区成员进行讨论,收获颇多。
Q:分享一下你的工做流,有什么我的的特别的工做习惯么?
工做中比较喜欢画图,而画图是竞争力的体现,就比如“画一条线 1 美圆,知道在哪里画 9999 美圆”同样。设计或者说是架构能力是很是重要的内功之一。我的的习惯就是对代码有洁癖,甚至于到了对齐方式上。
Q:工做以后有哪一个瞬间让你以为颇有成就感?又有哪一个瞬间让你“怀疑人生”?
有成就感的事情应该算是支付平台流水达到千万而没有出现事故的状况,毕竟本身也担忧这快。
“怀疑人生”的事情通常是花了很长时长去处理 Bug,到头来发现是个低级错误。又或者说是硬件故障致使的一些奇葩问题,这一块确实须要比较强的搜索能力。
Q:目前为止最满意的开发项目是什么?
在前公司开发的一个通用支付平台,基于微信支付开发,整合了 App、H五、扫码等渠道,业务端可以在很是短的时间内接入微信支付,而不用理会微信支付的文档。开发时解决了很是多的疑难杂症,包括促销活动期间下单边界条件问题、对帐问题等等。对一个公司来讲,涉及到钱的东西是不容许任何差错的,所谓“失之毫厘,谬以千里”,在业务量很是大的状况下,哪怕是小数点级的偏差也会带来很是大的影响。
Q:如何看待国内社区的环境和氛围?
国内社区大致上内容重复率偏高,不少炒冷饭的现象,固然,不能否认,每一个人都有成长期,因此发表的内容有重复是正常的,可是对于社区建设来讲,咱们须要更多的有我的看法的人来,而不是发一堆说明书。
Q:讲讲与思否的故事吧
注册地比较早,是 2015 年,当初是查问题搜到了思否,发现了这个神奇的网站,接下来就是利用本身的所学知识解决社区中的问题了,成就了别人,也成就了本身。
近两年发现光回答问题彷佛帮助不了多少人,所以开始写专题文章,用最简单的话解释一些难以理解的知识,这一块在前端部分收到了大量好评。
思否在国内问答平台这块,我的以为帮助了很是多的开发者解决了他们的问题,其中不乏一些其余国家或地区的人,思否是一个很是有活力的平台,一样也是一个对于新人很是友好的平台。
Q:对社区有哪些建议和意见?
目前仍是应该对文章和提问中的广告采起高压态势,早年混迹的号称国内第一的 PHP 论坛,因为运营问题,大量广告得不处处理而没落了。
这是一个很现实的问题,树大招风的道理咱们都懂。
Q:生活中有什么爱好?
工做之余也会打游戏,毕竟暂时凡人,不是学习或者工做机器,天气好的时候会带上相机出去摄影,记录一下本身的生活。
Q:若是能够从新选择是否还会选择这个职业 ?
应该仍是会选择,无他,兴趣使然,兴趣是最好的老师,而计算机这块能够说”开局一台机,人生全靠撸“,只要你有好的点子、想法等等均可以借助计算机计算实现出来,这是多么美好的一件事情!
Q:你会在何时「退休」?
兴趣使然,估计不会有所谓的退休。
Q:对编程初学者和怀抱梦想对年轻人有什么建议?
必定要培养发现问题和解决问题的能力,混迹过不少社区,大部分的问题实际上是很是简单的,有些初学者可能看到报错就内心惧怕,其实不必,都没上线你怕啥?借助于翻译工具,80%的问题均可以直接翻译出来,从而解决。剩下的20%复制错误消息以后丢到搜索引擎基本也能解决的差很少,而对于初学者来讲最难的部分是“报错消息究竟是啥?”,这个大部分的报错消息找第1个 Error 或者Fatal 之类的字眼便可发现。
第二个事情就是多看书,多练手,“眼过千遍,不如手写一遍”,写过的东西记性仍是牢一点。
我有酒你有故事么?
欢迎有兴趣参与访谈的小伙伴踊跃报名,《思否有约》将把你与编程有关的故事记录下来。
报名邮箱:mango@sifou.com