第1章:创业前传 (2005-2012)
从南开校园到移动互联网前夜:一个技术理想主义者的成长轨迹
┌────────────────────────────────────────────────────────────────┐
│ 张一鸣职业生涯时间线 │
├────────────────────────────────────────────────────────────────┤
│ │
│ 2005年 2006年 2009年 2011年 2012年 │
│ │ │ │ │ │ │
│ 南开毕业 ────→ 酷讯 ────→ 微软 ────→ 饭否 ────→ 九九房 ────→ 字节跳动 │
│ │ │ │ │ │ │
│ 软件工程 旅游搜索 短暂停留 社交产品 房产搜索 │
│ BBS创建 技术合伙人 (6个月) 技术合伙人 创始人 │
│ │
└────────────────────────────────────────────────────────────────┘
1.1 南开岁月:工程师思维的萌芽 (2001-2005)
1.1.1 技术背景的形成
张一鸣,1983年出生于福建龙岩,2001年考入南开大学软件工程专业。这个选择在当时看来颇具前瞻性——2001年正值互联网泡沫破裂后的低谷期,但张一鸣已经敏锐地意识到软件技术的长期价值。
家庭背景与早期影响:
- 父亲是科技工作者,在龙岩市科委工作,培养了张一鸣对技术的兴趣
- 中学时期就开始接触编程,参加信息学奥赛
- 高考成绩优异,但选择了当时并不热门的软件工程专业而非金融、法律等热门专业
南开大学的技术环境(2001-2005):
南开大学软件学院(2001年成立)
├── 国内首批35所示范性软件学院之一
├── 强调实践导向的课程体系
├── 与微软、IBM等企业合作培养
└── 鼓励学生创新创业的氛围
在南开期间,张一鸣展现出了典型的技术极客特质:
技术实践:
- 大二创建校园BBS论坛,独立完成从架构设计到运维部署的全流程
- 使用PHP + MySQL搭建多个校园网站,积累了早期的全栈开发经验
- 参与多个开源项目,对Linux系统和开源文化有深入理解
认知形成:
张一鸣早期技术观:
├── 系统思维:从整体看问题,而非局部优化
│ └── 受控制论和系统论影响,喜欢读《系统化思维导论》
├── 数据驱动:用数据说话,而非主观判断
│ └── 大二开始记录个人时间使用数据,用Excel分析学习效率
├── 快速迭代:小步快跑,持续改进
│ └── 受《人月神话》影响,认为"没有银弹",只能持续改进
└── 用户导向:技术服务于用户需求
└── 经常在BBS收集用户反馈,凌晨修bug是常态
关键影响书籍:
- 《黑客与画家》(Paul Graham):创业思维的启蒙
- 《人月神话》(Fred Brooks):软件工程的经典
- 《算法导论》(CLRS):算法思维的训练
- 《UNIX编程艺术》(Eric Raymond):简洁设计理念
1.1.2 创业基因的早期显现
大学期间,张一鸣与室友梁汝波(后成为字节跳动联合创始人)一起尝试了多个创业项目:
| 项目 | 时间 | 技术栈 | 结果 | 经验教训 |
| 项目 | 时间 | 技术栈 | 结果 | 经验教训 |
|---|---|---|---|---|
| 校园信息聚合网站 | 2003年 | PHP + XML | 用户3000+ | 信息组织的重要性 |
| 协同过滤推荐系统 | 2004年 | Python + C++ | 实验项目 | 算法可以理解用户 |
| IAP短信业务 | 2004年 | Java | 月收入2万 | 商业模式的思考 |
| 校园二手交易平台 | 2004年 | LAMP架构 | 交易额10万/月 | C2C模式的理解 |
| RSS阅读器 | 2005年 | Python + SQLite | 1000+用户 | 信息聚合的价值 |
这些早期尝试虽然规模不大,但为张一鸣日后的创业奠定了重要基础:
- 技术积累:全栈开发能力,从前端到后端到算法
- 产品思维:如何将技术转化为用户价值
- 商业意识:技术创新必须与商业模式结合
1.2 酷讯时期:搜索技术的深度历练 (2005-2008)
1.2.1 加入酷讯的技术挑战
2005年毕业后,张一鸣选择加入刚成立的酷讯网,成为第一位工程师。酷讯是由前百度员工陈华和吴世春创立的垂直搜索引擎,专注于旅游和生活信息搜索。
核心技术挑战:
酷讯技术架构 (2005-2008)
┌─────────────────────────────────────────────────────┐
│ 数据采集层 │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Crawler │ │ Crawler │ │ Crawler │ 并发爬虫 │
│ └────┬────┘ └────┬────┘ └────┬────┘ │
│ └─────────────┼─────────────┘ │
│ ↓ │
│ 数据处理层 │
│ ┌──────────────────────────────────┐ │
│ │ 信息抽取 → 去重 → 标准化 → 索引 │ │
│ └──────────────────────────────────┘ │
│ ↓ │
│ 搜索服务层 │
│ ┌──────────────────────────────────┐ │
│ │ 查询理解 → 检索 → 排序 → 展示 │ │
│ └──────────────────────────────────┘ │
└─────────────────────────────────────────────────────┘
1.2.2 技术贡献与成长
在酷讯的三年,张一鸣从普通工程师成长为技术总监,主导了多项关键技术:
职位晋升路径:
- 2005.07:第一位工程师(员工号001)
- 2006.03:技术组长(管理5人团队)
- 2007.01:技术经理(管理15人团队)
- 2007.09:技术总监(管理30+人团队)
-
分布式爬虫系统 - 设计并实现高性能分布式爬虫,日采集网页超过100万 - 使用Python + C++混合编程,平衡开发效率和运行性能 - 实现智能调度算法,根据网站更新频率动态调整爬取策略
-
火车票搜索引擎 - 这是酷讯的明星产品,解决了当时用户购买火车票信息不对称的痛点 - 技术难点: - 实时性:需要准确反映余票信息 - 准确性:处理各种非结构化数据源 - 性能:春运期间日访问量超千万
-
房产搜索系统 - 2007年,张一鸣负责搭建房产垂直搜索 - 创新点: - 基于地理位置的索引优化(使用R-Tree空间索引) - 房源去重算法(相似度计算,准确率达95%) - 价格趋势分析功能(基于历史数据的回归分析) - 虚假房源识别(机器学习分类器,召回率80%)
技术专利:
- 《一种基于位置的信息检索方法》(2007年申请)
- 《垂直搜索引擎的去重方法及系统》(2008年申请)
1.2.3 管理能力的初步培养
2007年,张一鸣升任酷讯技术总监,开始带领20+人的技术团队:
管理理念形成:
- Context, not Control:提供上下文,而非命令控制
- 实践:每周技术分享会,让每个人了解全局
- 工具:内部Wiki系统,所有技术文档公开
- 招聘密度:宁缺毋滥,保持团队的高密度人才
- 标准:只招TOP 20%的人才
- 方法:5轮面试 + 编程测试 + 文化匹配
- 透明沟通:信息尽可能透明,减少信息不对称
- 实践:周报制度,所有人的周报互相可见
- 会议:站立会议,控制在15分钟内
团队建设成果:
酷讯技术团队成长(2005-2008)
2005: 1人 → 张一鸣独自开发
2006: 8人 → 形成核心技术团队
2007: 20人 → 分为搜索、前端、运维三组
2008: 35人 → 建立完整研发体系
关键人才引进:
- 陈华(创始人,前百度高级工程师)
- 吴世春(联合创始人,前百度产品经理)
- 后续多位核心成员后来成为独角兽创始人
1.3 微软插曲:大公司体系的反思 (2008)
1.3.1 短暂的微软经历
2008年,酷讯被TOM集团收购后,张一鸣选择离开,短暂加入微软中国。这段仅6个月的经历,却对他日后的创业产生了深远影响。
职位与工作内容:
- 职位:高级工程师(Windows Live Search团队)
- 项目:中文搜索优化、本地化算法改进
- 团队:50+人的中国研发中心
在微软的观察:
- 优点:
- 规范的开发流程(敏捷开发 + Code Review + 自动化测试)
- 完善的技术文档(设计文档、API文档、最佳实践)
- 成熟的技术栈(.NET、Azure、SQL Server)
- 优秀的工程师文化
- 缺点:
- 决策链条长(一个功能需要6层审批)
- 创新速度慢(产品迭代周期3-6个月)
- 官僚主义严重(KPI导向,创新动力不足)
- 大公司病(部门墙、内部竞争、资源浪费)
具体案例:
- 产品决策:一个搜索结果页面优化,从提案到上线花1个月
- 资源分配:同一功能有3个团队同时开发,最后选一个
- 创新激励:创新项目很难获得资源支持
关键反思:
大公司 vs 创业公司
┌─────────────────────────────────────┐
│ 大公司 │
│ • 流程规范但效率低 │
│ • 资源充足但浪费多 │
│ • 人才济济但激励弱 │
│ │
│ 理想模式 │
│ • 规范而高效 │
│ • 资源优化配置 │
│ • 人才密度高且激励强 │
└─────────────────────────────────────┘
这段经历让张一鸣确信:中国互联网需要既有大公司的规范,又有创业公司灵活性的新型组织。
1.4 饭否时代:社交产品的探索 (2008-2009)
1.4.1 中国Twitter的技术实践
2008年底,张一鸣加入王兴创立的饭否网,担任技术合伙人。饭否是中国最早的微博类产品,比新浪微博早了近一年。
技术架构设计:
饭否技术架构 (2009)
┌──────────────────────────────────────────────┐
│ 前端层 │
│ Web (Ruby on Rails) + WAP + API │
├──────────────────────────────────────────────┤
│ 应用层 │
│ Timeline生成 │ 消息推送 │ @提及 │ 搜索 │
├──────────────────────────────────────────────┤
│ 缓存层 │
│ Memcached (Timeline缓存) │
├──────────────────────────────────────────────┤
│ 存储层 │
│ MySQL (分库分表) + Tokyo Cabinet │
└──────────────────────────────────────────────┘
技术创新:
-
Push-Pull结合的Timeline生成 - 大V采用Pull模式,实时生成 - 普通用户采用Push模式,预先生成 - 有效平衡了性能和实时性
-
消息队列系统 - 自研轻量级消息队列 - 处理@提及、私信等异步任务 - 为后来字节跳动的消息系统奠定基础
-
实时搜索 - 基于Sphinx的准实时索引 - 支持按时间、用户、标签等多维度搜索
1.4.2 产品思考与用户增长
增长策略:
- 技术驱动:
- API开放平台,吸引100+第三方开发者
- 主要应用:FaWave(Firefox插件)、手机客户端、桌面客户端
- 技术支持:OAuth认证、RESTful API、实时推送
- 产品创新:
- 首创#话题#功能(2009年1月),后被所有微博产品采用
- 首创@提及功能,增强用户互动
- 图片分享功能,支持直接上传和外链
- 私信功能,满足私密交流需求
- 运营精细:
- 基于数据分析的用户分层运营
- 意见领袖识别和重点运营
- 话题运营:#早安#、#晚安#等日常话题
用户画像分析:
饭否用户构成(2009年Q2)
├── 年龄分布:
│ ├── 18-25岁:45%
│ ├── 26-35岁:40%
│ └── 35岁以上:15%
├── 职业分布:
│ ├── IT从业者:30%
│ ├── 媒体人:20%
│ ├── 学生:25%
│ └── 其他:25%
└── 活跃度:
├── 日活跃用户:30%
├── 周活跃用户:60%
└── 月活跃用户:85%
用户数据增长: | 时间 | 用户数 | 日活跃用户 | 技术挑战 |
| 时间 | 用户数 | 日活跃用户 | 技术挑战 |
|---|---|---|---|
| 2009Q1 | 10万 | 3万 | 单机可支撑 |
| 2009Q2 | 30万 | 10万 | 开始分库分表 |
| 2009Q3 | 100万 | 30万 | 引入缓存层 |
1.4.3 突然终止与深刻教训
2009年7月,饭否因政策原因被关停,这给张一鸣带来了深刻的教训:
关停事件回顾:
- 时间:2009年7月7日
- 原因:新疆事件后的信息管控
- 影响:100万+用户无法访问,数据全部封存
- 后续:2010年11月恢复,但用户已流失
关键认知:
- 技术不是万能的: - 产品成功需要技术、运营、政策等多方面因素 - 社交产品特别敏感,需要更加谨慎
- 风险意识: - 创业需要考虑各种风险,包括政策风险 - 建立风险预警机制和应急预案
- 备份方案: - 不能把鸡蛋放在一个篮子里 - 多业务线并行,分散风险
- 内容审核的重要性: - UGC平台必须有完善的审核机制 - 技术手段 + 人工审核相结合
对后续创业的影响:
- 字节跳动初期坚持做纯PGC内容(今日头条)
- 建立强大的内容审核团队(2018年超过1万人)
- 多业务线并行发展策略
- 国际化布局,分散地缘政治风险
1.5 九九房:垂直领域的深耕 (2009-2011)
1.5.1 从社交到垂直的转型
饭否关停后,张一鸣创立了九九房,专注于房产信息搜索。这次创业是他第一次作为CEO的完整实践。
为什么选择房产:
- 市场规模大:房产是中国最大的消费市场
- 信息不对称严重:虚假房源、价格不透明
- 技术可改造空间大:传统房产网站体验差
技术架构升级:
九九房技术架构
┌────────────────────────────────────────────────────┐
│ 数据采集系统 │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │搜房爬虫 │ │58同城爬虫│ │赶集爬虫 │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
│ └──────────────┼──────────────┘ │
│ ↓ │
│ 数据清洗系统 │
│ ┌─────────────────────────────────────┐ │
│ │ 去重算法 → 真实性验证 → 价格异常检测 │ │
│ └─────────────────────────────────────┘ │
│ ↓ │
│ 机器学习系统 │
│ ┌─────────────────────────────────────┐ │
│ │ 房源推荐 │ 价格预测 │ 用户画像 │ │
│ └─────────────────────────────────────┘ │
└────────────────────────────────────────────────────┘
1.5.2 算法创新与产品迭代
核心算法创新:
- 房源去重算法
- 问题:同一房源在不同平台重复发布
- 挑战:
- 地址描述不一致(“朝阳区” vs “朝阳”)
- 面积单位不同(平米 vs 平方米)
- 价格波动(同一房源不同时间价格不同)
- 解决方案:
# 伪代码展示去重思路
def calculate_similarity(house1, house2):
# 地址相似度(编辑距离 + 地理编码)
addr_sim = address_similarity(house1.addr, house2.addr)
if house1.lat and house2.lat: # 若有经纬度
geo_dist = haversine(house1.lat, house1.lng, house2.lat, house2.lng)
geo_sim = 1 / (1 + geo_dist) # 距离越近相似度越高
addr_sim = 0.7 * addr_sim + 0.3 * geo_sim
# 面积相似度(容忍5%误差)
area_diff = abs(house1.area - house2.area) / max(house1.area, house2.area)
area_sim = 1 if area_diff < 0.05 else 1 - area_diff
# 价格相似度(考虑市场波动,容忍10%误差)
price_diff = abs(house1.price - house2.price) / max(house1.price, house2.price)
price_sim = 1 if price_diff < 0.1 else 1 - price_diff
# 特征匹配(户型、楼层、朝向)
feature_sim = feature_matching(house1, house2)
# 综合相似度(加权平均)
return 0.4 * addr_sim + 0.25 * area_sim + 0.2 * price_sim + 0.15 * feature_sim
# 阈值判断
DUPLICATE_THRESHOLD = 0.85 # 相似度超过85%认为是重复房源
- 效果:去重准确率92%,召回率88%
-
价格预测模型 - 基于历史成交数据训练 - 特征工程:位置、面积、楼层、朝向等 - 模型:从线性回归到GBDT的演进
-
个性化推荐 - 用户行为分析:浏览、收藏、联系 - 协同过滤:找到相似用户的偏好 - 内容推荐:基于房源特征的推荐
1.5.3 商业模式探索
盈利模式演进: | 阶段 | 模式 | 收入规模 | 问题 | 尝试与教训 |
| 阶段 | 模式 | 收入规模 | 问题 | 尝试与教训 |
|---|---|---|---|---|
| 初期(2009.10-2010.3) | 纯搜索引擎 | 0 | 无盈利模式 | 流量增长快,但无变现路径 |
| 中期(2010.4-2010.12) | 广告模式 | 月10万 | 天花板低 | CPC价格低,房产广告主少 |
| 后期(2011.1-2011.8) | 交易佣金 | 月50万 | 模式过重 | 需要线下团队,偏离技术基因 |
具体商业化尝试:
-
竟价排名模式: - 类似百度,房产中介付费置顶 - 问题:损害用户体验,虚假房源增加 - 放弃原因:与“真实”的产品理念冲突
-
会员订阅模式: - 个人用户付费查看联系方式 - 问题:中国用户付费习惯未养成 - 转化率:<0.1%
-
线下门店模式: - 尝试开设2家线下体验店 - 问题:成本高、模式重、规模化难 - 投入产出比:1:0.3(严重亏损)
关键决策:出售给搜房网
- 2011年,九九房以近千万美元价格被搜房网收购
- 原因: 1. 房产交易链条长,纯信息服务价值有限 2. 需要大量线下团队,与技术基因不符 3. 看到了移动互联网的新机会
1.6 移动互联网的机遇洞察 (2010-2012)
1.6.1 移动浪潮的判断
2010年,iPhone 4发布,Android快速普及,张一鸣敏锐地意识到移动互联网的历史性机遇。
关键数据洞察:
中国移动互联网发展趋势 (2010-2012)
┌─────────────────────────────────────────────────┐
│ │
│ 智能手机保有量(百万) │
│ 500 ┤ ╱ │
│ 400 ┤ ╱╱╱╱╱ │
│ 300 ┤ ╱╱╱╱╱ │
│ 200 ┤ ╱╱╱╱╱ │
│ 100 ┤ ╱╱╱╱╱ │
│ 0 └──────────────────────────────────── │
│ 2010 2011 2012 │
│ │
│ 移动流量占比 │
│ 40% ┤ ━━━━━━ │
│ 30% ┤ ━━━━━━━━━ │
│ 20% ┤ ━━━━━━━━━ │
│ 10% ┤━━━━━━━━━ │
│ 2010 2011 2012 │
└─────────────────────────────────────────────────┘
1.6.2 移动产品的特征分析
张一鸣深入研究了移动互联网与PC互联网的差异:
移动端特征对比: | 维度 | PC互联网 | 移动互联网 | 产品启示 |
| 维度 | PC互联网 | 移动互联网 | 产品启示 |
|---|---|---|---|
| 使用场景 | 固定场所、长时间 | 碎片化、随时随地 | 内容需要短平快 |
| 交互方式 | 键鼠操作 | 触屏、语音 | 界面需要简化 |
| 网络环境 | 稳定宽带 | 不稳定、流量贵 | 需要离线能力 |
| 屏幕大小 | 大屏幕 | 小屏幕 | 信息需要精简 |
| 传感器 | 少 | GPS、陀螺仪等 | 可以做LBS、AR |
1.6.3 内容分发的新思考
传统门户的问题:
- 编辑主导:少数编辑决定多数人看什么
- 千人一面:所有用户看到相同内容
- 更新慢:跟不上信息爆炸的速度
算法分发的机会:
内容分发模式演进
┌──────────────────────────────────────────┐
│ 1.0 门户时代 │
│ 编辑 → 内容 → 所有用户 │
│ │
│ 2.0 搜索时代 │
│ 用户 → 关键词 → 搜索引擎 → 结果 │
│ │
│ 3.0 推荐时代 │
│ 用户行为 → 算法模型 → 个性化内容 │
│ ↑ ↓ │
│ └────── 反馈循环 ─────┘ │
└──────────────────────────────────────────┘
1.6.4 技术储备与团队组建
2011-2012年筹备期:
-
算法研究 - 深入研究Netflix Prize推荐算法竞赛 - 学习Google News的新闻聚类技术 - 研究Facebook的EdgeRank算法
-
团队招募 - 梁汝波(大学同学):负责后端架构 - 杨震原(前百度):负责基础设施 - 王长虎(前微软):负责推荐算法
-
技术选型 - 后端:Go语言(当时很前卫的选择) - 存储:MySQL + Redis + HBase - 算法:Python(灵活性高)
1.7 字节跳动的诞生 (2012年3月)
1.7.1 公司创立与愿景
2012年3月,北京字节跳动科技有限公司正式成立。公司名"ByteDance"的含义:
- Byte:信息的基本单位
- Dance:信息的流动如舞蹈般优美
初始愿景:
"信息的自由流动,让每个人都能获得他想要的信息"
1.7.2 首个产品的技术决策
今日头条的技术定位:
产品定位金字塔
╱╲
╱愿景╲
╱信息分发╲
╱──────────╲
╱ 使命 ╲
╱ 连接人与信息 ╲
╱────────────────╲
╱ 产品价值 ╲
╱ 你关心的,才是头条 ╲
────────────────────────
MVP版本技术架构(2012年8月上线):
- 内容采集:50+主流媒体源
- 推荐算法:协同过滤 + 内容相似度
- 用户规模:日活1000+
- 技术团队:8人
1.7.3 早期的关键决策
三个关键技术决策:
-
All in 算法 - 不设编辑团队,完全依靠算法 - 风险:内容质量难控制 - 收益:可规模化、个性化
-
移动优先 - 先做App,后做Web - 专注于移动端体验优化 - 利用移动端的用户行为数据
-
快速迭代 - 每周发版 - A/B测试驱动 - 数据说话
1.8 创业前传的总结与反思
1.8.1 技术积累总结
张一鸣2005-2012技术能力图谱
┌────────────────────────────────────────┐
│ 全栈能力 │
├────────────────────────────────────────┤
│ │
│ 前端 ████████░░ 80% │
│ 后端 ██████████ 100% │
│ 算法 █████████░ 90% │
│ 架构 █████████░ 90% │
│ 数据库 ████████░░ 80% │
│ 运维 ███████░░░ 70% │
│ │
│ 领域经验 │
├────────────────────────────────────────┤
│ 搜索 ██████████ 100% │
│ 推荐 ████████░░ 80% │
│ 社交 ███████░░░ 70% │
│ 广告 ██████░░░░ 60% │
│ │
└────────────────────────────────────────┘
1.8.2 管理理念形成
核心管理原则(后成为字节跳动文化基石):
| 原则 | 来源 | 具体实践 |
| 原则 | 来源 | 具体实践 |
|---|---|---|
| Context, not Control | 酷讯/Netflix | 提供充分信息,让员工自主决策 |
| 坦诚透明 | 饭否 | 信息尽可能公开,包括财务数据 |
| 始终创业 | 九九房 | 保持创业心态,反对大公司病 |
| 追求极致 | 个人性格 | 不满足于60分,要做就做到极致 |
| 延迟满足 | 长期主义 | 不急于变现,先做好产品 |
1.8.3 关键人物网络
张一鸣创业前人脉网络
张一鸣
│
┌─────────────────┼─────────────────┐
│ │ │
梁汝波 王兴 陈华
(大学同学) (饭否创始人) (酷讯创始人)
│ │ │
技术合伙人 产品理念 创业经验
│ │ │
└─────────────────┼─────────────────┘
│
早期核心团队
│
┌─────────────────┼─────────────────┐
杨震原 王长虎 陈林
(基础架构) (算法负责人) (产品负责人)
1.8.4 历史的必然与偶然
必然因素:
- 移动互联网的爆发是历史必然
- 信息过载需要新的分发方式
- 算法技术的成熟使个性化成为可能
偶然因素:
- 饭否的关停让张一鸣更早独立创业
- 九九房的经历让他看清垂直领域的局限
- 恰好赶上智能手机普及的窗口期
关键洞察:
"技术改变世界不是一句空话。但技术本身不产生价值,技术与用户需求的结合才产生价值。2012年,我们看到了移动+算法+内容的机会,这三者的结合将改变信息分发的方式。" —— 张一鸣,2012年
第1章完,下一章将详细介绍今日头条如何通过算法推荐在2012-2014年间快速崛起,成为中国移动互联网的现象级产品。