一个人需要正确的工具来完成这项工作。 没有比完成汽车维修中途更让人沮丧的了,例如,只是发现自己没有完成工作所需的专业工具。 相同的概念也适用于开发人员:您需要工具来发挥自己的最大才能,而又不会因合规性和安全性需求而中断工作流程,因此可以更快地生成代码。

根据ActiveState最近的《 2018年开发人员调查:开源运行时痛苦》 ,一半以上的开发人员(具体而言为51%)每天只花费一到四个小时进行编程。 换句话说,大多数开发人员花费不到一半的时间进行编码。 根据调查,有50%的开发人员说安全是他们最大的担忧之一,但是67%的开发人员选择在编码时不添加新语言,因为与公司政策有关。

结果是开发人员必须花时间进行非编码活动,例如在构建软件和语言后检查软件的安全性和合规性标准。 而且由于公司政策,他们不会为工作选择最佳的工具或语言。 他们的满意度下降,风险上升。

因此,开发人员无法将时间投入到高价值的工作上。 这会带来额外的业务风险,因为它们的上市时间变慢了,并且组织由于没有授权开发人员决定“最佳”技术的能力而增加了技术债务,而不受公司政策的拖累。

烘焙安全性和合规性工作流程

我们如何解决这个问题? 一种方法是通过四个简单步骤将安全性和合规性工作流集成到软件开发过程中:

1.聚集你的力量

获得有关各方的支持。 这是一个经常被遗忘但至关重要的第一步。 确保考虑广泛的利益相关者,包括:

  • 开发运维
  • 开发者
  • 信息安全
  • 合法合规
  • IT安全

利益相关者希望了解业务收益,因此有必要在软件构建后消除安全性和合规性检查点。 您可以在构建业务案例时考虑以下任何(或全部)因素:节省时间,机会成本和开发人员生产力。 通过将安全性和合规性工作流程集成到开发过程中,您还可以避免对语言进行改装。

2.寻找可信赖的资源

接下来,选择可以使用的可信来源,以及它们的许可证和安全要求。 考虑包括以下信息:

  • 基于环境或应用程序类型以及每种语言的版本控制的使用限制
  • 允许哪些开源组件,例如特定的程序包
  • 可以在哪些类型的环境中使用哪些许可证(例如,研究与生产)
  • 安全级别的定义,可接受的漏洞风险级别,什么风险级别触发了一项措施,该措施将是什么以及由谁来负责执行该措施

3.从第一天起就纳入安全性和合规性

合并安全性和合规性工作流的最终目的是最终将安全性和合规性纳入第一行代码。 它消除了公司政策的麻烦,因为您是按照规范进行编码,而不是事后必须解决问题。 但是,为此,请考虑在构建代码时自动扫描代码的机制,以及对运行时代码使用无代理监视。 您可以节省时间,而且还可以通过编程方式实施策略,以确保整个组织的合规性。

4.监视,报告和更新

出现新的漏洞,并提供新的补丁程序和版本。 因此,在将代码部署到生产中以及运行代码时,需要考虑安全性和合规性。 您需要知道什么(如果有)代码受到威胁以及该代码在何处运行。 因此,部署和运行代码的过程应包括监视,报告和更新生产中的代码。

通过从一开始就将安全性和合规性集成到您的软件开发过程中,还可以通过跟踪代码在部署后在何处运行并在出现新威胁时收到警报来受益。 您将能够跟踪您的应用程序何时受到攻击,并通过自动实施软件策略做出响应。

如果您的软件开发过程引入了安全性和合规性工作流程,那么您将提高生产率。 而且您将能够通过增加编码时间来衡量价值; 获得安全和稳定; 在维护和发现安全与合规性威胁方面节省了成本和时间。

融合带来幸福

如果您不开发和更新软件,则您的组织将无法前进。 开发人员是您公司成功的关键,这意味着他们需要工具和快速编程的自由。 尽管合规性和安全性需求至关重要,但是您不能让它们陷入困境。 开发人员显然担心安全性,因此高兴的媒介是“从左移”并从一开始就集成安全性和合规性工作流。 您会做更多的事情,第一次就可以完成,而花费更少的时间进行代码更新。

翻译自: https://opensource.com/article/19/2/developer-happiness

开发人员的幸福:您需要知道的相关推荐

  1. Web前端开发规范文档你需要知道的事

    规范目的 为提高团队协作效率, 便于后台人员添加功能及前端后期优化维护, 输出高质量的文档, 特制订此文档. 本规范文档一经确认, 前端开发人员必须按本文档规范进行前台页面开发. 本文档如有不对或者不 ...

  2. Android开发,关于aar你应该知道的

    转载自:http://alphayang.community/2015/10/17/all-about-aar/ 背景 在软件工程中,分治是最基本的设计原理,就如同现实中的砖.瓦.钢筋.水泥一样,模块 ...

  3. C#开发人员应该知道的13件事情

    C#开发人员应该知道的13件事情 本文讲述了C#开发人员应该了解到的13件事情,希望对C#开发人员有所帮助. 1. 开发过程 开发过程是错误和缺陷开始的地方.使用工具可以帮助你在发布之后,解决掉一些问 ...

  4. Java开发人员应该知道的5大Spring Boot功能

    您可能已经听说过Spring Boot,这是用不到140个字符创建一个Spring Web应用程序的神奇力量,可以在一条推文中编写这些字符,但这到底意味着什么? 哪些功能可以使Spring Boot具 ...

  5. C# Development 13 Things Every C# Developer Should Know--C#开发人员应该知道的13件事情

    原文链接:https://dzone.com/refcardz/csharp 本文讲述了C#开发人员应该了解到的13件事情,希望对C#开发人员有所帮助. 1. 开发过程 开发过程是错误和缺陷开始的地方 ...

  6. php开发手册要看完吗,9个开发人员应该知道的PHP库

    9个开发人员应该知道的PHP库大多都是国外的资源,不过有了这些PHP库的支持,大家今后进行开发一定能加快速度,不会进行简单的重复劳动. 1. ReCAPTCHA The reCAPTCHA 库让你可以 ...

  7. 每个JavaScript开发人员应该知道的33个概念

    每个JavaScript开发人员应该知道的33个概念 介绍 创建此存储库的目的是帮助开发人员在JavaScript中掌握他们的概念.这不是一项要求,而是未来研究的指南.它基于Stephen Curti ...

  8. Java开发人员应该知道的7种新工具

    通过快速浏览一些最新的创新工具,随时准备锁定和加载. 万一您错过了它,RebelLabs最近发布了Java工具和技术前景的全球调查结果 . 除了著名的工具和成熟的工具外,市场还涌现出鲜有人知的新鲜工具 ...

  9. 每个Web开发人员应该知道的12个终端命令

    Tips 原文作者:Danny Markov 原文地址:12 Terminal Commands Every Web Developer Should Know About 终端是开发人员的武器库中最 ...

最新文章

  1. Nature今年首次撤稿给了微软:研究团队成员自曝删改不利数据,量子计算重大进展是假的...
  2. 基于GDAL库,读取海洋风场数据(.nc格式)c++版
  3. 一个孩子能长大成人到底有多不容易? | 今日最佳
  4. 华为云设计语言_华为又一项黑科技即将来临:可即时翻译任何动物语言
  5. RocketMQ报错:MQClientException:no route info of this topic的解决
  6. OpenGL与shader区别(三十一)
  7. Facebook采取赤裸裸抄袭的战略 争夺用户
  8. 天涯宝盒-天涯看贴脚本-只看楼主-自动翻页
  9. 【上电即上华为云】华为云openCPU智联模组_wifi_HF-LPX70_RISC-V_LwM2M
  10. 【第1128期】从北京回来的年轻人,该告诉你点什么?
  11. H5端input标签通过手机软键盘进行搜索,并关闭软键盘
  12. (zotero+坚果云+pdf expert+欧陆词典)实现PC平板同步阅读管理科研文献(完美教程)
  13. ylbtech-DBD-WeShop(微店)
  14. linux 清除swap 数据,linux清除swap
  15. 社区送温暖!Unitimes携手环信新春送好礼
  16. [深度学习之CNN]CNN卷积神经网络LeNet-5
  17. easyExcel的复杂表头多级表头导入
  18. 关于iPhone出现白苹果黑屏现象的修复方法
  19. Clamav使用及规则库详解
  20. gitlab删除项目时 ,没有删除选项

热门文章

  1. Ajax+SpringMVC+JSON登录验证
  2. javascript中的常见事件
  3. jdbc连接mysql问题
  4. 关于webstorm链接不上SVN的解决办法
  5. 系统最小的服务最小的权限最大的安全。
  6. hbase hbck的参数使用
  7. 断路器(CircuitBreaker)设计模式
  8. hadoop2.x伪集群搭建全流程
  9. 归并排序 c++_数据结构:排序(4)||有序表的归并(归并排序)、基数排序
  10. java 多态判断非空_Java多态性理解