现金捕鱼游戏在线玩
您当前的位置 : 首页  >  现金捕鱼平台网上打鱼  >  「bet9九州最新官网app」思考总结:互联网的技术团队应该如何建设
「bet9九州最新官网app」思考总结:互联网的技术团队应该如何建设
2020-01-08 18:52:33    来源:互联网

「bet9九州最新官网app」思考总结:互联网的技术团队应该如何建设

bet9九州最新官网app,本文是我2012年从企业信息部开始主管互联网业务时对互联网技术团队建设的一些思考。从一个领域到另一个领域,如何做好角色转换,如何适应新领域的地方习俗,符合法律,我们需要思考两个领域之间的异同,以便能够跳出固有的思维束缚。

回顾七年前写的这篇文章,我很高兴我已经实现了很好的角色转变,并且建立了一个适合我的团队在互联网应用开发领域的技术体系。我希望今年在新的岗位上,也能迅速进入状态,实现新的突破!

尽管这篇文章是七年前的旧文章,但许多想法仍然指导着我目前的工作。当然,过去也有一些旧的想法。在这篇文章中,我还添加了一些评论来补充和解释我自己的观点。

大多数互联网产品是为大量用户提供的服务,用户分布广泛。他们的教育水平和习惯也大部分不同,这是非常不确定的。我们必须密切关注用户的行为和反馈。

因此,在互联网产品服务的用户研究、需求分析、产品研发和服务交付的全过程中,产品研发都采用探索性和适应性的研发理念。通常,整个产品研发周期分为几个迭代,采用迭代进化过程不断传递新产品特性,观察用户的行为和反馈,从而随时调整产品的思维和方向。互联网产品的核心特征是关注用户价值,价值驱动的敏捷开发方法与这一特征非常一致。

敏捷项目管理实践,通过小步骤、快速迭代、用户价值的增量交付、持续获取用户反馈、产品的持续快速调整、验证和对用户价值的适应性。正是通过这些实践活动,我们以迭代和增量的方式交付用户价值,以确保产品的开发在最大程度上符合用户的实际需求。

基于敏捷的互联网业务团队,大多数大型互联网公司更喜欢以下三种文化或原则:

(1)自组织文化

比如谷歌、脸书和其他互联网公司,他们很少甚至没有具体的项目流程,通常是如何快速完成,有着强大的工程师驱动的文化。敏捷团队的自组织特征削弱了团队技术领导的作用,强调自我管理和自我驱动,对每个人都要求更高的能力和素质,但它会使我们更加高效敏捷,走得更稳更远。

(2)追求一体化

作为敏捷开发方法中最精益思想基因的实践,集成团队是指每个项目团队包含分析、开发、测试等角色的软件。以便团队能够满足从设计、开发到测试的需求,达到质量标准并满足需求。每个集成团队通常都附属于某个产品,每个角色都为产品的开发贡献自己的智慧。

(3)追求全部功能

这里提到的全部功能是希望项目团队能够打破工程师角色之间的界限,比如研发、测试和前端工程师之间的界限,消除开发和测试过程中的一些潜在浪费,提高效率。在项目团队内部,通过角色交换和无角色配对工作,加强不同角色和不同模块之间的知识转移,打破技术壁垒,帮助员工从不同角度理解项目,培训技能,进一步提高团队平衡生产的能力。

我们为什么要提倡打破边界?

项目的整体效率取决于项目过程中每个环节的工作效率,而整体效率的优化往往取决于均衡生产,即消除生产的高峰(生产过剩)和低谷(生产不足)。只有局部效率的提高不能直接转化为整体效率的提高(就像水桶能容纳多少水取决于最短的板)。

整体效率的优化要求it团队消除技能障碍,培养多才多艺的人员,根据计划的变化灵活调整任务,并实现角色和流程之间的平衡。(这对小团队尤其重要,这对风险管理也是必要的。一个大团队中的每个角色和职位都有一定数量的人,通过人数优势实现均衡生产。然而,对于一个小团队来说,某个角色可能只有一个人。如果这个人的工作受到影响,整个团队的链条将会受到极大的影响,打破角色的界限,将这些风险降到最低。)

技术团队的建设应从两个方面着手:一是专业化分工,二是梯队作战模式。追求充分的功能或均衡的生产并不意味着每个人不分主次都应该全面发展,而是应该在保证一定的专业分工和深入专业研究的基础上,有适当的技能广度。例如,在我们的团队中,我们可以根据技术领域建立以下组织模型:

技术团队组织模式

目前,团队成员仍然相对较少。如果每个人都均衡发展,技术体系就不会深化。但是,如果我们都制定明确的方向,只走专业路线,也就是说每个方向只有一两个人,就很难为这个项目调动人力,这也是不可能的。因此,每个方向的固定第一梯队人员都可以在该方向专业发展,同时每个方向的第一梯队人员也将是其他方向的第二梯队,从而保证人力资源的均衡配置,满足各种项目的发展。

与此同时,我们仍然遵循这一思路。每个人都应该有一些“架构设计”、“程序开发”和“质量测试”的能力来打破角色之间的界限。这对每个人的整体素质来说都是非常高的。

七年前,我领导的团队规模很小,成员不超过10人。在这样的规模下,我优先考虑建立一个全功能团队。几乎每个人都在整个团队中,团队中有两三个人动作敏捷。与此同时,他们可以迅速填补职位空缺。然而,今天,我领导的团队是一个由数百人组成的研发团队,开发的产品或平台比以前更加复杂。因此,在这个时候,我更加强调专业化分工。前端和后端的分离阶段不同,规模也不同。我们的组织方法不同。记住惯性思维。

除了专业化分工之外,我们还需要建立梯队模型,以便更均匀地分配人力资源和时间。如下图所示:

技术梯队模型

这是一个漏斗模型。在人力和时间分配方面,优先级从上到下逐步降低。项目开发直接面对需求。它的核心是“快速”。它必须有能力快速响应需求,并以最快的速度完成产品的增量交付。

为了更快地做出响应,在架构设计和程序开发中应遵循“够了就够了”的原则。不要过度设计,程序的质量可以在可容忍的范围内适当降低。

如果我们只做这些事情,我们的产品和系统迟早会有问题,所以我们仍然需要下一步:产品优化。这一环节的核心是“精细化”,不断改进,消除以前的缺陷和隐患。考虑到更长的未来,我们将不断调整我们的结构和优化我们的程序。整个改进过程与系统的开发过程相一致,以确保系统的顺利开发。

够了吗?显然还不够!项目开发有多快?如何优化产品?由于我们的深度积累,研发的重要性体现在厚积累、薄开发,以及整个团队技术厚度的整体提高和开发效率的提高。我们的团队有自己的框架和平台,大大加快了我们项目的发展。

通过这种漏斗模型,我们将根据这种层级结构平均分配人力和时间,以确保我们的计划执行非常顺利,没有过度紧张或松弛。在平坦的道路上把我们过去发展的过山车过程变成恒速。

思考:如何构建一个优秀的R&D体系?

在研发体系的建设上,我和7年前的我完全一样。是不是不要忘记你的首创精神?让我们等到年底看看结果。o(* ̄︶ ̄*)o”

该公司目前正在研发cmmi3。持续的过程改进是我们一直需要做的。cmmi的引入可以帮助我们更好地改进这个过程。我们的团队参与企业信息化、软件项目和互联网项目。事实上,每样东西都有自己特定的环境和自己的繁殖土壤。在这个过程中,我们必须区别对待,真正遵循事物发展的规律。否则,良好的意图不一定能做好事。

主要软件公司基本上都在竞标cmmi,CMMI是中标的有力砝码,更适合b公司。而互联网公司,他们的基本生存原则不是依靠外包项目、产品销售,而是为最终用户推出服务产品,提供非常好的使用体验,获得用户的认可,从而获得公司的发展。因此,这就是为什么互联网公司很少对cmmi进行评论,许多一流互联网公司的产品开发过程甚至不能满足cmmi的要求。

网上也有很多关于这个方面的讨论,但是既然我们想做cmmi,因为我们还有软件开发的业务范围,我们真的想通过cmmi来提高整个团队和我们的过程的研发水平。然而,我也衷心希望cmmi能够深入不同的项目团队,探索每个项目的特点和业务方向,找出适合每个团队发展的业务流程和管理模式,而不是一刀切、一码、一码、一码甚至更糟,将过去的实施案例毫无考虑地转移给我们,这反过来又会成为我们前进的阻力。

作为技术团队的负责人,我一直在思考我们需要什么样的技术,尤其是我们整个团队和领导者都有企业应用开发的背景,如何适应互联网应用开发的需求,如何转变观念,使用合适的技术来解决特定领域的问题。

在谈论具体技术之前,我想与我们以前从事的企业应用程序开发进行一个比较,以便我们能够更直观地知道我们需要进行哪些更改以及我们未来的技术方向。

企业应用与互联网应用的区别

根据该表,我们可以清楚地看到企业应用程序和互联网应用程序之间的巨大差异。应用的不同决定了技术的不同。企业应用需要系统稳定性、程序可重用性、数据操作严密性和业务集成,而互联网应用需要高并发性、高扩展性和高可用性。

至于我们的团队,我们的业务主要是在互联网领域进行的,但我们的管理属于企业应用的范畴。我们的开发领域主要包括企业应用和互联网应用。因此,对技术团队的要求非常非常高。我们需要学习越来越多的实用技术来解决各个领域的问题,而不仅仅是根据不同领域的专业化程度。

我们谈论张开嘴和闭着嘴的结构,但是什么是结构可能对任何人都不清楚,因为每个人对结构有不同的理解。从字面上讲,建筑是确定一个事物的骨架和结构,并概括其作为一个整体的意识形态。组织结构有很多种,管理企业需要实施组织结构。

就实现系统而言,需要系统架构和业务架构,开发软件需要软件架构,以及信息架构、基础架构、数据库架构等。当我们讨论框架时,我们总是有非常不同的意见,因为我们没有为“框架”设定界限。不同的人对框架有不同的定义。我下面讨论的架构主要集中在系统架构和软件架构上。

我对建筑和建筑师的一些知识和看法:

单独谈论操作和维护是一个非常宽泛的概念。有些人认为它很深奥,而另一些人可能没有任何概念。事实上,运营和维护是it管理中非常重要的一个环节。如果我们生产的系统没有运行和维护支持,它将有巨大的风险。我们一直在谈论企业应用程序和互联网应用程序之间的区别,事实上,这两者之间的区别也决定了这两个领域的运行和维护也是非常不同的。

传统的企业内部网运营和维护主要关注旧it资产的安全性、权限管理和利用率。如何充分利用现有的it资产,是当前他们需要解决的一个紧迫问题。传统的内部网使用大量的小型计算机(ibm power小型计算机、hp小型计算机、sun小型计算机等)。),高端网络和存储设备(思科、emc、日立等)。),以及大量商业数据库、erp和中间件技术(ibm db2、oracle、sap等)。)。

企业的核心业务是在这些设备和软件上运行的,具有很长的使用寿命和许多历史遗留的问题。数据安全性和业务连续性是这些企业的生命线,其it业务的稳定性通常通过购买制造商和集成商的服务来保证。对于互联网操作和维护,如何快速有效地部署、如何确保可用性以及如何处理大规模并发访问是他们的首要任务。

现代互联网企业广泛使用个人电脑服务器、普通硬盘阵列和集群、先进的固态硬盘技术以及linux和mysql等开源软件。商业模式单一,软件技术和硬件设备变化迅速。性能优化、灵活部署和提高it硬件利用率是他们的优先事项。在领先的互联网企业背后,有一支强大的it运营和维护技术团队。

运行维护是一项极其复杂的管理工作,要求运行维护工程师拥有非常广泛的知识体系,不仅熟悉网络和硬件,而且了解开发情况,了解每个系统使用的技术和软件。通过大量的运行维护数据,可以有效地指导体系结构和系统的优化。运维工程师是典型的复合型人才。

运行和维护工程师的职责:

就像我谈论建筑一样,我认为建筑需要注意操作和维护,引导开发,我也认为操作和维护就是注意开发和引导建筑。一个好的架构师需要经历操作和维护过程,然后才能深入预测系统的未来发展,以便能够实时扩展今天的架构。具有高水平开发的运营工程师是晋升到建筑师的最佳途径。

七年前,人们关注的是运行和维护,但由于资源和应用规模有限,这部分运行和维护没有做好。事实上,今年它也非常重视运行和维护,但它仍然受到资源和规模的限制,几乎所有的资源都投入到研发中。但是在未来,随着产品规模的不断扩大,建设一支专业的运行维护团队仍然是一个目标!

目前,云是一个热门话题。所有软件服务都尽可能建立在“云”之上。然而,与许多“云里雾里”的人相比,我不知道为什么。

“云计算”的概念本应由谷歌在五年前开发出来并迅速发展。“云”的诞生有其发展的必然性,谷歌和亚马逊等互联网巨头是其发展的催化剂。

这些互联网公司的核心业务模式是提供与互联网相关的服务,从而带来巨额收入。他们必然希望越来越多的人和企业会接受互联网服务模式,这样所有的服务都可以通过互联网被传统的方式所取代。因此,推广“云”也就是优化他们的商业模式。

其次,经过这么多年的发展,这些大型企业已经在服务器、数据中心和分布式计算领域建立了成熟有效的解决方案,仅仅是为了支持他们自己的服务。资源肯定得不到很好的利用。实施云计算,以服务的形式出租基础设施和平台,更加合理地利用闲置资源。这也是实施“云”的原因。

“利润”这个词是最重要的。任何事物的发展怎么会缺少“利润”。当然,“云”的发展给我们的信息生活带来了翻天覆地的变化,推动了整个信息产业的转型。

“云”实际上是“服务”。所有传统的信息处理方法都是通过服务交付的。就服务而言,有几个层次:iaas(基础设施即服务)、paas(平台即服务)和saas(软件即服务)。

在iaas和paas层面,大型制造商通常负责,如亚马逊、微软、谷歌等。他们有自然资源来进行这些基本的、大规模的基础设施建设。

在中国,这些通常由政府驱动,由大型制造商承担。中小型公司只能在saas上提供更详细和个性化的软件服务,SaaS是生存之王。

我们一直在谈论“云”,我们是“云笔记”和“云相册”。如果服务没有大规模的好处,也没有能力将服务转化为利润,这种“云”只能被视为一种普通的互联网服务,个人博客和个人相册有什么区别。

因此,我们需要做“云服务”。我们需要对基础设施和大数据计算有一定的掌握。这些不需要我们来创建,但是可以很好地利用“云”相关技术(虚拟化、mapreduce分布式计算、海量数据存储、负载集群等)。),这是支持云的基础。在此基础上,我们必须做一个详细的“云”和一个有特色的“云”,为用户提供最专业的个性化服务和解决方案,这些服务产生价值。

“七年前,云刚刚出现,但今天我们离不开它。云让我们变得更简单,并将我们的精力集中在核心业务上。我的团队也生产了几种云产品,但它只能是云的概念,没有云的规模。我希望我们能尽快制定规模。”

上面提到的“云”,有“云”必须有“端”,“云”是服务的提供,“端”是服务的消费。目前,两个最重要的终端是个人电脑终端和移动终端。将来,当物联网建立时,一切都将看起来像“终端”。在个人电脑终端中,它仍然是传统的浏览器和客户端。

随着移动互联网的发展,越来越多的服务开始向移动终端倾斜。随着移动终端的便利,服务提供和消费变得越来越快。未来,移动应用将带来一个全新的时代,移动互联网时代已经开始。

在移动应用技术领域,我们需要面对多个平台(ios、android、wp等)。),每个平台可能还需要面对不同的设备规格,移动开发也面临许多许多问题。许多制造商也致力于使用一些中间语言和技术来统一移动领域的发展。例如,目前,html5、javascript和ruby等中间件平台也开始蓬勃发展。

最近谷歌推出了一种将java转换成Object-C的工具,未来的移动开发将不可避免地面临并要求我们考虑如何解决跨平台问题,特别是对于中小型企业,这是出于成本考虑。

目前,我们需要解决的是如何将母语与跨平台语言相结合,因为一个服务、多个终端和业务处理逻辑是相同的,不同之处更多的是在用户界面层和交互层。因此,通过与javascript和lua等中间语言的结合,可以更加优化移动应用程序的开发,降低开发和维护成本。此外,可以在统一有序的环境中开发多个终端。

跨平台移动应用一开始确实做了一些尝试,但是实际运行效果不是很好,所以这部分近年来没有进一步的发展,移动开发仍然主要是基于本土开发。但是,随着前端技术的成熟和跨平台解决方案的成熟,我们应该在这方面重新开始,配合移动中间平台的建设,把技术放在前端。

对2012年10月7日11天假期的思考

蔡根乱弹,微信公众号:cglt_tan,每个人都是产品经理的专栏作家。他曾担任程序员、技术总监和产品经理等多个职位,现负责白洋智能技术的研发管理。关注医疗和早期教育领域,擅长技术应用产品的设计和操作。

这篇文章最初发表于《人人都是产品经理》。未经允许禁止复制。

主题地图来自unsplash,基于cc0协议。


上一篇:房租抵扣个税却被房东威胁涨租 专家:可直接举报
下一篇:以著名演员加里格兰特(CARY GRANT)为设计灵感
  相关新闻
© Copyright 2018-2019 peoplesark.com 现金捕鱼游戏在线玩 Inc. All Rights Reserved.