技术开发 频道

架构师:开放不是一个简单的技术问题

  团队成长与技术的演进

  来到淘宝是为了继续能够实现把开放平台做成产品的理想。在技术的角度,希望追求更多的创新和突破,在产品角度希望找到更多的商业价值亮点推广给ISV。在淘宝技术大学学员可以自选团队的时候,我去讲开放平台总是会得到不少同学的认可,有一点其实是蛮吸引人的,就是在平台这个团队,任何一个层次的人都有,这里层次值得是技术应用的层次,你可以是对业界前端技术很敏感的人,你也可以是对底层大数据高并发体系很热衷的人,也可以是迫切希望了解淘宝电子商务体系架构的人,因为这个大团队就分成了这些层,来满足从上到下,从内到外,从外部开发者体验到后端服务接入体验的各种需求。但其实事事未必如此。

  在开放平台技术发展来说,有两条“腿”:技术驱动(指的是从平台角度来满足一些非业务性的需求,例如稳定性,可用性,性能等),产品驱动(指的是在商业上的应用场景需求来向平台提出功能增强)。在平台构建初期,产品驱动会占60%甚至更高。而到了平台中期(其实可以看作第二阶段),产品驱动会降至30%甚至更低。但不论怎么说,两种驱动长期一方占优势都会导致平台走偏,产品驱动长期占主导,那么平台长远发展及平台化特性就会被削弱,技术驱动长期占主导,那么可能就会让平台偏离需求,远离开发者。对于开放平台的研发团队需要的是在商业模式的肯定下找到技术创新,因此如何去让每个不同层次的团队去了解平台整体的发展是很重要的。

  在管理者的角度来说,研发团队的精细化是很有必要的,但是对于平台来说,小团队有时候会成为整体发展的瓶颈。当时进淘宝开放平台是挂在基础平台组,老大目的也是希望能够抓住重要的一群人,抓住重要的核心应用,但是上半年经过老大认可,在小团队里面抽出了部分人组成了虚拟小组,在关注和驱动整体平台发展,经过快半年的运作逐渐进入状态,这里的人不在仅仅停留在小团队的需求上,更多的是去了解全局的目标。这样最重要的一点就是防止技术驱动导致的技术狂热爱好者做出一些空想的设计和实现,挫伤自己也挫伤团队。我也时不时的会脑子发热,但是当我看到自己的目标,平台产品化的方向,有些事情就会去考虑的更多,因为技术创新不仅仅是浸淫在技术技巧或者语言技巧上,更多地是在已有的知识基础上去运用和挖掘。这种思想需要在每个开放平台的开发同事脑子里都有个概念,这样才能够将技术发挥到极致,也是我觉得做产品和去做实验品最大的区别。创业不一定要走出去自己搞,通过产品或者平台改变公司未来的发展那也是一种创业。

  参考与照搬

  今天在Facebook不认为是问题的,在淘宝可能都是问题,原因很简单,开放的内容不同,面对的用户和开发者不同,问题自然不同。很多人会说开放平台认证一定要用OAuth,然后URL设计要符合REST等等,其实这些都是表象。很多时候,标准是为了开发者更便利,可以看看很多时候所谓的标准都沦为了附属品(额,我们支持xxx)。

  记得在淘宝技术大学和同学交流开放平台的时候谈到淘宝要做开放平台的另一个目的就是做标准,这个标准不是定出来的,而是被“骂”出来的,用的不爽就说,说了就改,你说你是电子商务行业标准,关键是任何领域要用起来都很简单,很方便(包括与传统体系对接)。在安全上SNS认为的安全和淘宝认为的安全完全是不同的,流程开放,多角色的涉及等等都是电子商务所特有的,因此很多时候这些就是开放平台人的价值所在。

  当然今天我们还会去学习国外的架构体系,安全设计,同时也需要去不断创新。今天客户看起来平台什么都没做,但是满足客户需求了,那就是成功了,因为平台就是要对开发者透明,简化,做的很深奥,用起来很复杂那就是很挫的一个平台。(做异步化分享的时候谈到很多人喜欢画那些复杂的架构图,其实如果要做到稳定可靠高效,需要的就是看的清楚的几条线)。

  扯远了,总的来说,现在国外或者国内都有很多开放平台,有很多值得借鉴的地方,但是作深了,其实是要根据业务来定制化开放平台。

  零零散散的写了这么多,按我以前语文老师的说法就是“脚踩西瓜皮,滑到哪里算哪里”,其实就是想说一下开放中各个角色将会面对的一些问题,包括开发者,包括平台研发团队,包括服务提供者(多半是自己网站),有些事情想清楚了会找到自己的目标,而不是盲目跟风,伤害了自己,也伤害了开发者。良好的生态圈需要更多的关注细节,关注目标。

0
相关文章