ArchSummit全球架构师峰会2017年深圳站 漫谈
自去年6月跳槽到某CDN厂,从偏向移动端开发又回到了专注后端,关于做一个移动应用独立开发者的计划暂时搁置,但是如马云所讲: "梦想还是要有的,万一实现了呢"。去年下半年辛苦加班加点干活,但是却乐于其中,随着团队规模扩大,现在负担小多了。不仅仅是涉及时髦的大数据技术,而是体会到了很多非纯粹编码的道,不再死守XX编程语言,毕竟产出效率为王,更何况虽然是在大公司内,但实际也可看作是创业部门,除了极个别领域,大部分是业务驱动产品开发,技术仅仅是作为落地的工具,技术随着产品演化到某个阶段也会随着变化,并非一成不变,具体到编程语言更是如此,保持开放的心态很重要,不要守着"人生苦短,我用python", 亦或"PHP是世界上最好的语言"这类;关注不仅仅聚焦在开发阶段,而是放到从需求到开发,测试,部署运营,以及中间的规范流程,需要为最终的产出负责,而非固执在沉迷在某项牛B技术,或对某个巧妙设计沾沾自喜;看起来灵活的设计似乎有助于产品有效落地,但很可能引起复杂度的增加,通过看似毫无技术含量的约定来达到目的,简单即是美嘛,我觉得是契合了Design by Contract。总之,除了技术上的成长外,其它方面也得到锻炼,可以说这次选择是自毕业以来在所待过的大小厂中收获最大的,即使曾经在BAT某厂呆过。
本来这篇文章是为了这次架构师峰会写的,忍不住先把这一年的经历,感悟一吐为快,现在来漫谈下本次峰会的自己的一些体会。
不得不吐槽下专题中的每个演讲都是45分钟,有的讲师PPT灌了太多内容,流于牛B功能的描述,而淡化了设计方面的演讲。但是自己听过的演讲中,有的确实给人耳目一新,打破自己的狭隘的观念。
千米网首席架构师曹祖鹏老师带来的<<从大厂到创业公司,架构师经历的三次转身>>印象最深刻。其中他将软件复杂度分为两种:一个是领域问题的复杂,这个是本质性复杂;另一个是称之为偶然复杂,即开发工具顺手,框架不好用,开发模式等等。很多开发人员,包括我,往往沉迷在技术,框架,工具的,即重点放在了偶然复杂上,而忽略了本质性复杂,把业务领域问题丢给了产品经理,而这个现在看来是一个不合格架构师的表现。"架构师!=框架师”:一语中的。进一步,曹老师给了他自己的关于如何做业务的看法:领域驱动设计和微服务架构关系,SOLID设计原则,命令查询职责分离模式,event sourcing等等设计原则。讲得虚一点的概括就是:梳理、分解、抽象业务需求并落地这是一个架构师的价值体现,也是架构师的竞争力所在。加上自己的一些经历体会,架构师不是简单的技术选型(或曹老师提到的拿着锤子找钉子),或者靠听几场鸡汤演讲和网上看各大牛人、大厂的关于XXX系统的设计文章就可以照猫画虎设计出优秀的架构,更多的是从实战,教训中得到成长,并联系理论进行总结、又反馈、指导实践,形成一个正向循环。当然合格、优秀架构师不仅仅是上面提到的方面,其他方面可以等过一段时间本次峰会的PPT公开出来后,有兴趣的同学下载看看哈。
爱因互动CTO 洪强宁老师的<<从程序员到架构师,从架构师到CTO>>:对 a good programmer定义了5个精:精细,精湛,精通,精深,精明,分别对应细节之处深思熟虑(如代码结构、封装),简洁、优雅、高效的代码,了解上下游知识(全栈、devops),掌握技术细节(语言、算法原理细节),准确交付(理解需求、优先级);a good architect: 取舍,前瞻,抽象,容错。后面洪老师提的architect到CTO的一个对比给我留下的深刻印象:架构师:用什么技术才能”支撑”业务,CTO:用什么技术才能“发展”业务。
另外在大数据框架专题中,首先是LinkedIn的Samza介绍,作为后来者,它catch到spark本身框架的痛点(目前,自己用redis作为statdb, 而remote db访问通过broadcast+kafka)并进行改进,其实后面提到的Apache Beam的支持才是一个关键点,目前各种离线、实时流计算框架层出不穷,他们的API及构建不一样,而通过一个统一的框架来封装这些差异,使得数据分析人员可以把时间放在真正有效产生价值的业务分析上。在第二个演讲中,来自网易的Sloth流计算平台(据称年底开源)则是从sql方向来统一离线,流计算,可能主要是考虑大部分的数据分析人员是以前写sql出分析报表,如果能将传统的sql转成现在的离线、流计算,将大大减轻分析人员学习成本。其实对sql的支持,也是目前多个大数据计算框架的目标之一,出发点也是重用分析人员sql技术考虑, 但是没有网易如此技术产品化的易用性的体验吧。这两种不同计算框架平台的演进方式,哪一种更好呢,个人更倾向并存,对于复杂的业务分析用sql要写出多大一坨东西呢,而简单的关系型的聚合分析, sql may be a good choice.
写于 汉庭酒店
ArchSummit全球架构师峰会2017年深圳站 漫谈的更多相关文章
- 优云软件助阵ArchSummit全球架构师峰会
由极客邦科技与 InfoQ 中国主办的 ArchSummit 全球架构师峰会深圳站,于 7 月 7 日 - 8 日在深圳华侨城洲际酒店举办. 本次大会特邀 100 多位国内外技术专家,与1000余名技 ...
- 【重磅资料】ArchSummit全球架构师峰会·2019华为云技术专场资料下载
ArchSummit全球架构师峰会是InfoQ中国团队推出的重点面向高端技术管理者.架构师的技术会议,54%参会者拥有8年以上工作经验.ArchSummit聚焦业界强大的技术成果,秉承"实践 ...
- 【TEGer 在全球架构师峰会】 : 腾讯海外计费系统架构演进
欢迎大家前往云加社区,获取更多腾讯海量技术实践干货哦~ 作者简介:abllen,2008年加入腾讯,一直专注于腾讯计费平台建设,主导参与了腾讯充值中心.计费开放平台.统一计费米大师等项目,见证了米大师 ...
- 2021ArchSummit全球架构师峰会上,大家在聊些什么
大会PPT公开下载链接:https://ppt.infoq.cn/list/assh2021 大会主要情况介绍 2021 ArchSummit全球架构师峰会是该大会正式成立的第十年,是极客邦科技旗下I ...
- 干货云集 WOT 2017全球架构与运维技术峰会揭密技术难点
WOT,World Of Tech专注互联网IT技术领域,是一场不容错过的技术盛会!WOT 2017全球架构与运维技术峰会三大章节,15大技术专场,60+国内外一线互联网精英大咖站台,打造兼顾技术视野 ...
- GIAC2018全球互联网架构大会深圳站盛况回顾,定格精彩瞬间!
6月1日至2日,由知名软件培训公司msup和高可用架构联合推出的GIAC全球互联网架构大会在深圳华侨城洲际大酒店盛大召开.来自国内外顶级互联网公司.诸多著名科技图书作者在内的71名海内外著名专家与现场 ...
- GIAC深圳站 | 2018年不可错过的全球互联网架构大会!
2018年6月1~2日,GIAC 全球互联网架构大会将于深圳华侨城洲际酒店举行!GIAC全球互联网架构大会是由msup和高可用架构技术社区联合举办的面向架构师.技术负责人及高端技术从业人员的技术架构大 ...
- 2017最新技术java高级架构、千万高并发、分布式集群、架构师入门到精通视频教程
* { font-family: "Microsoft YaHei" !important } h1 { color: #FF0 } 15套java架构师.集群.高可用.高可扩展. ...
- GOPS2017全球运维大会深圳站 出席嘉宾盘点!
去年,GOPS全球运维大会在深圳出发,当时门票提前几周收盘,2017年,承载着运维人的期望,GOPS全球运维大会再次来到了深圳.第六届GOPS2017全球运维大会深圳站(本次)将于2017年4月21日 ...
随机推荐
- 【图解HTTP】笔记摘要
第1章 了解Web及网络基础 根据Web浏览器(Web客户端)地址栏中指定的URL,Web浏览器从Web服务器端获取文件资源(resource)等信息,从而显示出Web页面. CERN(欧洲核子研究组 ...
- 《安卓网络编程》之第四篇 处理URL地址
在Android手机系统中,可以通过URL地址获取网络资源.在URL类的众多方法中,可以使用openStream()方法来读取该URL资源的输入流InputStream.在此方法的基础上可以引申出很多 ...
- Nginx教程(二) Nginx虚拟主机配置
Nginx教程(二) Nginx虚拟主机配置 1 虚拟主机管理 1.1 Nginx管理虚拟主机 虚拟主机使用的是特殊的软硬件技术,它把一台运行在因特网上的服务器主机分成一台台“虚拟”的主机,每台虚拟主 ...
- C语言socket编程——linux环境
先写一个服务器端的监听程序,功能室从客户端读取字符,接收到后告知客户端“I got your message: ”+收到的消息:server.c #include <stdio.h> #i ...
- Git 使用记录
在win7平台已经安装好了git的情况下: 1,Git 本地仓库建立与使用步骤: (2)新建立文件夹: $ mkdir learngit $ cd learngit $ pwd /Users/mich ...
- java-web中生成文档(一)
基于Java的解决方案也是很多的,包括使用Jacob.Apache POI.Java2Word.iText等各种方式,其实在从Office 2003开始,就可以将Office文档转换成XML文件,这样 ...
- cas4.2.7与shiro进行整合
准备工作 cas单点登录开始前准备,请参考cas4.2.7实现单点登录. 与shiro进行整合 注:准备工作的基础上,对cas客户端进行如下改进. 引入相关jar包 shiro-cas-1.2.6.j ...
- TypeScript 零基础入门
前言 2015 年末看过一篇文章<ES2015 & babel 实战:开发 npm 模块>,那时刚接触 ES6 不久,发觉新的 ES6 语法大大简化了 JavaScript 程序的 ...
- struts2 Unable to load configuration. - bean - jar:file:struts2-core-2.2.3.jar!/struts-default.xml:29:72
今天启动tomcat的时候发现如下错误记录一下! 从stackoverflow上找到 原因是加入了多个struts2包 删除相同的包即可!!
- cpp(第九章)
1.静态外部,不在任何函数内定义.静态内部,不在任何函数内,使用关键字static.静态无连接性,在代码块中,使用关键字static. 2.静态变量会自动零初始化. 3.单定义规则,在每个使用外部变量 ...