产品技术员的⼯作内容
下⾯是⼩编为⼤家整理的关于产品技术员的⼯作内容,以帮助⼤家更快的到所需内容,想要了解更多的内容,欢迎关注应届毕业⽣⽹论坛!
产品技术员岗位职责
1、制订并组织实施技术系统⼯作⽬标和⼯作计划;
2、组织制订并实施技术系统规章制度和实施细则;
3、组织不合格品的审理⼯作;
4、组织技术、产品开发与创新;
5、组织建⽴并实施质量体系;
6、公司标准化、计量管理⼯作;
7、定期进⾏技术分析和质量分析⼯作制定预防和纠正措施;
8、重要技术⼯艺设备、计量器具的申购;
java技术员培训 9、技术系统⽂件等资料的整理保管及公司档案管理⼯作;
10、公司保密⼯作。
产品技术员职位要求
1、熟悉公司的⼯艺⼯序、⼯作原理;
2、具有良好的英语阅读能⼒;
3、掌握AutoCAD、Office等相关计算机软件;
4、熟悉⼯程设计软件者为优;
5、⼯作认真积极有较强的责任⼼;
6、能吃苦耐劳主动性强具有良好的沟通技巧和团队合作精神。
产品技术员发展前景
由于⼈⼝的爆炸性增长、城市化规模⽇益扩⼤、顾客不断变化且要求⽇益苛刻,全球⽓候和⾃然资
源问题⽇益严峻,消费品(CP)⾏业正⾯临着不断变化的市场形势、渠道挑战和对业务模式创新的新压⼒。对于消费品企业来说,这些转变正在创造历史性机遇,要求企业具有新思维,采取果断⾏动,并完美执⾏。
未来10年内,世界⼈⼝预计将增加近20%,主要是在新兴国家。同时,俄罗斯、⽇本和德国将成为⼈⼝增长最少的国家。在全球新增的⼈⼝中,很⼤⼀部分将居住在城市,因此,城市会越来越⼤。到2020年,16个城市将超过2000万⼈⼝,超过70个城市的⼈⼝将超过500万(这⼏乎与丹麦全国的⼈⼝数量相等)。许多新的“超级⼤都市”都将出现在发展中国家,并将带来⼀系列的机遇和挑战。
产品技术员职业规划
职业发展路径:产品技术⼈员→产品技术⼯程师→产品技术主管→技术⽀持经理→技术主→技术总监
延伸阅读:
互联⽹产品开发流程总结
1 概述
软件类项⽬具有⼀些与⽣俱来的复杂性,因此在整个产品⽣命周期中,往往由于⼀些环节的处理不当,
⽽造成了进度延误、BUG较多,甚⾄项⽬失败的后果。相⽐之下,互联⽹类项⽬除了本⾝就是软件项⽬之外,⼜具备更多的环节、需要更多的交互。因此,互联⽹项⽬在产品周期中,更容易出现问题。
⼀个项⽬周期可以⼤致分为这⼏个阶段:项⽬规划、需求分析、软件设计、软件开发、软件测试、软件发布,系统运维。
⽽在现代软件(尤其是互联⽹)项⽬中,这⼏个阶段已经不是⼗分清晰地划分开来,⽽是通过所谓“迭代”的⽅式循环前进。尽管项⽬周期的⼏个阶段并不能够完全独⽴地划分,但是每⼀个阶段都是缺⼀不可的,对任何⼀个阶段的过于草率甚⾄忽略将会带来严重后果。
关于软件开发过程,有很多相关的书籍有详尽的描述。事实上,过于遵循严格的流程定义,也会适得其反,尤其是对于较⼩的团队。如何能做到最⼤程度的“敏捷”,应该是⼀个⼩规模团队的追求⽬标。本⽂将针对互联⽹项⽬的⼏个重点环节,依据已有的⼀些经验,为软件技术(互联⽹)类的项⽬开发提供⼀些参考性的思路。
2 前瞻性和细节:关于项⽬规划和需求
2.1 项⽬规划
在项⽬开始之前,⼀个规划的过程是不可缺少的。规划包括技术⽅⾯和⾮技术⽅⾯,对于不同类型的
项⽬,这⼆者各有侧重。对于⼤多数项⽬来数,技术是次重要的。
在这个过程中,有⼏个主要的事情需要完成:
明确项⽬⽬标:没有⼀个明确的⽬标,任何项⽬都⽆法避免失败的命运。虽然,在项⽬的进⾏过程中,⽬标是会不断地调整,但是,必须在项⽬初期确⽴主体⽬标。也就是说,要明确地描述出这个项⽬将要做成什么样⼦,依靠哪⼏个关键点来赢得⽤户。尽量通过最简略的语⾔描述项⽬⽬标,如果做不到,或许是对于项⽬的考虑还不成熟。
往往,很多团队已经⼩有规模,但是项⽬⽬标仍然在不断调整,这实际上是⼀种⽆奈之举,因为之前的⼯作没有做到位。这种情况会产⽣很多负⾯影响,⽆论是对于成本,还是团队⼠⽓。因此,对于项⽬⽬标的规划,应具备⾜够的前瞻性。
竞争对⼿分析:当前的环境下,已经很难到⼀个完全没有其他⼈参与的项⽬(如果有,可能说明了这个项⽬没有价值)。⽽对于互联⽹项⽬来说,了解竞争对⼿的成本是相对较低的。作为⽤户,去体验竞争对⼿的⽹站,可以获取第⼀⼿的资料。去发现对⼿做得好的以及不好的地⽅,可以为⾃⼰节省⼤量的时间。
发现优势和劣势:每⼀个商业模式,都是由⼏个环节组成的。⾸先要明确,对于团队来说,这⼏个环
节是通畅的。进⼀步,要考虑对于哪些环节具有优势,这些优势将是带来商业利益的关键点。对于劣势环节,则要考虑如何去克服。在项⽬规划阶段,对于优势和劣势的分析,要尽量避免乐观思维。
技术选型:尽管不是最重要的,不过技术选型依然是在项⽬规划阶段要考虑的。系统所运⾏的平台,开发⼯具和语⾔,第三⽅程序的成熟度。基于项⽬⽬标,对这些⽅⾯进⾏初步的分析,理想情况是,尽可能利⽤现有的东西,尤其是开源产品。另外,⼯具和语⾔的选择要考虑⼈员招聘的需要。
2.2 需求分析
⾓⾊定义:“产品经理”-负责完成需求分析,输出技术团队所需要的需求规格,并跟进项⽬的开发、运营过程。
产品经理的⾓⾊⾮常重要,尤其是对于互联⽹项⽬。⾸先,对于项⽬团队来说,产品经理代表了“⽤户”,通过⽇复⼀⽇地使⽤⾃⼰的产品,调研⽤户的需求,对产品进⾏不断改进。另外⼀个⽅⾯,产品经理充当了技术团队和⾮技术团队之间的桥梁,他们需要把⾮技术团队的需求转换成技术化的语⾔传达给技术团队,起到两者之间“润滑剂”的作⽤。
⾸先,产品经理需要关注产品的“核⼼能⼒”。没有⼀个产品可以做到⾯⾯俱到,产品经理需要到最能够满⾜⽤户需求的核⼼点,并将其发挥到极致。这种满⾜了⽤户需求并做得极致的核⼼点,最终将成为⼝碑,并为⽤户所传播。
其次,产品经理需要对产品的运营保持敏感。通过对统计数据的持续关注,通过在产品论坛上了解⽤户的反应,产品经理要能够及时了解到产品⽬前的发展⾛势,并以最快速度做出调整。
然后,在产品的交互设计⽅⾯,尤其是互联⽹项⽬,产品经理要把⾃⼰当成“最笨”的⽤户来看待⾃⼰的产品,菜单的设置、按钮的摆放、提⽰语的位置等等,如何让⽤户能以最简单、最快捷、最不需要动脑筋的⽅式使⽤产品,应该是产品经理追求的⽬标。
另外,关于产品经理的素质,产品经理为了做好产品设计⼯作,除了对产品的感觉之外,需要有⼀定的技术功底,例如对带宽、服务器性能、WEB标准等⽅⾯应有⼀定的了解。对于细节的极致追求,也应该是产品经理应具备的特质之⼀。
⼩故事:巨⼈⽹络的史⽟柱,号称⾃⼰⼤部分的时间都花在游戏上,有⼀段时间他甚⾄亲⾃作为客服⼈员,直接倾听来⾃⽤户的反馈。腾讯的马化腾,⾃从05年之后就从管理事务中脱⾝,把⾃⼰更多地当成“⾸席产品体验官”的⾓⾊。常常在凌晨时分,他会把对产品的意见发送到负责产品经理的邮箱⾥。
3 差异化思维和迭代开发:关于设计和开发/测试
3.1 系统设计
不同类型的产品,不同的开发平台,设计思路有⾮常⼤的区别。本⽂不会就具体的软件设计做讨论。
这⾥想重点强调的⼀点是系统设计中的“差异化”思维。
举个例⼦,⼀个西餐厅,平常的客流量基本上是稳定的,但是在情⼈节等特殊的⽇⼦,客流量会有⼀个突发性的增长。有什么办法可以解决这个问题,即使在忙的时候,也不能让客户过长时间的等待。另外⼀个例⼦,盛夏时节,⽤户家⾥的空调坏了,维修需要3天时间,作为售后服务⽅,应如何应对。
这些问题的解决思路,实际上在于如何进⾏合理的差异化设计。⼀个热门的互联⽹应⽤,在繁忙时间段(例如周末、晚间),会出现带宽、服务器资源紧张的情况,这个时候⽹络丢包、操作响应变慢,影响⽤户体验。更严重的情况下,当负荷超过阈值,出现雪崩效应,基本上处于⽆法服务的状态。
所谓的差异化设计,即要根据业务的本质,对产品所提供的服务按照⼀定的粒度划分层次,什么是基础服务,什么是增值服务;什么是必须满⾜的服务,什么是锦上添花的服务。举例来说,对于⼀个即时通讯业务,发送⽂本类消息是最基本的,⽽魔法表情、虚拟形象则是增值服务。在合理地对业务进⾏了划分之后,就可以在不同情况下作出取舍。系统和带宽空闲的时候、资源紧张的时候,系统出现故障的时候,在不同的情况下,系统的设计要能够⽀持划分的业务单元按需要进⾏组合和取舍。
对于业务单元的划分,也可以从另外⼀个⾓度来考虑,那就是⽤户的“愤怒”指数。对于⼀个具备⼗⼏项功能的服务,某⼏项功能出现问题会使⽤户觉得⽆关痛痒,⽽另外⼏项则会使⽤户暴跳如雷,甚⾄有⼏项出问题会使⽤户发誓永远不⽤你的服务。通过对不同功能的愤怒指数进⾏设定,也可以得出层
次化的划分。
当系统、IDC、⽹络出现问题的时候,要优先保证最基本的、也就是愤怒指数最⾼的功能。当问题逐渐升级,功能要逐层取舍。这是在系统设计需要考虑的问题。
回到西餐厅的例⼦,在业务空闲的时候,餐厅提供的服务可能包括热⽑⼱、个性化菜单、豪华餐具,甚⾄跪式服务。⽽在繁忙的时候,为了能够提⾼流转速度,餐厅可能需要⼀份特殊菜单,这份菜单上没有过多的选择,只能像做选择题⼀样,选择情⼈节套餐A,B或者C。对于修空调来说,空调的维修需要3天,这个是⽆法更改的。但是,我们在维修的同时,是否可以为⽤户提供⼀个风扇,缓解⽬前的状况。⼀切⽅法是为了降低⽤户的愤怒指数,⽽互联⽹产品的差异化设计的⽬的也是⼀样的。
另外⼀个需要在系统设计时考虑的重要问题是“可扩展性”(scalability),也就是说当系统的压⼒持续增加时,需要能够通过扩展硬件来达到容量的提升。理想的情况是线性扩展,也就是硬件的增长和⽤户压⼒的增长是成线性⽐例的。但是,⼤多数系统是做不到线性扩展的,更差的是,很多系统在设计的时候完全没有考虑“可扩展性”,从⽽⽆法突破单机的性能极限。
现代的互联⽹系统基本上都是“分布式”的,把系统划分成前端显⽰层、业务逻辑层、数据存储层等⼏个部分,在各个部分能够进⾏不同策略的负载均衡。例如数据库可以采⽤主从备份和均衡、数据分⽚等⽅案,WEB前段可以使⽤squid/nginx等进⾏负载均衡,甚⾄采⽤DNS全局负载均衡等⽅案。
3.2 开发和测试
互联⽹是⼀个快速变化的世界,我们所⾯临的⽤户、环境每天都在改变,这就要求项⽬的技术团队能够适应这种情况,要能够做到“快速迭代”。不同于传统的软件项⽬,动辄⼏个⽉甚⾄⼏年的项⽬周期,互联⽹项⽬通常是以周为单位进⾏迭代。
在⼤多数情况下,⼀个⽹站在应付⽇常的特性修改的同时,也在酝酿⼤型的版本升级。因此,技术团队负责⼈需要对版本进⾏很好的规划。在开发过程中,借助SVN等版本管理⼯具,对主线版本和分⽀版本进⾏管理,保证⽇常的BUG修复可以归并到主线版本中。对于需求⽂档、设计思路、BUG记录等,则可以借⽤WIKI等⼯具。通过快速原型的构建,使得产品经理和其他内部客户能够尽早地体验系统功能,及时发现问题和明确⽅向。
开发团队应当在⼯作中逐步总结出编码规范,例如,HTML/CSS制作规范、PHP/JAVA编程规范等等。这⾥要特别强调的是,互联⽹应⽤中的安全问题是⾮常突出的,这⽅⾯需要在开发过程中特别关注。常见的互联⽹安全问题包括:跨站脚本攻击、代码注⼊、缓冲区溢出、SQL注⼊、权限验证漏洞、第三⽅系统漏洞等等。
根据项⽬的⼤⼩不同,测试团队的规模相差也很⼤。有些项⽬需要和开发团队⼈数相当的测试⼈员,⽽有些团队的开发⼈员则兼任了测试的职责。在项⽬的发展过程中,应尽量对⼀些基础功能制作⾃动
化测试⼯具,并不断完善测试⽤例。这样测试团队可以把更多精⼒投⼊到新功能的测试中,⽽不是每次版本发布都在对已有功能是否被破坏⽽感到担⼼。
从管理的⾓度来说,如何使开发和测试⼈员热爱⾃⼰所从事的产品⼯作是⾮常重要的。往往,很多项⽬都是产品经理和管理层在推动,技术团队只是被动地完成任务,并不断有抱怨产⽣,这样的项⽬是不健康的。技术⼈员同样要成为产品的主⼈,要具备相当⾼的主观能动性来投⼊⼯作,把所开发的产品看作是⾃⼰的孩⼦般关⼼和爱护。
4 规范化操作和成本控制:关于发布和运维
4.1 系统发布
系统发布是指将版本开发完成的系统在⽣产环境进⾏部署。对于⼀个⽹站来说,系统发布可能是⾮常频繁的。系统发布需要有严格的发布规范和⼯具来⽀持,否则发布错误,版本回退等问题会经常出现。
对于静态内容的⽇常更新,需要CMS系统来⽀持。CMS可以使⽤⼀些通⽤的系统,也可以针对⾃⼰的应⽤来定制开发。⽆论是哪种实现⽅式,⼀定要把⽇常更新和程序发布分开,否则产品和运营⼈员每次更新内容都需要劳动开发⼈员进⾏程序发布,将是⾮常低效和容易出错的。对于CMS系统的建设,需要对内容的结构和元数据的规划给予⾜够的重视,在这个阶段的
投⼊将对今后的可扩展性和接⼝的灵活性起到决定性的作⽤。
对于程序的发布,也应当有⾃动化的⼯具⽀持。尤其是要⽀持“版本恢复”功能,也就是⼀旦新发布的程序如果出现问题,应该⽴刻能恢复到之前的稳定版本。因为,在互联⽹项⽬中,测试不充分的事情时有发⽣,⽽且正式环境和测试环境也差别很⼤。系统发布后出现问题的概率也较⼤,这个时候就需要“版本恢复”这样的功能来保证⽹站的正常运⾏。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论