每日故宫 App 的开发大牛,为什么加入 XMind

有小伙伴对 XMind 的企业文化表现出了十足的兴趣。空谈企业文化很 dry,我们打算从这群在产品背后默默付出的小可爱们入手,让大家对 XMind 团队有一个更立体的感知。

今天隆重出场的是我们的远程开发小伙伴甘黎同学。

image


作为被苹果 App Store 频频推荐的优秀 App《每日故宫》的开发大牛,甘黎同学是国内那批最早的 iOS 开发者之一。除了参与过《每日故宫》等优秀 App 的开发外,甘黎同学还开发过几十款商业 App。

从 ObjectiveC 到 Swift,甘黎同学对于苹果生态有无限的痴迷。这种热爱让非科班出身的他照样把 iOS 开发这件事玩出了自己的专业和特长。

他究竟是一个怎样的人?他为何选择加入 XMind?请听我们一一道来。

XMind酱:简单介绍下你自己。

老甘:我叫甘黎,大龄非科班程序员,朋友们都叫我老甘。从小对带屏幕的东西很感兴趣,小时候在少年宫用磁带机读取数据接触编程,大学时期自学开发相关知识。

image

有趣的老甘本人

2010 年 iPad 1 代的发布给我极大的震撼,科幻电影里只有一块大屏幕的手持设备成为现实,从而开始接触 iOS 平台开发至今。从 Xcode3 到 Xcode12,从 ObjectiveC 到 Swift,苹果的生态令人着迷。

加入 XMind 前,作为 Freelancer 开发过几十款外包和失败的独立 app;进行过 Swift 1.0 的官方文档中文翻译工作;作为主要开发者参与过《胤禛美人图》、《清代皇帝服饰》、《每日故宫》等故宫 App 的制作。

双子座,性格内向慢熟 + 狂野,喜欢写代码、玩游戏、搭乐高、画画、赛车、蹦极......

XMind酱:参与每日故宫这款优质 App 开发的过程中,有什么可以和大家分享的?

老甘:故宫的项目重视用户体验和视觉呈现,开发过程中偏向研究如何用现有技术达到最佳的视觉表达效果。每日故宫项目是 Teamwork 的典范,团队优秀的策划和设计能力使技术实现成为可能。

由于存在动态数据更新和维护,如何平衡视觉效果、兼容硬件能力和减少内容维护压力成为技术构建的核心,经过各种尝试找到了目前的最佳方案。

*由于保密协议,无法展开说太多 :(

XMind酱:为什么决定加入XMind,在 XMind 的工作和之前有哪些不同,有哪些比较开心的地方?

老甘: 长期独自的 Freelancer 和外包工作模式让弊端慢慢显现,我无法深入专研某一领域,无法对一款 app 精雕细琢。 就像“手工耿”,自己捣鼓出一些看似炫酷的东西,但内心却有着深深的危机感。

在了解到 XMind 后,意外地发现这是家国人的公司,意外地发现 XMind 的工作方式与众不同。和故宫的项目一样,XMind 也是专注于打磨精品的公司。

加入 XMind 后,我开始学习团队合作和正规的开发流程,虽然走了不少弯路,也曾一度觉得自己根本不会编程,但经过一年多的调整与磨合,危机感慢慢变成信心。之前做外包项目会比较零碎,导致知识点广而不精,久而久之带来深深的危机感。而且外包项目工期有限。大多数时候为了赶时间无法仔细琢磨代码,仅仅能保证 It works,无法做到 It's awesome.

在 XMind,我们专精于一个产品,会因为一个控件的用法把官方文档翻个底朝天;会因为一个交互开一整天的会讨论出最佳实践。在 XMind,所有人都了解代码的运作原理,每一个需求都会从工程的实现角度出发,最后找到开发与呈现的平衡点。

这是我需要的工作方式,所有人都致力于打造一款精品产品,细化每一个操作交互,对于技术细节的要求虽然苛刻,但结果令人舒适。

国内大厂虽然有平台优势,但我个人喜欢小而精的团队,沟通成本低,没有办公室政治,可以专注于开发,做自己喜欢的工作。

至于大厂的 996 工作模式,我始终觉得 996 是个伪命题,争论它毫无意义。采用怎样的工作作息,应该是一个弹性的过程。公司希望员工能高效产出,员工同样也希望自己能高效工作,单纯用工作时间来衡量是不妥当的。

image

我想做 Remote 的工作。XMind 是我所知为数不多很早就实施 Remote 的公司,今年疫情后更是全员 Remote,并且保持业绩上涨。年初的时候,Boss 说今年是 Remote 工作元年。果不其然如今 Remote 已被国内外大厂提及和接受。XMind 实践出了适合自己的灵活工作方式,习惯 Freelance 的各位,在 XMind 会很快适应。

我喜欢人情味十足的,没有办公室政治的工作。在 XMind,Boss 会写代码做产品,和大家一起讨论最新的技术;CTO 虽然要求严格,但是为人和善,会帮你理清思路,解答疑问。在 XMind,公司会为小伙伴办生日会,圣诞节大家互送礼物。在 XMind,大家吃着点心,喝着饮料,对着投影讨论工作。在 XMind,按时下班后可以和大家来一场马里奥派对,玩一局桌游、练一组瑜伽。

这些在我做 Freelancer 时是无法想象的。在国外工作的朋友炫耀他们工作方式时,我说:我在 XMind 也是这样的 😄

由于一些不可抗原因,今年有段时间无法正常工作,期间得到 Boss 和同事的理解和关心并为我调整了工作。Boss 说:“你给我快点回来~”这件事对我感触颇深,XMind 是个有人情味的团队。

XMind酱:远程对你而言是利大于弊嘛?你是如何平衡工作和生活的,带孩子和敲代码之间有冲突或矛盾的地方吗,如何平衡?会让孩子敲代码吗?

老甘:远程工作对于目前的我利大于弊,弹性的工作时间让我既能保证工作时间,也能照顾家人。远程工作需要家人的理解和配合,工作时间尽量不被打扰。

image

老甘远程的桌面

编程是种思维训练,小孩不一定要敲代码,但是需要了解编程和数学思想。

XMind酱:作为第一代就开始读 iOS 文档的程序员,当时是怎么啃下来的?接触这么新的东西当时的心路历程是怎么样的,第一次看到代码跑起来的感觉如何?

老甘:作为开发者,需要一定的英语基础,获取到第一手的最新资料很重要。一开始在 iTunesU 上看 Stanford 的 iOS 开发课程入门,实操过程中针对特定问题研读官方文档。学习技术知识的同时也提升了英文能力。

官方文档是最权威的信息来源,学习的过程我用思维导图构建信息关联,了解相关知识的全貌,从而解决问题。新技术总是令人着迷,但要明确自己的实际需求,专研与业务相关的核心部分。第一款商业应用交付时,是对付出的一种肯定,也说明这条路可行。

XMind酱:你喜欢敲代码这件事吗?敲代码可以让你获得愉悦感和满足感吗

老甘:我很喜欢敲代码,陷入思考后内心平静的状态可以带来满足感。代码跑通、bug 修复后的喜悦与成就感也非常棒。

XMind酱:如何理解编程之美?你最欣赏的编程大牛是谁?在不断提升自我能力这条路上,你都做了哪些努力?

老甘:开发工程师就像巫师,用常人看不懂的符号,做出改变世界的东西。写程序就像写诗,完成功能只是基础,结构的逻辑、代码的整洁都可以做到赏心悦目,看到美的代码会由衷赞叹。

我没有特别崇拜的个人,业界的大牛,身边的同事都值得欣赏,从身边每个人身上学习,不断提升自己。Stay hungry, stay foolish. 在 XMind 的团队里,我是个新手,需要持续揣摩产品精髓,专研技术,跟同事讨论并学习。

XMind酱: 自学能力对于程序员来说非常重要,你觉得学习能力向下拆分可以拆分为哪些部分?

老甘:对于学习,首先要明确目标,找到需要解决问题的知识构架。接下分四个层次进行深入学习:

第一层:基础学习,概览整个知识构架的,做到大致有数; 第二层:检视学习,抓住知识构架的重点和内涵; 第三层:分析学习,系统化知识点,消化深层含义; 第四层:主题学习,为达成某个目标,穿插学习不同的知识构架。

image

XMind酱:业余时间你是如何度过的,除了敲代码和带孩子外,你还有哪些爱好和消遣?有哪些甘愿为之花费时间和精力的事情?

老甘:小孩出生后可支配时间大幅缩减,业余时间主要用来学习,新技术目不暇接,学习不能中断。偶尔玩下游戏,刷刷 B 站,看看方法论方面的书籍。用游戏化的心态来处理学习和阅读不失乐趣。

XMind酱:对于刚从事开发的朋友们有什么建议吗?从过来人的角度你觉得在编程中最重要的是什么?

老甘:总结几点我觉得重要的:

开发是个有压力的行业,请做好持续学习的准备;

虚心请教,善于沟通,身边的人都是老师,闭门造车只会走很多弯路;

选一家好公司入行(比如 XMind),不仅可以开拓视野,加快学习进度,还可以找到认同感和成就感;

编程切忌浮躁,静下心来才能理清思路。

在对谈中,老甘的冷静、克制、理性、清晰和条理化的回答让酱酱印象深刻。对程序员的刻板印象也一一消除,理性却不死板,认真却狂野,有份可以从中获取成就感的工作,又可兼顾家庭和生活。

XMind 是这样一个小而美的团队,我们对思维导图体验的极致追求落实到团队工作中的每个细节上。如果你也想和这帮有意思的人一起共事,我们 base 在深圳,也支持远程,欢迎加入我们