Google 或其他受欢迎的公司是否存在团队领导问题?
Are there team leading problems at Google or other popular companies?
我在一家不是很大的公司担任软件工程师,大约有 120 个雇主。我被猎头了,因为这家公司很受欢迎,所以我开始在这里工作。我们在三个不同的国家/地区在线提供优惠券和折扣,运行 我们的网站。
刚来的时候,被惊到了。代码库太糟糕了,根本没有编写单元测试。有一半的工作验收测试也设计得很糟糕,覆盖了大约 5% 的所有功能。不久前,该项目被划分为伪微服务。他们之间的交流不是孤立的;每个服务都知道其他服务的业务流程。我们的生产基地每周至少停机一次。当我告诉团队负责人或 CTO 我们需要引入至少 90% 的测试覆盖率时,他们总是回答说现在没有时间了。见鬼。
你们公司有这样的问题吗?你克服了它们吗?如果是的话,是怎样克服的?我们的经理和开发人员应该采取什么步骤来改变这种情况?
嗯,这是所有拥有 50-200 名员工的小型组织的常见问题,因此其背后的原因是资源数量较少,通常大型组织在项目的不同级别都有单独的经理,所以不用担心。
好吧,如果你是 development/testing 的经理,请确保员工的效率和工作策略,谈论发展主要功能以确保如下:
1.Every 开发人员必须遵循编码标准。
2.Unit 开发人员必须非常仔细地制定测试计划。
3.Developer 文档必须定期更新。
4.Code 必须审核。
用于测试:
1.Each 测试人员必须具有独立性,可以根据优先级提出问题,并且必须尽快解决问题。
2.Tester 必须创建一个很好的测试用例,以满足有关他/她正在测试的功能的每个场景。
3.They 必须遵循 SRS。
4.Assumption 不得由测试人员创建。
希望对您有所帮助!
谢谢
高拉夫·希夫哈雷
gauravshivhareengg@gmail.com
我曾为十几个大大小小的开发组织工作过。可悲的是,糟糕的代码质量和糟糕的开发过程非常普遍,即使在较大的组织中也是如此。
改善情况有一些关键因素。
质量指标
当质量差的影响不明显时,就没有改进的动力。
让事情变得更好的一个好方法是引入一些指标来突出低质量的成本。一些例子:
- 计算修复错误所花费的时间。强调这段时间可以更好地用于开发新功能。
- 显示发现错误的时间与修复所需时间之间的关系。这凸显了尽早修复错误的重要性。
- 显示不良设计和架构的影响。举例说明糟糕的代码库如何使简单的编码任务变得更加困难。
- 强调技术债务和不修复它的成本
教育
很多好的开发实践对于非技术经理来说是违反直觉的。管理人员将单元测试、持续集成和结对编程视为 'luxury' 并不罕见。
当管理团队不理解良好开发实践的好处时,他们可能会抵制它们。
"we don't have enough time"的说法很普遍。重要的是要证明提高质量将如何节省时间而不是交付更多的商业价值。
教育至关重要。可以采用多种方法来提高对开发过程的理解:
- 外部教练可以提供帮助
- 购买优秀的开发书籍,在技术和管理团队中传阅
- 形成实践社区并鼓励讨论标准和开发方法
- 传播有关开发实践的优秀文章和博客文章的链接
管理层支持
一个关键因素是管理层的支持。一旦管理团队认为质量对成功至关重要,他们就会鼓励和培育质量。
上面讨论的指标和教育确实有助于让管理团队相信质量的重要性。
我在一家不是很大的公司担任软件工程师,大约有 120 个雇主。我被猎头了,因为这家公司很受欢迎,所以我开始在这里工作。我们在三个不同的国家/地区在线提供优惠券和折扣,运行 我们的网站。
刚来的时候,被惊到了。代码库太糟糕了,根本没有编写单元测试。有一半的工作验收测试也设计得很糟糕,覆盖了大约 5% 的所有功能。不久前,该项目被划分为伪微服务。他们之间的交流不是孤立的;每个服务都知道其他服务的业务流程。我们的生产基地每周至少停机一次。当我告诉团队负责人或 CTO 我们需要引入至少 90% 的测试覆盖率时,他们总是回答说现在没有时间了。见鬼。
你们公司有这样的问题吗?你克服了它们吗?如果是的话,是怎样克服的?我们的经理和开发人员应该采取什么步骤来改变这种情况?
嗯,这是所有拥有 50-200 名员工的小型组织的常见问题,因此其背后的原因是资源数量较少,通常大型组织在项目的不同级别都有单独的经理,所以不用担心。 好吧,如果你是 development/testing 的经理,请确保员工的效率和工作策略,谈论发展主要功能以确保如下: 1.Every 开发人员必须遵循编码标准。 2.Unit 开发人员必须非常仔细地制定测试计划。 3.Developer 文档必须定期更新。 4.Code 必须审核。
用于测试: 1.Each 测试人员必须具有独立性,可以根据优先级提出问题,并且必须尽快解决问题。 2.Tester 必须创建一个很好的测试用例,以满足有关他/她正在测试的功能的每个场景。 3.They 必须遵循 SRS。 4.Assumption 不得由测试人员创建。
希望对您有所帮助! 谢谢 高拉夫·希夫哈雷 gauravshivhareengg@gmail.com
我曾为十几个大大小小的开发组织工作过。可悲的是,糟糕的代码质量和糟糕的开发过程非常普遍,即使在较大的组织中也是如此。
改善情况有一些关键因素。
质量指标
当质量差的影响不明显时,就没有改进的动力。
让事情变得更好的一个好方法是引入一些指标来突出低质量的成本。一些例子:
- 计算修复错误所花费的时间。强调这段时间可以更好地用于开发新功能。
- 显示发现错误的时间与修复所需时间之间的关系。这凸显了尽早修复错误的重要性。
- 显示不良设计和架构的影响。举例说明糟糕的代码库如何使简单的编码任务变得更加困难。
- 强调技术债务和不修复它的成本
教育
很多好的开发实践对于非技术经理来说是违反直觉的。管理人员将单元测试、持续集成和结对编程视为 'luxury' 并不罕见。
当管理团队不理解良好开发实践的好处时,他们可能会抵制它们。
"we don't have enough time"的说法很普遍。重要的是要证明提高质量将如何节省时间而不是交付更多的商业价值。
教育至关重要。可以采用多种方法来提高对开发过程的理解:
- 外部教练可以提供帮助
- 购买优秀的开发书籍,在技术和管理团队中传阅
- 形成实践社区并鼓励讨论标准和开发方法
- 传播有关开发实践的优秀文章和博客文章的链接
管理层支持
一个关键因素是管理层的支持。一旦管理团队认为质量对成功至关重要,他们就会鼓励和培育质量。
上面讨论的指标和教育确实有助于让管理团队相信质量的重要性。