跟女朋友在一块工作岗位职责,他的岗位旁边有很多男生,我要不要干涉他和其他男生接触

我刚刚工作岗位职责的时候面試官曾经跟我说:好好干两年,可以迅速从程序员成长为工程师当时我觉得太诧异了,从很多招聘启事来看“程序员”不就等于 “工程师”吗,只是“工程师”更好听一些而已等我工作岗位职责久了,才知道“程序员”和“工程师”真的是不一样的——程序员只写程序工程师写能在现实世界中创 造价值的程序。

可惜很多软件开发人员未必清楚两者的差别,甚至做了很久也只算程序员而不算严格意義上的工程师所以我就自己的观察和经验,谈谈程序员和工程师的差别

第一、工程师不写黑箱程序

“程 序=数据结构+算法”,这个著名嘚公式大家都知道不幸的是,它不适合描述工程领域或者现实世界的程序有很多程序,数据结构和算法都写得很棒功能足够 强大,系统足够复杂但是——它很难调试,一跑起来就无法停止而且谁也不知道程序现在到底在干什么,里面发生了什么

别觉得好笑,我遇到过很多工作岗位职责三四年甚至五六年的开发人员仍然不停地生产黑箱程序:出现问题的第一反应是直接杀掉进程重启(天哪你们嘚程序不能安全关闭吗)。当然还有更生猛的直接用开发机连上生产数据库(防火墙上开个洞)去调试。

你说他们技术不好吗明明各種技术问题也能搞定。你说他们没有系统意识做过的程序也不简单。但是他们做的充其量只能叫“程序”,而不是工程上成熟的“系統”

怎样的程序不是黑箱?你需要考虑它的层次划分你需要考虑哪些(功能之外的)运行信息必须暴露和记录,以什么方式暴露记录你甚至还需要考虑这些暴露和记录对性能的影响,以及程序需要对外提供什么操纵……当你把这一切都考虑清楚写出能够让运行细节“尽在掌握中”的程序的时候,你的一条腿就迈进了“工程”的大门

这 方面,互联网和软件开发的大厂会更加关注一些但也不是说个囚就毫无追求的空间了。网络爬虫大家都会写大家也都知道如果要数据抓得准,调试起来很麻烦 我有个朋友在某大厂写过一套“可视囮”的爬虫,可以用逐步操纵语句的执行迅速定位问题所在。这种水平的工程师属于可遇而不可求的类型,每次说起来大家 仍然啧啧稱赞

第二、工程师注意实现和接口分离

面试的一道经典问题是:请描述抽象类和接口的区别。通常大家都会知道“接口”和“实现”偠分离。不幸的是很多人理解的“接口”,只是狭义的特定语言提供的Interface而没有考虑“接口”真正的含义。

接口的真正含义是什么最擅长处理的是信息,它可以让信息脱离现实的障碍高速流动起来如果说“实现”是干脏活累活,“接口”就是发出干脏活累活指令的窗ロ脏活累活干一遍就足够了,但发指令的窗口却可以有千千万万

更 具体一点说,完成功能的是程序员完成功能并且设想它会在什么凊况下使用,并且让人方便使用的是工程师。我见过不少这样的程序:登录会话一开始放在本地 内存里没问题到了要切换到里方便会話转移就得大兴土木,虽然要做的其实仍然只是存取而已;程序自动加载的数据出了问题就根本不能手动加载;以前 手动加载的数据,妀成自动加载就要推倒重来……

有没有接口意识能不能真正区分接口和实现,这是区分程序员和工程师的一大标识

第三、工程师注重功能的逻辑联系

很多系统都在不断的变化和改进过程中,程序员看到的是功能点工程师看到的是功能点之上的逻辑。

任何系统当然都是甴若干功能构成的但在功能点之上,还需要一张有逻辑意义的大网才能把功能点组合起来,把复杂度降低成为大家能理解的对象。朂简单的“登录”就包含数据输入、数据验证、登录信息记录等等功能,“登录”是这些功能的逻辑集合也是理解这些功能的基础。

隨着时间的推移业务的增长,新功能可能越来越多比如用户数据的加载,对好友的通知广告的推送准备等等。这些功能实现起来当嘫都容易(因为很具体)但功能堆积的后果是复杂度急剧上升,因为功能之间的逻辑联系被切断了所以,工程师必然需要思考这些功能应该怎么组合,放到哪些具有逻辑意义的动作——比如“登录”里去正是经过这样持续不断的思考,系统的复杂度才能够被一直维歭在较低的水平容易让大家理解。

这 个例子看起来很简单但做起来却没那么容易。我有时看到复杂的系统操作手册简直让人哭笑不嘚:1) 点这里;2) 点那里;3) 输这个…… 这些操作对应的逻辑意义那么准确,分明就该是一次性自动完成的啊把它们割裂开来的后果大夶提高了系统的复杂度,既不方便维护也不方便操作。最后来擦屁 股的只能是开发人员自己。

我经常反思自己接受的教育在学校里寫程序,和工作岗位职责了写程序有 那么一点相同,但又好像完全两回事到底有什么不同,只有亲自体会、思考了才能明白所以我想把自己的所见所感写出来。悟性好的有机会接受很好训练的同 学估计不需要了解这些。但对于没有这样条件的同学但愿我的这点念叨能给你们一点帮助。

正所谓“一个人的命运啊当然偠靠自我的不断奋斗,但也要考虑历史的进程”

要理解产品运营,得理解互联网的发展历程

公号写的一篇文章,分享给大家:

(更多運营干货欢迎关注[ LjNotes ])

《技术、产品、运营,谁才是核心》

从1994年中国开通互联网接入服务以来,不过20多年的时间整个世界已经被彻底顛覆,这要归功于无数的互联网从业者

以时间发展线为划分,我们可以把这段简短而重要的历史分为几个时代:技术驱动时代、产品驱動时代、运营驱动时代三个时代分别对应着驱动的力量:技术、产品策划和产品运营,我们一一细说

在二十世纪90年代,互联网崭露头角一切都是新奇而未知的。

虽然计算机面市已经数十年但是在此之前所有计算机还是作为一个个独立的存在,而进入90年代改变世界嘚万维网(WWW)由Tim Berners-Lee编写完成,世界各地的程序员就像进入了一片新大陆这块“蛮荒之地”正在等待着他们的建设。

当一项技术刚刚问世的時候你是不能期望它是否方便使用的,因为此时关注的焦点是“有还是没有”而不会“丑还是美”。

就像个人电脑的发展历程早期嘚个人电脑只能通过dos命令与机器进行交互,然后苹果和微软推出了采用图形界面的个人电脑用户可以通过鼠标进行直观的操作,开启了計算机图形界面的新纪元

图形界面的普及,使得个人电脑真正流行起来普罗大众可以通过直观易用的界面操作享受到电脑带来的福利,生产力得到极大提高

在互联网发展伊始,大家追求的也不是界面的精美或者操作是否方便所有人都还沉浸在互联网带来的“连接魅仂”,探索着通过互联网的连接电脑还能给我们带来什么惊喜。

比如说电子邮件(Email)是互联网带来的全新体验,我们可以通过电脑的連接把信息随时、免费、快速地发给世界上任何一台联网的电脑,这在当时的电报、电话时代是很震撼的

1987年9月,CANET(中国学术网)在北京计算机应用技术研究所内正式建成中国第一个国际互联网电子邮件节点并于9月14日发出了中国第一封电子邮件:“Across the Great Wall we can reach every corner in the world.(越过长城,走向世界)”揭开了中国人使用互联网的序幕。

随后1994年的4月20日中国通过一条64K的国际专线,全功能接入国际互联网这成为了中国互联网时代的起始点,中国互联网时代从此开启

↑中国第一封Email

电子邮件主要是点对点的连接,而BBS则是点和面的连接更能体现互联网带来的连接服务。

許多互联网领域叱咤风云的人物都是早期BBS的建设者或使用者例如腾讯CEO马化腾是深圳Ponysoft站长,金山软件创始人求伯君是珠海西点站的站长尛米创始人雷军是北京西点站站长,网易创始人丁磊也在宁波搭建了自己的BBS站点

他们还像武林侠客一样,聚在一起定下了江湖规则(1996年)即《Cfido的宗旨和基本原则》(CFido是全球FidoNet的中国分支,其上的FidoNet BBS网络在Internet普及之前是世界上最为著名的BBS网络)

Cfido是不以赢利为目的的业余计算机網络。我们以自己有限的资金和其它条件建立BBS站台的基本想法,是以站长们的一腔热心和坚持不懈的探索和追求为用户提供满意的服務,这种付出是无条件的我们不要求任何回报。最终通过我们的努力,将为中国社会的信息化进程尽一分力量我们每一个站长不但囿对社会服务的行动,更有对社会的爱心和包容心本着这种精神,我们愿意接受其它各种符合“Fido 技术标准”的站台加入到我们的行列囲同为社会服务。

因此在这个互联网刚刚出现的时代,所有人的关注点都在技术上面

Email没有界面和交互可言,但它代表着两台电脑的连接和信息传递;BBS的界面简陋、操作复杂但它代表着人们可以在虚拟网络上进行沟通交流。

包括后来逐渐出现的各种概念资讯门户带来叻及时的新闻,搜索引擎帮人们从海量信息查找想要的东西在线黄页让新进入互联网世界的人快速入门,电子商务让世界各地的小企业主更便利地做生意在线支付使人们摆脱了纸币的束缚……一切都是崭新的、惊喜的,它们从无到有只要出现了新的功能和服务,就已經是令人兴奋的事情了没人会关注它们是否好用。

在技术驱动时代企业追求的是“人无我有”,即掌握了一项领先的技术开发出独镓产品,就能掌握核心竞争力比如说电子邮箱系统,比如说企业CRM系统

然而随着技术的发展,各家企业在技术上面的差距逐渐缩小甚臸出现了很多开源软件,或者第三方服务平台搭建一个产品所需要的技术已经难以构成核心竞争力,市面上可能随时出现无数的竞争对掱这个时候就要看产品的能力,即来到了“产品驱动时代”

腾讯QQ打败ICQ,就是一个典型的产品体验制胜案例

1996年,三个以色列人维斯格、瓦迪和高德芬格聚在一起决定开发一种使人与人在互联网上能够快速直接交流的软件。他们为新软件取名ICQ即“I SEEK YOU(我找你)”的意思。ICQ支持在Internet上聊天、发送消息、传递文件等功能其使用用户快速增长,6个月后ICQ宣布成为当时世界上用户量最大的即时通讯软件。

在那个“Copy to China”的年代中国各地的企业、程序员纷纷开发了自己的“中文版ICQ”,包括台湾的CICQ、南京北极星公司的“网际精灵”等马化腾等人也看箌了ICQ的热潮,他们最开始是为了去广州电信的竞标将软件起名为“QICQ”,中文名为“中文网络寻呼机”竞标失败后,他们决定将OICQ继续养起来

当时市面上已经充满了类似的产品,谁也没想到最终突围的是腾讯的OICQ甚至打败了原版的ICQ,并且以此为基础建立了“腾讯帝国”原因一方面是竞争对手的水土不服或者麻痹大意,另外一方面也得益于腾讯对OICQ做的一系列本土化改造使得产品体验更符合中国人的使用習惯。

OICQ的产品体验改进包括这几项重点改造

-用户资料云端存储。在那个年代(90年代末期)美国的白领和中产家庭几乎都拥有一台个人電脑,而中国的个人计算机普及率不及1%ICQ把用户的联系人资料和聊天记录存储在电脑本地端,这在美国是没有太大问题的但是在中国,佷多人上网的环境都是在网吧离开后资料也就丢失了。所以OICQ做的第一个改进就是把用户的资料存储在服务器上不管在哪里登陆,都能┅直保存着资料解决了用户最大的痛点需求。而基于此改进用户之间也可以发送离线消息了。

-减小软件体积中国的联网速度也没法哏欧美国家相比,只能用电话拨号上网速度只有十几K。ICQ的体积在5MB左右中国网民下载就需要几十分钟。腾讯把OICQ的体积控制在220KB几分钟就鈳以下载完成,这项改进也是非常具有冲击力的

-找陌生网友聊天。ICQ只能找用户添加了的好友聊天可想而知,随着时间的推移用户聊忝的兴致必然下降。而OICQ则允许用户与陌生人网友联系发挥了互联网真正的魅力,这项社交功能为OICQ带来了大量新用户并且提高了用户的粘性。

-个性化设置ICQ只能使用固定的系统图标,而OICQ则可以支持用户自己设置头像展现自己的个性,增添社交的趣味性在后续的产品演進中,个性化也是核心的功能之一包括表情、聊天字体设置、QQ秀、界面皮肤等。

OICQ一直保持着对用户需求的关注并及时改进产品,满足鼡户的不同需求

这种产品改进的方式,恰好体现了那个年代互联网创业公司的特质他们的产品是“抄袭”的,概念、产品、界面在一開始都是沿用美国的但是在随后的经营过程中,他们根据用户的需求进行本土化改造不断地叠加了众多“微创新”,最终变成一个更恏用的产品打败了自己的国外的“前辈”。

我们所说的“产品策划”(产品经理)就是在做着这样的工作岗位职责,他们像一个敏锐嘚心理学家发现用户未被满足的需求,然后基于优秀的技术力量打造出一个“完美”的产品,在激烈的市场竞争中生存并茁壮成长

茬产品驱动时代,企业关注的是“人有我优”

随着时间的发展,产品体验领域一些基本的或领先的概念很快被广为传播并用于各个产品的开发中。包括“真伪需求”、“用户价值”、“需求优先级”、“极简原则”、“版本迭代”、“数据驱动”等概念再也不是阳春皛雪的大师级理念,而是被所有产品经理运用到实际工作岗位职责中这带来的结果是,整体互联网产品体验急速提高

不过,这也意味著市场竞争又进入了白热化的阶段在产品体验上已经难以拉开差距。即使你改进了一个功能变得很好用,我们能在一周之内就跟进你這个优化从用户角度而言,所有产品又变得同质化了很难说一个产品大幅度领先于另外一个同级别的产品。

于是对另外一股力量的需求呼之欲出,即产品运营

在产品驱动时代,企业做产品的逻辑是:把产品打磨得足够好用自然就会有人来用了。

早期的确如此不過这种想法越来越站不住脚了。当市场上出现无数个同类的产品大家的界面、功能、交互等等都一样的时候,可想而知“产品好用”巳经不够吸引用户了。这并不是臆测而是真实出现的情况。

电子商务网站国外的巨头有eBay、亚马逊,国内的模仿者有8848、敦煌网、慧聪网、阿里巴巴、京东、卓越、当当、百度有啊、腾讯拍拍等等

从用户视角来看,他们能够实现的功能、使用的体验几乎是一模一样的。洏笑到最后的是阿里巴巴也许很多人觉得是命运,是运气但最重要的是阿里巴巴对运营领域的投入。

商家侧投入巨大的人力物力莋商家运营,稳稳地占据了最优质的企业资源;在用户侧源源不断地上线各种规则、活动,让“购物即淘宝”成为国民意识比如说,烸年的“双十一购物狂欢节”每家电子商务网站都会做,但阿里巴巴的销量是第二名京东的十倍以上更不用说其他中小网站。

运营巳经成为阿里巴巴电商产品的一项核心竞争力。

知乎是近年来在内容领域出现的一个“独角兽”(“独角兽公司”是指那些估值达到10亿媄元以上的初创企业)。它的成功也体现了运营的力量

早在2005年,百度就上线了旗下的“百度知道”是最大的中文问答社区。而知乎则昰在时隔6年后的2011年才上线不过经过短短数年的耕耘,知乎已经取代百度知道成为第一中文问答平台两者地位的反转,正式运营战胜产品的最好案例

首先看百度知道,从功能使用角度它显然是“好用”的。凭借百度搜索的流量入口用户可以很方便地找到自己想要的信息,而回答者也能给便捷地为某个问题添加答案你似乎无法挑剔它的产品体验。

然而百度知道的答案质量一直被广为诟病。许多运營上的致命错误导致百度知道沦为一个良莠不齐的“水社区”。百度知道用积分激励用户这就造成很多人为了积分搬运答案、信口胡謅、答非所问,不管哪一种行为对社区质量都带来巨大的伤害此外,对内容的监管也是缺失的既没有官方的审核,也没有用户的投票機制久而久之,劣币驱逐良币百度知道上充斥着“垃圾”问题和答案。

另一边厢知乎看到了百度知道的弊端,在自己的发展进程中核心关注点就在于运营上,维护知乎的“认真、专业、友善”

上线初期,邀请KOL用户比如李开复、张小龙、雷军、王兴、马化腾等行業大佬在社区问答互动,塑造了高端的品牌形象

采用邀请制,在社区早期保证用户的质量打造社区文化的基础。在后来的高速发展期为了抵御“内容水化”,推出各项措施保证内容质量留住优质用户。采取用户投票机制和荣誉认证方式激励内容生产者;通过编辑挑選优质内容在《知乎日报》向潜在用户传播;投入大量人力做官方监管(知乎小管家)淘汰劣质内容,遏制不良用户

知乎所做的一切運营措施,是希望让用户知道:知乎是一个认真回答问题的地方内容质量,是支撑起知乎10亿美元估值的基石使其成为当之无愧的中文知识第一平台。

技术、产品、运营这三股力量在互联网的舞台上轮番扮演者重要的角色。

当我们在说“运营时代”的时候并不是说技術和产品变得不重要,他们同样重要就像地基一样,构成了企业的核心竞争力只有技术和产品已经达到而来同等水平的企业,才有可能进入到运营层面的竞争

在互联网发展早期很长一段时间内,运营在企业发展中的角色一直是作为一个配角、一个补充者做着苦累脏活,而随着运营时代的到来他们即将成为舞台上的主角,这对产品运营从业者的要求越来越高如果你是其中的一员,请做好准备迎接挑战吧

关注LjNotes, 后台回复 “增粉” 查看:《1个活动新增150万微信粉丝,我们是如何做到的》

我要回帖

更多关于 岗位 的文章

 

随机推荐