福特之道与人才管理
'我们将一次性的把公司从九个小时下调到八个小时,并向每名员工提供利润分成,年满 22 岁的员工,每人的最低收入将是五美元。'—— 福特汽车公司
这条新闻在发布的当天,底特律的劳动界彻底炸开了锅。在经济大萧条的背景下,日薪五美元是令人向往的。1914 年 11 月 12 日,这一天因为五美元的日薪诞生而变得特殊。
福特的伟大意义在于重新定义了工业资本主义的利益调节机制。这种机制不仅调节动力,也调节全社会对于'人'的认识。5 美元的'高薪'使福特可以选择全美最优秀的员工,大幅提高了生产效率。福特曾对供应商说:'你要给员工提高工资,不是因为你亏损而无法这么做,正是因为你亏损所以才要这么做!'只有这样做才能提高工人的积极性,让他们创造财富。
字节跳动的人才观
字节跳动 CEO 张一鸣深谙'福特之道'。为优秀人才配置顶级待遇、公平透明的工作机制、行业顶级的人才支持、完善的行政支持、庞大的产品流量及高自由度的产品空间,让顶级人才无法拒绝。
这促使字节在 2020 年里,员工总数从 6 万蹿到超 10 万,平均每工作日约 150 人办理入职。加入字节跳动全球超过 240 个办公点。其它公司往往二三十年才能达到的规模,字节跳动在第 8 个年头就完成了。
人员快速扩充的同时,如何保证招聘到的都是所需的'人才'?字节早期 HR 工作由张一鸣亲力亲为,他在 QQ、微博建了'可招对象'分组,早期连前台都亲自面试。张一鸣曾在内部强调,招聘是字节跳动最重要的管理工作,决定了战略能否成功。
目前字节跳动有一个约 2000 人的 HR 团队,并有近 1000 名技术员工为其提供支持。而以重视招聘著称的阿里巴巴,在 10 万人规模时,只有 700 名 HR。在今天的字节跳动,招聘既要技术,也靠体力。所以,拿着高薪的'滥竽'还是少之又少的。
三个核心标准
久居庙堂的张一鸣在人才招聘上给出了明确的要求标准:
- 超强学习能力
- 视野开阔
- 心智成熟
对于张一鸣来讲,他要招的是市场上最顶级的人,这些人必须要用市场最高的薪酬水平来获取。但与此同时,也会发现这样的人招进来之后:
公司管理的成本降低了 优秀的员工一说就灵,而且学习能力很快,公司花在每个员工身上的培训时间和金钱降低了。
领导花在员工上的心理性投入也降低了 大家目标清晰、各司其职,都不掉链子,也不用担心员工受不了压力玻璃心,我们心理性的投入就会大大减少。
回头来看,超强学习能力、视野开阔、心智成熟,张一鸣其实是通过这 3 个关键特质,精准地打中了除金钱之外的所有要素上的成本降低,来做到'降本提效'。
关于人才招聘,张一鸣有一句很有名的模仿芒格的话。第一条:永远不要损失人才;第二条:永远不要忘记第一条。在张一鸣看来,这个人才一定要到我这里来,到我这里来之后,还要避免他被竞争对手挖走。
但张一鸣认为,这个人之前做什么的并不重要,重要的是你未来能给我的公司带来什么?如果我的公司暂时没有这块业务,只要你足够优秀,我为你准备这块业务,又有何不可?只要你能帮我带来更高的 ROI,我们就可以做。
Android 技术进阶路径
除了管理哲学,技术人员的成长同样需要遵循高标准。以下是一套经过验证的 Android 高级开发技能体系,旨在帮助开发者从初级迈向架构师级别。
架构师筑基必备技能
目前 Android APP 开发主流语言依然是 Java 语言(部分新项目转向 Kotlin)。Java 语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用 Java 语言来进行编写的。深入理解底层原理是成为高阶开发者的必经之路。
知识要点:
- 深入理解 Java 泛型:掌握类型擦除机制,实现类型安全与代码复用。
- 注解深入浅出:学习自定义注解及反射机制,用于框架开发。
- 并发编程:理解线程池、锁机制及原子类,解决多线程安全问题。
- 数据传输与序列化:熟悉 Parcelable、Serializable 及 JSON 处理。
- Java 虚拟机原理:理解内存模型、GC 算法及类加载机制。
- 高效 IO:掌握 NIO 及文件流操作优化。
设计思想解读开源框架
随着互联网企业的不断发展,产品项目中的模块越来越多,用户体验要求也越来越高。想实现小步快跑、快速迭代的目的越来越难,插件化技术应用而生。如果没有插件化技术,美团、淘宝这些集成了大量'app'的应用,可能会有几个 G 那么大。
当今的 Android 移动开发,不会热修复、插件化、组件化,80% 以上的面试都过不了。
知识要点:
- 热修复设计:理解 DEX 加载机制,实现 Bug 即时修复。
- 插件化框架设计:掌握 Activity 启动流程及资源加载方案。
- 组件化框架设计:解耦业务模块,提升编译速度与可维护性。
- 图片加载框架:理解缓存策略(LruCache)及异步加载。
- 网络访问框架设计:封装 HTTP 请求,处理拦截器与回调。
- RXJava 响应式编程框架设计:掌握观察者模式及线程调度。
360°全方位性能调优
在不同层次的开发工程师手里,因为技术水平的参差不齐,即使很多手机在跑分软件性能非常高,打开应用依然存在卡顿现象。另外,随着产品内容迭代,功能越来越复杂,UI 页面也越来越丰富,也成为流畅运行的一种阻碍。综上所述,对 APP 进行性能优化已成为开发者该有的一种综合素质。
1. 设计思想与代码质量优化
- 遵循 SOLID 原则,减少耦合。
- 静态检查工具集成(Lint)。
2. 程序性能优化
- 启动速度与执行效率优化:延迟加载、预加载策略。
- 布局检测与优化:限制嵌套层级,使用 ConstraintLayout。
- 内存优化:避免内存泄漏,监控 OOM 风险。
- 耗电优化:合理调度后台任务,减少 WakeLock 使用。
- 网络传输与数据储存优化:HTTP/2, 压缩传输,数据库索引优化。
- APK 大小优化:资源混淆,去除无用资源。
3. 开发效率优化
- 分布式版本控制系统 Git:分支管理策略。
- 自动化构建系统 Gradle:脚本编写与依赖管理。
4. 项目实战
- 启动速度优化实践。
- 流畅度优化案例。
- 抖音在 APK 包大小资源优化的实践。
- 优酷响应式布局技术全解析。
- 网络优化实战。
- 手机淘宝双十一性能优化项目揭秘。
- 高德 APP 全链路源码依赖分析。
- 彻底干掉 OOM 的实战经验分享。
- 微信 Android 终端内存优化实践。
Android 框架体系架构
Android 框架体系架构(高级 UI+FrameWork 源码)这块知识是现今使用者最多的。Android 开发者也往往因为网上 Copy 代码习惯了而导致对这块经常'使用'的代码熟悉而又陌生。
本篇知识要点:
- 高级 UI 晋升:View 绘制流程,自定义 View 组。
- Android 内核组件:ActivityManagerService, WindowManagerService 等。
- 大型项目必备 IPC:Binder 机制原理与应用。
- 数据持久与序列化:SQLite 高级查询,Room 框架。
- Framework 内核解析:AMS, WMS, PMS 源码阅读。
NDK 模块开发(音视频系列)
NDK(Native Development Kit 缩写)一种基于原生程序接口的软件开发工具包,可以让您在 Android 应用中利用 C 和 C++ 代码的工具。通过此工具开发的程序直接在本地运行,而不是虚拟机。
在 Android 中,NDK 是一系列工具的集合,主要用于扩展 Android SDK。NDK 提供了一系列的工具可以帮助开发者快速的开发 C 或 C++ 的动态库,并能自动将 so 和 Java 应用一起打包成 apk。
本篇知识要点:
- NDK 开发之 C/C++ 入门:指针、内存管理。
- JNI 模块开发:Java 与 Native 交互接口。
- Linux 编程:常用 Shell 命令与系统调用。
- 底层图片处理:Bitmap 操作,OpenCV 基础。
- 音视频开发:FFmpeg 基础,编解码原理。
- 机器学习:TensorFlow Lite 集成。
Flutter 学习进阶
Flutter 技术如火如荼发展。每一个移动开发者都在为 Flutter 带来的'快速开发、富有表现力和灵活的 UI、原生性能'的特色和理念而痴狂。
本篇知识要点:
- Flutter 跨平台开发概述:Widget 树结构,渲染引擎。
- Windows 中 Flutter 开发环境搭建:SDK 安装与配置。
- 编写你的第一个 Flutter APP:Dart 语法基础。
- Flutter Dart 语言系统入门:异步编程,Stream。
微信小程序开发
微信小程序作为现在比较火的编程开发应用场景之一,深受市场的青睐。
本篇知识要点:
- 小程序概述及入门:WXML, WXSS。
- 小程序 UI 开发:组件化开发。
- API 操作:网络请求,数据存储。
- 购物商场项目实战:完整业务流程实现。
Android 相关源码解读
只要是程序员,不管是 Java 还是 Android,如果不去阅读源码,只看 API 文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。阅读源码是理解框架设计思想的最佳途径。
通过持续学习上述技术栈,结合张一鸣提出的'超强学习能力、视野开阔、心智成熟'的标准,开发者可以在技术道路上不断精进,适应快速变化的互联网环境。


