职场 18 年回忆笔记二:一个程序员开始越过岗位边界
2010年4月1日,愚人节这天,我加入X公司。
这是一家本地报业集团旗下的新媒体子公司,承担着母集团传统纸媒在互联网时代的数字化转型。
我加入的时候,X公司已经不是一个简单的“报纸上网”项目了。
早在2006年,网站就已经建成。到2010年,公司已经形成了一套完整的新媒体矩阵:地方门户网站、手机wap网,在线数字报纸、在线视频直播、在线播客。
公司下设新闻报道部、新闻评论部、市场营销部、技术部、电商部共计一百多人。技术部下面又分产品运营、运维和研发组。
我在研发组,是4个开发人员之一。
技术部的定位非常明确:服务业务。
新闻部需要什么专题,我们搭建出来;市场部需要什么活动,我们开发出来;数字报纸、新闻内容管理系统、新闻搜索、活动专题页面、内容频道页,都是我们的工作。
有时候,需求甚至直接来自于报纸总编辑。
我们很少参与“为什么做”,更多时候只负责“怎么做”。
当时我并没有觉得这有什么问题。
毕竟,当初我工作刚两年,认为程序员的工作不就是把需求实现出来嘛。
入职后我参与了一些新闻专题页搭建,技术已经成熟,过程相对比较轻松。之后负责了一个稍复杂的项目,是做一个房产频道。
它承接上海本地新房和二手房源信息发布,除了获取本地流量,也可以承接房地产商广告,增加网站收入。
市场部负责内容建设,产品组设计页面呈现,技术组负责功能实现,主要由我来编写程序。
技术实现本身也不难。
但在编程过程中,我开始思考一些业务上的问题:
房产数据从哪来的?
内容应该怎么组织?
房源应该怎么筛选?
用户进来以后,会不会找不到自己真正关心的信息?
为什么这个模块放在这里?
这些想法其实很自然。
上一家公司R公司做的是美国业务,离我的现实生活比较远;而在这里,业务就发生在身边,做业务的同事离我只有几步远。
我第一次觉得,程序员似乎也可以离业务近一点。
但市场部运营同学被我问烦了,最后直接对我说:
那是我很明确地意识到:
我开始对“怎么实现”之外的问题产生兴趣。
我关心的已经不只是页面能不能做出来。
项目最后顺利上线,页面符合预期,任务也就完成了。
但我后来发现,“上线”并不是一个产品故事的结束,恰恰应该是开始。
上线以后有没有用户?
用户从哪里来?
哪些功能有人用?
哪些页面没人看?
用户为什么离开?
这些问题,当时几乎没有人讨论。
对我们来说,项目的终点就是:交付。
偶尔会有一些细小的修改:这个图片往左移一个像素,那个排名增加到10个,这个模块换一下顺序,按钮再调整一下。
改完以后,也没人再讨论它到底有没有变好。
我慢慢意识到:
把东西做出来,和把事情做好,是两回事。
技术部内部同样不会复盘。
没有代码评审,没有产品复盘,也没有上线后的数据分析。设计稿来了,我写程序;程序上线,交付;然后下一个项目。
这意味着,我过去在上家R公司非常在意的那些事情——代码质量、提交规范、程序结构、可维护性——在这个环境里突然失去了意义。
不是这些东西没有价值。
而是它们只是把事情做好的其中一部分。
很多新闻专题的生命周期只有一周,热点过去以后,页面几乎没有访问量。
在这种情况下,只要网页能打开、不报错,任务就算完成。
于是,当正式工作越来越像重复的需求执行时,我开始主动寻找一些能够真正产生价值的事情。
我使用开源软件为团队从0到1搭建了内部知识库和Bug追踪管理系统;后来又参与媒体信息采集系统测试,以及公司电商系统的选型。
这些都不是我的编程工作,
但它们让我发现:
真正让我有成就感的,似乎不是“今天实现了某个功能”,而是“我是不是让某件事情变得更好了一点”。
公司需要向上面交待的,是新媒体转型的成果:
有没有具体动作?
有没有新的产品?
重大报道有没有及时跟进?
有没有新闻或评论获奖?
至于技术部写的代码漂不漂亮,某个程序是否好维护,都不是最重要的事情。
我们的身份更像“需求接收器”:
至于为什么做、用户是谁、结果怎么样,那不是你的职责。
我发现,我们很少知道自己做的东西最后产生了什么结果。
今天交付一个专题,明天开发一个页面,后天上线一个功能。
任务完成了,但用户有没有增加、收入有没有增长、内容有没有传播,很少有人告诉我们。
这种环境真正危险的地方,是它太舒服了。
一个技术人员如果长期只负责“把别人想好的东西实现出来”,他到底还能从哪里获得成长和成就感?
这个问题开始在我脑子里慢慢出现。
于是,我开始做一些没有人要求我做的事情。
下班以后研究网站流量,看用户从哪里来,哪些页面有人访问,哪些页面几乎没人看;研究竞品网站的内容建设。
去播客节目做嘉宾。
去直播间兼职摄像。
给新闻部提供新闻线索。
给集团内刊投稿。
主动认识各个部门的人。
这些事情看起来没有什么关系,但它们其实都在回答同一个问题:
这个网站到底是怎么运转的?
于是,我开始试着越过那条边界。
有一次,全员大群里讨论一条新闻如何取一个更好的标题。
新闻部的同事都在里面热火朝天地讨论。我觉得挺有意思,也拟了一个标题发到群里。
结果新闻部负责人马上在群里说:
没过多久,我的直属领导又来找我,说:
话说得很明确。
边界也划得很清楚:
技术可以实现业务需求,但不要参与业务判断。
那时候我意识到:
我真正感兴趣的东西,正在慢慢超出这个岗位允许我做的事情。
2010年,微博正火。
各种意见领袖在新浪微博上发表观点,引发舆论,正在改变传统媒体的信息传播方式和速度。
公司管理层很快捕捉到了这个机会,于是采购了一套微博系统,让技术部做本地化改造,同时准备上线网页版、Android版、苹果手机版,以及支持诺基亚手机的塞班系统版本。
我被抽进项目组,新闻部主任担任PM。
项目组被安排在一个会议室里,除了我们技术部几个人,还加入了几名负责手机移动版本的外包人员。
整个系统的效果图已经由产品组做好,我们几个程序员就是按照效果图一比一实现页面功能。
我们埋头写代码。
当需要业务决策时,PM拍板。
没有参与产品设计上的讨论:
为什么这样设计?
这个功能解决什么问题?
这些都不是我们的事情。
技术部的任务,就是把已经决定好的东西做出来。
当时我突然意识到:
我们不是在参与设计一个产品,我们是在执行一个已经被设计好的产品。
现在回头看,这是我职业生涯里非常重要的一个瞬间。
因为我第一次真正看清楚:
这家公司需要的,不是一个能参与产品的人,而是一个能把页面搭出来的人。
伴随着微博项目的上马,新闻部负责人又做了一个非常激进的决定:
把网站首页从传统门户形式,整体改成微博信息流。
从上到下,都是一排排的信息。
这其实是一次非常大的产品调整和网站改版。
但技术部没有参与方案讨论,也没有人真正向我们解释,这种设计到底想解决什么问题。
整个流程依旧简单:
有人拍板,我们执行。
但这一次,我没打算做完就算。
我开始自己监控改版前后的数据。
那一个月,我基本每天加班到晚上10点、11点。
整层楼的灯都关了,新闻部值小夜班的编辑也下班了,我还坐在电脑前,统计页面各项访问和留存数据,监测改版后的用户反馈,小心复核各项数据的对比。
最终,我发现用户流失严重,网站首页流量明显下滑,Alexa网站排名也跌了不少。
当时我越来越确定:
这不是一个页面细节的问题,而是一次产品改版正在影响用户行为。
我该如何反馈这个问题,并让业务真正重视?
我做了一个大胆的动作。
我把这些数据整理成了一封邮件。
标题就是:
《网站改版后用户流失严重》
邮件里,我把问题一项项列出来,并在结尾写下了非常严厉的结论:
然后,我把邮件发给直属领导和技术部负责人,为了引起领导足够的重视,我同时抄送了新闻部负责人和总编辑。
第二天一早,我就感觉办公室的气氛不太对。
我的直属领导被叫进了技术部老大的办公室。
出来以后,他把我们技术组成员都叫进一间会议室。
他没有冲我发火,相反,还在大领导面前替我维护,说我只是比较着急,对业务比较上心。
但他也指出:
这个邮件的越级反馈方式非常不合适。
这种问题应该先在内部讨论。
邮件应该先发技术部负责人,抄送相关技术、产品同事,把问题消化在内部,而不是直接抄送总编辑,更不应该让问题一下子扩散到多个部门。
他说得没错,那封邮件里其实有两个问题。
第一个问题是:
我发现了什么?
第二个问题是:
我应该通过什么方式,让组织处理这个问题?
第一个问题,我做到了。
第二个问题,我当时并没有处理好。
发现问题是一种能力,让问题被组织正确地接住,是另一种能力。
从业务上说,我拿的是数据。
从组织关系上说,我越过了边界。
产品组当然不舒服,因为流量下降这件事,是一个技术人员先发现并直接捅了出来。
新闻部门也不舒服,因为这份报告实际上是在否定他们主导的改版。
技术部领导同样尴尬。
我几乎同时得罪了三拨人。
总编后来确实发了火,要求产品组同事赶紧解决流量的问题。产品组同事开始向我要各种数据,语气明显带着情绪。
但另一面,这件事也让我进入了高层视野。
月度员工大会上,我拿到了一个“积极进言奖”。
公司领导层认为现在大家都比较安静,缺乏一个像我这样敢于说话的人,要像狗一样旺旺叫。既鼓励了我的发声,也安抚了新闻部负责人。
这个奖后来让我想了很久。
它其实非常矛盾。
公司一方面要求你遵守边界,不要越界;另一方面,当一个人真的越过去、说了实话,又会觉得这个人很难得。
一个组织可以认可“有人敢说真话”,但这不等于它已经建立了一套让大家正常说真话的机制。
一个多月后,网站首页又改回到了传统门户展示形式。
当然,今天回头看,我也不认为自己当时的判断就是完整的。
网站流量下降,不一定全部由一次首页改版造成;一个产品也不能只用流量来判断成败。
当年的我,掌握的产品分析方法其实非常有限。我当时也有些“自以为是”。我以为只要数据足够清楚,结论足够正确,组织就应该接受。后来我才知道,职场真正复杂的地方,从来不只是判断对错,还包括如何让正确的事情发生。
2010年11月15日,上海胶州路教师公寓发生大火。
公司的数字卫星直播车刚好就在附近。
这辆直播车,是网站为了新媒体转型专门购买的,设备都是电视台级别。
当时它完成了非常珍贵的第一手现场直播,连当时香港凤凰卫视在直播时也特别提到过。
从新闻采集角度看,这是一次很好的证明:
传统媒体也可以拥有新媒体的速度。
但问题很快出现了。
流量一下子涌进来,网站访问开始不稳定,视频直播尤其卡。
那一幕在今天的我看来,非常有象征意义。
为了新媒体转型,公司投入了很多:
办公区、服务器、带宽、直播间、播客设备、直播车,还有大量人员。
但真正面对用户的时候,我们却未必能提供一个稳定、持续、有效的互联网产品体验。
这让我第一次强烈意识到:
资源投入,并不等于产品成功。
有产品,也不等于有用户。
做了很多新媒体动作,更不等于真正完成了数字化转型。
当时公司还做播客、视频直播等产品。
这些东西在汇报的时候都很漂亮:
我们有播客。
我们有直播。
我们有数字化内容。
我们有新媒体矩阵。
但实际的数据却很冷。
在线播客每期听众很少;在线直播可能当天只有十几个人观看。底下如果有评论,很多时候还是内部同学的刷贴。
因为没有形成用户习惯,嘉宾没有流量,内容缺少传播效应,网站本身也没有形成稳定的观看习惯。
但这些产品又必须做。
因为它们承担着一个非常重要的使命:
向母集团证明,我们正在转型。
公司做了很多“动作”,但动作和结果之间,并没有真正建立联系。
即使我们把直播做得足够稳定,把页面做得足够漂亮,如果用户根本没有兴趣打开它,那么技术和产品上的优化又有什么意义?
我开始把目光从产品本身,进一步移到了网站每天生产的内容。
传统媒体的报道方式通常是:哪里发生火灾,记者赶过去;哪里发生车祸,记者赶过去。等记者抵达现场,救护车可能已经离开,最紧张的时刻已经过去。最后留下来的,是几张现场照片和一篇事实经过。
这在传统媒体时代已经是一条完整的新闻。
但互联网正在改变用户对“新闻现场”的期待。
用户不只想知道“发生了什么”,还想知道“现场到底发生了什么”。
现场的视频、声音、人物的反应、第一视角的画面,能够提供文字和静态照片很难提供的现场感。
当然,今天回头看,我们很容易用今天的视频、直播和移动互联网去衡量当年的媒体。
但在2010年,我们确实正处于一个从文字和图片向视频、直播逐渐过渡的阶段。
而更让我遗憾的是,很多报道既没有现场感,也没有继续往下挖。
火灾发生了,我们知道哪里着火、造成多少伤亡;
车祸发生了,我们知道地点、车辆和事故结果。
但事故背后的人呢?为什么发生?谁受到影响?一个家庭经历了什么?
很多报道到“事实发生”就结束了。
既没有现场感,也没有故事。
这让我意识到,公司在内容上似乎同时存在两个问题:有些内容缺少足够的现场感,有些内容又停留在事实层面,缺少进一步的深度。
而数据又给了我另外一个答案。
当我继续研究网站流量来源时,我发现,网站真正的大流量,反而来自搜索引擎。
体育、科技、娱乐等内容,搜索属性比较强,容易从外部获得流量。
网站曾经深度报道过凤姐、芙蓉姐姐,流量非常可观,用户评论成百上千,但这并不是网站新闻报道的主流内容。
而记者自己采集的本地突发新闻、民生新闻,反响平平,没有流量,没有互动。
数据开始不断提醒我一件事情:
用户的选择,并不一定等于组织的判断。
编辑认为重要的内容,用户未必点击;
组织认为边缘的内容,用户可能非常感兴趣。
这并不是说“用户永远是对的”。
而是让我意识到:
做产品不能只凭内部经验判断,还必须不断和真实用户发生联系。
当时网站上的很多新闻,其实非常符合传统媒体的报道逻辑:
哪里发生火灾了,报道一下;
某个人大代表提了一条建议,评论一下;
某个会议召开了,传达下精神;
这些内容对于传统媒体来说当然有价值。
它们承担着新闻报道、信息传递和社会责任。
但问题是:
当这些内容进入互联网以后,它们是否仍然能够吸引年轻的互联网用户?
我开始怀疑,
一个二十多岁的年轻人打开网站,他为什么要看一条“某时某小区发生了火灾,伤者已送往医院”的新闻?
他为什么要连续追踪一场会议的直播?
他为什么会每天打开网站,看今天哪里又发生了一起车祸?
如果这些内容只是:
“我们认为应该报道什么”
而不是:
“用户真正愿意消费什么”
那么网站即使每天更新很多内容,也很难形成用户习惯。
我开始意识到,X公司当时面临的可能不是简单的“内容不够多”。
而是一个更加根本的问题:
我们生产的内容,和我们想争取的用户之间,正在发生错位。
这又恰好和报纸自己的基因发生了冲突。
报纸的传统优势,本来就是本地、民生、严肃、权威。
X公司最初的使命,也是把晚报带入互联网。
可是互联网的用户注意力,已经开始被另一套内容逻辑吸引:
热点、娱乐、人物、争议、传播、年轻化。
X公司就这样卡在了两个时代中间。
它拥有传统媒体的内容基因,却必须面对互联网的用户逻辑。
于是一个越来越大的问题开始浮现:
我们到底要服务谁?
用户是谁?
为什么选择我们?
为什么不选择新浪、搜狐、腾讯?
我们的竞争优势是什么?
我们靠什么让用户回来?
当时我没有看到公司真正系统地回答这些问题。
我越来越觉得,X公司的问题不是没有能力做互联网,也不是没有互联网技术。
它真正没有解决的,是传统媒体的内容生产逻辑,如何真正适应互联网用户的注意力逻辑。
也是从这个时候开始,我真正用“产品”的视角去看网站。
我开始主动写一些产品分析。
不再只是盯着页面细节,而是开始思考:
首页为什么这么排?
用户进去以后有没有方向?
相关文章有没有串起来?
用户评论能不能带来更多访问?
微博和新闻能不能互相导流?
后来,我还专门整理过一份《公司网站当前存在的问题及改进建议》。
那时候,我关心的已经不再只是:
“这里颜色改一下。”
“那个模块往左挪一点。”
而是开始讨论:
用户为什么这么走?
我们希望用户下一步做什么?
这其实是一个非常关键的变化。
我自己当时并没有意识到,我正在慢慢从一个程序员的视角,走向一个产品人的视角。
我越来越喜欢和用户、数据打交道。
技术告诉你“怎么做”,但产品开始逼着你思考“为什么做”。
我越来越确定,自己真正感兴趣的,是后面的那部分。
那时候我已经越来越明显地感觉到,如果继续留在研发岗位,我完全可以成为一个更成熟的程序员。
我并不讨厌技术。
恰恰相反,技术是我进入互联网行业的基础,也是我后来做产品的重要底牌。
但我越来越确定:
自己真正感兴趣的问题,已经不只存在于代码里。
我更想靠近用户、业务、数据、产品和运营。
我不是想离开技术,而是想离结果更近一点。
于是,我开始认真考虑一件事情:
我要不要离开技术岗位?
彼时,也随着微博项目上线,公司抽调了原产品组,再加上部分新闻部的同事,成立了新的产品运营部,负责人直接向总编汇报,公司准备借力微博这样的时下热门产品开始新一轮的新媒体转型尝试。
在此组织调整下,我向产品运营部负责人提出了转岗的申请。
现在回头看,那封申请邮件其实已经非常清楚地说明了当时的我发生了什么变化。
我写自己越来越喜欢和用户打交道,对交互式产品产生了浓厚兴趣,希望利用自己的技术实践基础、用户行为数据分析能力和跨部门沟通能力,去做产品相关的工作。
我希望参与用户访问数据分析、产品体验改善,研究微博与新闻内容如何结合,跟踪新功能上线后的用户反馈和数据变化,也希望利用自己的技术背景,帮助产品和技术更高效地协作。
现在看来,这已经不只是一封转岗申请。
而是我在重新定义自己。
我不想再只是那个:
“把别人想好的东西写成代码的人。”
我开始想参与决定:
这个东西为什么值得做。
一个人的职业方向,很多时候就藏在那些没人要求你做、却总忍不住想做的事情里。
在技术部工作8个月后,我转岗至产品运营部,负责微博的产品运营。
接下来,我真正站到了业务的一线。
我需要面对的不再是“需求怎么实现”,而是:
如何把微博平台运营出本地影响力。
我终于有机会,从一个“把别人想好的东西做出来的人”,变成一个真正参与决定“什么值得做,以及怎样把它做好的人”。
而这一次,我面对的将不再是代码,而是真正的用户和业务。
未完待续。