产品经理之职责篇
引言:最近在看有关于产品经理方面的书籍,结合自己读书心得和相关经历,弱弱的总结一番。
产品经理(Product Manager):定义--担负某类产品研发、运营、管理的经理人。
他们的主要工作职责包含:市场调查、产品创意、策划实施、产品研发、产品上市、市场推广等。一直伴随产品生命周期的结束全过程。
产品经理职责:
1、前期市场调研
市场调研是指研究市场了解客户需求、市场竞争产品状况以及市场力量(market forces).
一般采用的方法有:
a、与用户交流:一般使用电话、Email、QQ等各种能交流的方式进行。
b、与直接面对客户的一线同事如:销售、客服、技术支持等交流。
c、市场研究报告分析,通过网络或购买相关数据做客观有效的数据分析,并且输出相应的数据分析报告。
d、竞争对手产品分析,通过网络查找其产品的宣传资料、对其产品进行试用、体验。获取产品特征。
e、用户数据分析,通过了解市场数据分析其用户数量分布状况、目标客户特点等信息。
总结:市场调研可以让你知道,市场目前是什么样一个状况,有没有必要做?风险系数有多高?所以市场调研的准备,将直接影响到项目可行性。
2、需求管理
需求管理通常包含:需求来源管理、需求版本管理、需求分配管理、需求跟踪管理。执行需求过程的一系列工作。
3、产品规划
产品规划是指在通过市场和竞争分析、根据公司自身发展定位、指定产品的规划、产品规格设计等。制定出产品的愿景目标以及实施该产品远景的手段。通常包含以下几个方面:
a、用户目标 b、商业目标 c、盈利模式 d、关键差异 e、效益目标 f、品牌定价
4、对产品的定义和设计
对产品定义:主要是解决“是什么”的问题。主要可以体现和细化为:产品的愿景、目标市场、市场竞争分析、功能概要、系统需求、性能需求、运营需求等。说了这么多其实就是我们常见的产品需求文档。
对产品设计定义:是指设计产品的整个过程、产品上市后是什么样子的,信息架构、功能设计等。
产品设计的过程很大程度上也可以看做是用户体验的过程。包含到色彩、风格的把握。
5、组织协调
协调不同团队的人员、对资源进行分配、同时控制整个活动过程,从而实现组织目标。
项目协调:a、制定项目计划 b、进行资源协调 c、跟踪项目进展
6、文档编写
a、市场调查文档==>产品定义阶段以及产品的不断完善,会贯穿整个产品的生命周期
b、产品的需求文档==》开发前准备好
c、产品说明书==》产品发布之前
7、产品培训:主要是面向内部同事(销售、市场、客服),讲解相关定义、功能、特定目标市场等。
编程土八路——软件开发记
软件开发,在我的心目中,是个神圣的事情,年龄虽然大了,马上不惑之年,但内心里一直向往这个自由如风的职业,可是老天一直没有给我成为专业的程序员的机会,有点遗憾。在世人眼中,软件开发,是只有那种脑壳铮亮的人(智商)才能干的活;所以,专业程序员们,你们是我羡慕的对象。
十年前,最初学电脑,会调个背景分辨率啥的,就高兴的屁颠屁颠的,后来就学电脑维修,各种软件的安装卸载,各种板卡的性能参数等等,那时候装个系统还真是个技术活儿,各种驱动,各种蓝屏等等,自己乐此不疲,还学了photoshop,、影视编辑、打印机维修…..等等,那叫一个“杂”,有机会看到这篇博文的朋友,奉劝一句:千万莫做杂家,学而不精害自己(天才除外)。
有一段时间误认为自己是个电脑高手了,不过这个兴奋劲很快被拿起的第一本编程基础书给吓趴下了,那密密麻麻的字母和概念绕来绕去,真把我给绕晕了,这第一次学习编程,坚持了半年就给击溃了,当时怀疑自己的脑壳儿是不是有问题,这玩意儿真不是一般人干的…….撂下编程书,干其他的去了,什么都干过,包括业余传销、打游戏币等等(看到这,程序员应当有强烈的职业荣誉感)。
一晃,好多年过去,开发之心不死,35岁那年重拾开发之梦,接下来一路断断续续、磕磕碰碰,中间的苦自是不必多言(熬夜至星光灿烂之时,也是眼冒金花之际,经常有为调试一个BUG到子夜三四点的时候,记得那个汉诺塔编程,最后我是找了三个火柴盒来回倒腾才理解其中妙义-----唉,自个脑壳不灵光,没办法),猛一回头,竟然也写出点小软件来,比如本单位用的土地估价计算程序,还有给朋友网吧里写的小进销存软件,这里要感谢三位启蒙老师(谭浩强教授<C程序设计>,王继彬老师和陈广老师的视频讲座,自己的体会是软件开发的入门关是最难的,把入门这一关过了,后边的路就是自己付出多少就收获多少了)。牛顿说他只是站在了巨人的肩膀上,我们普通人也一样,都是在不知不觉中得到了某些人的无形帮助前行的,只是嘈杂的生活让我们不自觉得忽略了这些帮助的重大意义。
单位里去年就提出要搞一套自己用的地籍档案管理系统,各种原因,一直没有着手,去年年底目标考核时,信息化的问题又被提上了日程,这次不能再拖延了。(什么事都是逼出来的,这话看来是真理。)先截图看看软件什么样子,有图有真相(高手无视,可直接PASS):
本人虽然属于编程菜鸟起步,没有系统学习过软件开发流程,不过原来有过小小的管理软件的开发经历,对这类增删改查的软件心里还是有点底气滴,于是自告奋勇,吹牛自己搞这个东西是小菜一碟等了........ 牛是吹完了,东西要做出来才能不吹破牛皮哦;哈哈。之所以心里有底气,是因为对需求做了分析,发现有很多功能自己过去都实现过,唯一没有做过的就是用户权限的设计,而单位对权限的要求又很严格,因为牵涉到大量的地籍档案,这年头房价地价一个劲的往上蹭....,这些有法律效力的文件的管理就灰常不能小视。
每天来来往往的查询档案、修改档案的的业务多得让地籍管理部门忙的够呛。过去业余学习软件编程的时候,也做过简单的权限管理,可以说是简单到不能再简单的权限;很明显还用这个简单的思路去做档案管理的权限,是绝对不行了。(各个科室都有查询的权限,有的科室有修改的权限,有的科室有权注销档案,而地籍管理科室的职员又要分配不同的权限......,权限的叠加怎么办,还有限时登录,限IP登录的问题等等,当时对权限设计的确有点头大.....)。
懒人有懒人的办法:百度搜搜,看看有没有方便的解决办法;经常在网上看到讨论用现成的轮子和造轮子的各种观点,我这种菜鸟级的coder还是喜欢用现成的轮子的(以后如果看到这类讨论,及时亮出自己的观点:造轮子真TMD又累又麻烦,不是谁都有能力造个好轮子的,在这里给那些造轮子的朋友们致敬;有轮子不用,不是瞎耽误功夫嘛);搜了一大堆权限,只有一个包含C/S权限组件的:杭州海日涵通用权限管理组件(其他的都是基于B/S架构的,本人只会C/S,不会B/S),下载了组件的视频看了看,又电话联系了他们的技术客服详细咨询有关功能,心想能达到我们的要求,于是申请采购过来(专业的轮子:就是你想到的,轮子已经给你想好了;你没想到的,轮子也为你想好了;这公司的LOGO还真有点轮子的味道,哪吒的风火轮.....)。
权限组件的问题解决了,下面是用什么UI控件,这个好说,原来学过DEV的控件(这个控件包的强大就不说了),很漂亮,各种风格的,随便自己选,巧的是,我们采购的通用权限管理组件也有DEV的版本(任选),这正好和我的地籍档案管理软件一个界面风格又节约了很多开发时间。
以上两个轮子备好,于是操刀上阵,十多天时间把地籍档案管理软件写了出来,增删改查档案,存储档案的扫描图片,每次操作都留有记录,每次操作短信猫设备都都发出手机短信通知:某某用户修改了某某档案,时间什么时候,证号是多少之类的。通用权限管理组件的调用也很简单,用了三行代码,就把登录的用户名,姓名获取到了,再用十行代码,把自己自定义的权限和档案软件捆绑了起来,成熟的组件就是省事,连系统登录窗体都不用写了(直到这个时候,才真正体会到这个组件功能的强大和灵活,C/S和B/S通吃,参考里面的例子就应该也能实现B\S系统,以后得学学B/S方面的开发了)。
写完这篇开发小总结,再看看我的软件,就像个三轮车啊,两个轮子(DEV和通用用户权限管理组件),我的轮子(姑且也叫轮子吧)在前面,十多天造好一辆三轮车,这个速度对我等菜鸟,甚感欣慰哦.......,单位的任务圆满完成了,也可以给同事领导有个交代了,看单位同事们用我编写的软件心里充满了踏实、小小的骄傲。
向轮子制造者们致敬.....(我在想,我有一天是不是也能造出个轮子来……)
后记-------------------------------------------------------------------------------------------------------
借用通用权限管理组件的作者的话:“将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。”
借用“虽天地之大,万物之多,而唯蜩翼之知”,语出《庄子·达生》。蜩,即蝉,知了。 孔子去楚国,途经一片树林。林中一个驼背的老者,手持一根长长的竹竿,在聚精会神地粘知了。老人出手又快又准,百无一失。孔子被吸引住了,连连赞叹:“您的技艺实在太高超了,是怎么练出来的呢?”老人看了看孔子,回答说:“其实也没什么。起初,我在竹竿顶端放两个小球,手持竹竿努力不让它们掉下来。做到这一点大约用了半年的时间,之后再去粘知了就很少失手了。我继续练习,能放三个小球的时候,成功率便达到90%以上。我的练习从来没有停止过,如今能在竿顶放五个小球而不滑落,粘知了就象在地上捡东西一样简单。粘知了的时候,我的身体就象木桩一样稳,伸出的手臂就像枯树枝一动不动。虽有天地万物,在我眼中也只有知了的翅膀。此时不管你把什么放在面前,我都不会动心。做到这一点,粘知了还有什么难的呢?”
怎样才是全能的程序员?
期望一个凡人掌握开发过程中各个方面的知识,合理吗?也许不合理,但是Facebook正是寻找这样的人。是在一个OSCON会议上一名Facebook的人员告诉我的,他们只聘请“全能(Full stack)”的程序员。那么,全能是什么意思呢?
对于我,一个全能的程序员应该熟悉每一层的技术知识,如果不是全部掌握也要对所有的软件技术有真正的兴趣。
熟悉整个技术体系的程序员,可以使得周围的人的生活更加容易。这就是为什么我反对在工作场合的技术鸿沟。当然,在大公司政治和沟通的问题往往会影响他们的发展。我想Facebook招聘策略的目的就在于,如果聪明的人身心俱到,一个好的产品可以在更短的时间内发布。
技术知识体系的分层:
1. 服务器,网络和主机环境
- 这包括理解什么会宕机,为什么会,没有任何资源是理所当然的。
- 合理使用文件系统,云存储,网络资源,理解数据冗余和可用性。
- 在硬件受限的情况下,如何扩展应用。
- 那么多线程和竞争呢?你猜怎么着,你在你的开发机器上看不到,但是在现实中却经常发生。
- 全能程序员可以与DevOps协同工作。系统应该提供有效的错误信息和日志能力。DevOps会在你之前看到这些信息,所以重要它们。
2. 数据建模
- 如果数据模型存在缺陷,那么业务逻辑和更高的层次将要奇怪、丑陋的代码来弥补那些模型没有覆盖到的边界场景。
- 全能程序员知道如何构建合理规范化的关系模型,包括外键、索引、视图、查找表等。
- 全能程序员熟悉非关系数据存储的概念,理解其比关系型数据存储的优点。
3. 业务逻辑
- 明白应用提供的核心商业价值。
- 需要扎实的面向对象知识。
- 需要理解框架。
4. API层面/Action层面/MVC
- 外部如何与业务逻辑和数据模型进行交互。
- 框架在这里会用得很多。
- 全能的程序员有能力写出清晰,一致,简单易用的接口。一些API的复杂难度使我感到厌烦。
5. 用户界面
- 全能程序员a)知道如何创建可读的布局,或者b)明白自己需要帮助艺术和图形设计师。无论哪一种,实现好的视觉设计师关键。
- 掌握HTML5/CSS3。
- Javascript是将来非常重要的一门语言,很多令人兴奋的作品都是用Javascript完成的。(node, backbone, knockout……)
6. 用户体验
- 全能程序员明白,用户只是想让产品可以正常工作。
- 一个好的系统不会使得用户患上腕管综合征和眼痛。一个全能程序员会将一个需要8次点击3个步骤的工序,修改为1次点击。
- 全能程序员会告知有用的错误信息。如果有什么出错了,像用户道歉。有时程序员漫不经心写的错误信息会让用户觉得很傻。
7. 理解用户和业务的需求
- 现在我们模糊的进行架构设计,但这会远离了真正的需求。
- 全能程序员会预先看看当用户在使用软件的时候,会发生什么。同时,他们也会关注业务部分。
其他问题:
- 能够编写质量单元测试。顺便说说,Javascript现在也可以进行单元测试了。
- 理解持续自动化集成,包括构建应用,测试,编写文档和部署扩展。
- 安全意识也非常重要,因为每一方面都会有其易受攻击的地方。
总结:
将代码紧紧的绑到一个特定的环境(库,操作系统,硬件等等),是非常糟糕的实践来的。全能程序员理解所有的知识体系,不意味着他们可以走捷径。然而,他们确实会这样做,如果只是建立一个原型的话。
技术型创业公司需要全能程序员的多才多艺。但是,一个成熟的公司,需要更多的是专注的技术。
我不确定在你使用多种语言,使用多个平台,甚至为多个行业工作之前,你是否可以自称为全能程序员。全能程序员要在“高级程序员”之上,因为他们与通晓多语言的程序员在同一线上,但是对各个模块的关系更有全局的意识。注意我刚刚的列表,只有3-5项包含了编写代码。
英文原文:[What is a Full Stack developer?]
本文由wilsonwen翻译整理,转载请注明出处。
一个出身高考大省程序员的高考回眸
最近实在是太忙了,以至于几次想写点什么都半途而废,这次下定决心把最近的一些想法记下来。
再过几天就又到高考了,作为一名80后,高考本身已经离我们越来越远,甚至连怀旧都找不到节奏了。但是,偶尔亲戚同事有孩子参加高考,使得这个国民级别的大考始终未走出我们的视线。
前两天看了《致青春》,从各方面看这显然是70后们的故事(宿舍里的娱乐还停留在看电视,打扑克,通讯方式是BP机,电话亭,如果换成一人桌上一台笔记本打游戏就直接穿越到80后的大学时代了),但是凡是经历过中国式教育的人仍然可以在影片中找到共鸣。
对于我来说,触动最大的角色就是陈孝正。因为在他身上找到了一些自己的影子。
对于中国式教育,我的情绪是很复杂的。首先不得不说,我勉强算是一个受益者,和很多人一样,我通过高考上了大学,读了硕士,进500强外企当了一名光荣的码农;但另一方面,我也发现这种教育对于这一代人的负面影响是非常大的,大部分人都在这场洗礼中或多或少丢失了一些东西。从更高层面上说,这种制度下能够完全把握住自己并真正受益的人是极少数。
对于中国式教育理念,这一代人呈现出了截然相反的两种态度,一种是接受这种理念,另外一种则是否定和逃避。但是,这些态度在高中阶段往往是隐性的,在校方和父母强大的压力下,总体上都是在用功学习,看书刷题,应对高考,一旦进入大学以后,外部的压力没有了,内心真实的态度就会释放出来,从而形成行事风格迥然不同的两类人。一类人开始报复式的放纵自己,尽情做一切高中时禁止的事情,上网吧,玩网游,翘课,谈恋爱,同时对学校里一切事物都漠不关心甚至嗤之以鼻,学校的社团活动,学分成绩,奖学金都与己无关,只有考试还能偶尔让他们认真起来,但是挂科也是常有的事情;另外一种则是延续了高中的轨迹,继续绷紧神经,刻苦学习,严格控制娱乐休闲的时间,自习室食堂寝室三点一线,并且把学习成绩看的高于一切,即使谈了异性朋友,仍然时常会因为约会散步看电影而觉得浪费了时间心痛不已。
想起两件“有趣”的往事,打上引号是因为事件本身并不有趣,但是我那时的想法现在看起来很有意思。
大一时报名参加校学生会。其实在进入大学校门之后很长一段时间我都不知道学生会为何物,各种社团也只是道听途说,这是因为初中高中根本就没这么个玩意,连和考试无关的课程都统统取消的学校,是不会有这些东西的生存土壤的。一次校学生会招新,出于好奇遂申请加入,由于名额极其有限,需要选拔,而选拔的第一关是申请表的筛选。这张表格我是极其认真填写的,按着我觉得他们最有可能接纳的方向填写。写了一些基本信息后,我在自我评价一栏着重强调了自己学习多么认真刻苦,从来不玩网游(因为以前老师说了网游是极其罪恶的),很少上网(上网也是极其罪恶的),不去网吧(去网吧真的是会被开除的)不去KTV等等。最终,我在简历筛选关就直接被pass了,一位上海本地的学生会小头头看着我的申请笑了,说高中就入党很优秀啊,但是没有了下文。其他上海学生看了我的那些自我评价到底是何反应我也无从知晓,只是现在想起来,如果那时候我做招新的评审,恐怕也不会让那时的自己通过吧,实在是有点too young,too simple。
第二件事发生在大四,那时候我已经混上了班长和院党支书。虽然高中时很多教条仍然在脑中起着作用,但是人都是有一定适应环境的能力(例如我认为在网吧通宵网游极其罪恶,却觉得在寝室里打游戏没什么不好,通宵比较偶尔,是因为觉得很伤身体),熟悉了大学里的游戏规则之后,加上学习比较用心,尤其是考试方面自己看的很重,成绩在前列,成绩高于一切的观念绝对是高中的遗俗,因此混上了班长一职。言归正传,一次,我组织全班同学去浙江毕业旅行,我们包了一辆车,一路上我和一个广东的同学坐在最前面,司机师傅便和我们聊了起来。司机年纪不大,孩子在上海某中学上初中,他本人经过多年打拼已经拥有了小型客运公司,不差钱,但文化程度只有小学,所以对于孩子的教育问题很是头疼,好不容易遇见一车大学生,就急切的向我们征求教育孩子的意见。这时候,我和广东仔关于是否学习电脑的问题发生了分歧。我认为孩子在初中高中应该认真学习,远离电脑,远离网络,专心投入的准备升学考试,并列举了身边一些惨痛的玩物丧志的例子。这是我一贯的思维,也是当时大多数父母以及老师们对待电脑和网络的态度。然而广东仔却坚持认为现在的社会处处离不开电脑,计算机这项技能必须要学,对将来的发展很有帮助,人人会编程是未来的趋势。这方面的人才需求也会越来越旺盛。最终,我们各持己见,谁都未能说服对方。司机儿子后来发展如何已无从知晓,但是,现在回过头来想想,我有些佩服广东仔当时就拥有了那样的视野。
其实,学习本身是绝对值得鼓励的,但是,学习不是生活的全部。在本科时,看到上海的同学们多才多艺,后来来了北京读硕,也发现了实验室里最牛的几位编程大神无一例外都是北京天津学生。那时候我发现了自己的落后,这种落后并不仅仅是教育环境的落后,还有思想观念的落后。比如说,我在小学三年级就有了接触电脑的机会,但是,电脑对于我来说只是一台游戏机,而同实验室的一北京师兄,在小学时就源于兴趣开始编程,并将这项爱好发扬光大,参加各种比赛获奖无数终成实验室一哥。我有机会接触电脑,但是我却从没想过去碰Pascal,BASIC,C;后来初中时我能上网了,却未充分利用这样一个庞大的资源充实自己,而仍以娱乐为主;我不算是贪玩的学生,但是我把学业和玩电脑分的很开。究其原因,可能是学业已经足够占用了我的大部分时间,那些堆积成山的作业,永远做不完的试卷,应接不暇的模拟考,让我没时间也没有多余的脑力去喜欢上一项更加费脑的爱好。是繁重的学业,高考升学的压力,和我有限的智商,共同决定了我没有在大学之前开始真正的计算机编程素养的积累。
虽然,经过大学和研究生的吃力的弥补,没有因为这一点对拿学位找工作造成太大的障碍,但是,高中繁重的学习,不知磨掉了多少人的探索欲望。至今,我仍然记忆犹新地记得,每当老师宣布某一章节不在考试范围内,不要求掌握时心里的那种窃喜。
不管怎么说,经过了高中的艰辛和大学时的弥补,走了那么多弯路,用了整整十年的时间,我终于和那些北京上海以及美国日本的同事在同一片屋檐下工作了。但是,高考面前,仍然有千千万万应试教育下寒窗苦读的的学子们,在抉择,在彷徨。尤其是那些河北,河南,湖北,山东的学子,高中时比谁都苦,到了大学,却又发现和北京上海的学生不在同一起跑线上,但这是这个国家的问题,区域发展不均衡,城乡贫富差异,各种利益纠缠,这样的难题也只能靠国家的智慧来解决了。教育制度和教学水平的地区差异不是一年两年就能改变的,但是人与人之间的差异去可以用大学时光慢慢弥合,只想对那些高考大省的学子们说,与君共勉,祝君好运!