掘金 AMA - 听腾讯 NOW 直播技术团队 Leader Randzhu 谈 Android 开发和团队构建那些事

2,457 阅读8分钟

上周 沸点,掘金团队请来了腾讯 NOW 直播技术团队 Leader、Flutter 布道者 -- @Randzhu (朱政义) 做了为期三天的 Ask Me Anything (AMA) 活动。我们在此精选了一些来自用户的提问及 Randzhu 的回答。

关于Randzhu:

社区小伙伴提问

校招招Android客户端开发看重什么呢? ─ @擦肩的阳光

您好,请问一下校招招Android客户端开发看重什么呢?Java基础,Android基础,进阶,开源项目源码,项目经验,计算机基础,算法,分析解决的思路,代码能力,新热点的学习能力?这些或其他能大致排个顺序吗?

基础知识是基石,作为计算机从业人员的基本技能,这块技能要扎实,就像一座大厦,基础不稳容易倒;问题有没有分析到本质,解决办法是否有效,这个直接影响工作成果和效率;当前技术更新速度越来越快,不断的面临技术更新与转型,对学习意愿及能力要求也比较高。这三点很大程度上能影响到个人的发展空间。其他方面对于毕业生来讲经验肯定不如社招生。

在原生和跨平台应用的性能上你们是怎么来衡量 RN 和 Flutter? ─ @蓝宝的尾巴

感谢大佬来传播技术和经验,我之前有使用RN开发过简单的App应用(前端,目前还没用过Flutter),想请教两者性能和配套语言相关的问题: 1、在性能上,原生开发肯定优于RN、Flutter等跨平台技术,我了解到的是Flutter > RN, 这个差距是多少?在原生和跨平台应用的性能上你们是怎么来衡量的,是否有做过深度的比较? 2、关于配套设施,RN基于Javascript,而Flutter基于Google自己开发的Dart,相对来讲前者的普及度会更高一些,意味着使用Flutter,得一边学Dart,这对于团队来说是否有一定影响?如果是新手,能否快速上手Dart? 3、从长远发展来看,Flutter有没有可能超越RN成为最后的赢家?

很好的问题,这里分享下我的经验和思考。

问题1:我们在预研阶段对同一个业务页面实现了RN、Native和Flutter三个版本,做性能对比。结果是在cpu占用,页面加载时长,FPS这三个指标,Flutter跟Native非常接近,远好于RN,在内存方面三者无太大差别。

2:上手Dart肯定要花些功夫的,从团队的学习效果来看,做Java、JS开发的同学会比较容易上手。

3:Flutter解决性能更彻底,实现业务需求的能力也强于优于RN,但动态性不如RN,二者适用的场景是有些不同;再一个还要看二者的开发生态未来发展如何。

就现在的Android趋势来讲,哪些技术方向是值得学习的?─ @N1njaC

你好,感觉大佬能来分享经验技巧,我想问的是:就现在的Android趋势来讲,哪些技术方向是值得学习的?

围绕开发效率和质量的原则,从开发组件上,RxJava,EventBus,Retrofit,Picasso等依然是主流;从开发框架上来说,RN,Flutter,H5等混合开发使用越来越多;架构上来说,组件化,插件化,MVP,MVVM等行业内也一直在探讨。

可以分享下你的管理心得吗??─ @DiDiQi

想问下团队管理,我刚当上5人技术小组的组长,之前没有管理经验,您可以分享下你的管理心得吗?

我自己转变的时候也经历过了一个过程,分享下我的思考:1. 团队存在的价值在于业务输出,因此围绕着提高团队整体战斗力的方向上在做事上,1)思路上要从自己做转变为带人做,传递做事的方法论,引导大家解决问题,而不是遇到问题自己直接扑上去;2)关注大家的个人成长,帮助大家有效的提高自身的能力。3)扫清阻碍效率和质量的障碍。2.管理者自身上:1)团队的事情会很多,自己的时间要规划,比如哪些事情必须得自己做,哪些是可以分配下去,重点关注业务价值大的事情。2) 注重目标规划,大家目标清晰才能劲往一处使。3)时刻关注小伙伴的状态,做好情感关怀,解决负面情绪。 推荐一本很经典的管理学书籍彼得·德鲁克的-《卓有成效的管理者》。

腾讯过筛简历的时候,主要看哪方面?─ Chatc鲸鱼

工作3年,期间换过2份工作,投递过腾讯,但是简历石沉大海,想问下大佬,腾讯过筛简历的时候,主要看哪方面

1)过往的项目,主要看项目中承担的责任、碰到过哪些困难、怎么解决的,取得了什么效果,有没有沉淀出方法论。2)体现出技术热情和追求,比如自己主动研究新技术,并且到什么程度,有没有主动优化项目等。 从短短的几段文字中要体现出主动,思考,方法论和效果。

作为一位资深的 Android 开发者,请问您觉得哪些技能点是比较重要的?─ @Snailer

作为一位资深的 Android 开发者,请问您觉得哪些技能点是比较重要的?

1.从技术方面,围绕着快速高效的解决问题来讲: 1)熟练掌握性能优化手段,包括卡顿,FPS,CPU,布局优化,内存优化等。 2)架构能力,熟练掌握MVP,MVVM,组件化,并能够针对业务场景实施合适的架构方案。 3)开发组件上,要熟练掌握常用组件的原理及扩展方式,比如图片加载库,RxJava,OkHttp等,在团队碰到常用组件的问题上能够给与解决思路或方案。 4)掌握系统原理,比如安装包结构,打包安装过程,插件原理等。

2.从软技能上,要培养分享沟通表达能力,这些能力对传播知识和方法论,培训新生力量,提高整个团队的战斗力有很大的帮助。

请问如何在面试中发现一个人的优点?─ @zyg8090

请问如何在面试中发现一个人的优点? 最近一直在面人~ 面到怀疑人生 承认是个不合格的面试官 为啥我发现都是别人的缺点 T-T

人无完人,即使再牛的人,也有技术盲点。我自己的招聘原则是,先制定标准(标准要是多方位的),比如技术能力需要达到什么程度,能搞定多大的事情,有没有哪方面的技术研究比较深等,然后按照标准来评估面试者。关注点在于面试者的能力能否cover岗位要求。

比如,面试者有提到主动发现问题,主动做优化,主动推进项目,体现出主动性和责任心,那就是比较好的做事态度。 面试者做了多少总结,写了哪些博客文章,博客文章有没有上热门,有多少引用等,体现总结能力和影响力。 询问有没有工作中或生活中碰到的挫折,看看面试者回答,或者处理方式是否积极有效。 看看面试者问答过程中,是否准确理解你的问题,回答是否到位,体现沟通理解能力。

Randzhu AMA 福利:《码农翻身》

嘉宾 Randzhu 从所有提问中选择一个他觉得最有价值的问题赠送对应的提问者 @蓝宝的尾巴,同样,掘金社区根据问题获得的最高点赞数@sea_ljf 分别赠送一本《码农翻身》,书籍《码农翻身》由博文视点提供,京东购买链接:戳这,书籍如图:

两位小伙伴看到记得加清蒸好友送书给你哟,微信号:evaz0711


本期 AMA 社区小伙伴提了许多实用问题,同样感谢 Rand 认真地为掘金小伙伴解答了不少疑问。浏览更多的问答,可以到 Rand 的 AMA 进行阅读和讨论。


本周 AMA:蚂蚁金服分布式架构 SOFA 的开源负责人 -- 黄挺

本周 AMA 正在进行 时间:2018.07.31 - 2018.08.02,活动传送:👉戳这里

本周 AMA 嘉宾为蚂蚁金服分布式架构 SOFA 的开源负责人 -- 黄挺,大家有任何关于 SOFA/微服务/分布式架构/个人成长/蚂蚁金服中间件/开源 相关的问题可以和他沟通交流~

本期 AMA 结束,黄挺将会指定一名他觉得提出好问题的小伙伴赠送一本书籍 《可伸缩服务架构:框架与中间件》。同样的,官方会根据谁的提问获得最多点赞赠送他一本《可伸缩服务架构:框架与中间件》,书籍由博文视点提供,京东购买链接:戳这,书籍如图: