The Software Efficiency Report · From the Founder's Desk
The Software Efficiency Report | 2026 Week 30
DevSecOps That Developers Will Actually Use
This week’s Software Efficiency Report looks at what happens when faster code generation meets the realities of production. We examine the growing debugging and redeployment effort associated with AI-generated changes, share a practical efficiency tip for improving software supply-chain visibility, and explore the latest shifts in platform engineering, cloud operations, compliance, observability & embedded development.
The deep dive focuses on building DevSecOps practices that developers will actually use, supported by practical tools and implementation guidance. The report closes with key updates from the cloud, open-source, Linux, SRE, security, AI and embedded systems ecosystems.
- Metric of the week
- AI-Generated Code Requiring Production Debugging: 43%
- Deep dive
- DevSecOps That Developers Will Actually Use
Software Efficiency Metric of the Week
AI-Generated Code Requiring Production Debugging: 43%
43% of AI-generated code still needs manual debugging after reaching production, even when it passed earlier testing stages. Teams also report an average of three redeploy cycles to verify AI-suggested fixes. This rework offsets much of the coding-speed benefit and increases operational load. More details: Source Source
Reader Poll
How mature is DevOps and continuous delivery in your embedded / firmware development?
My take: Embedded teams often face longer feedback loops, hardware dependencies, and stricter safety or regulatory constraints than pure software teams. Yet the same principles, smaller changes, automated testing, version-controlled configurations, and faster recovery, still deliver major efficiency gains. Organizations that bring modern CI, hardware-in-the-loop testing, and platform-style self-service into embedded workflows reduce integration pain and accelerate release cycles without sacrificing reliability.
Where is your team today?
A) Mostly manual builds, testing, and releases with long cycles
B) Some CI and automated testing, but still heavy hardware dependency
C) Strong CI/CD with hardware-in-the-loop and version-controlled configs
D) Mature platform practices that give developers fast, reliable feedback on embedded changes
Which option best describes your current embedded development process?
Engineering Tip of the Week
Generate a Software Bill of Materials (SBOM) on every build and keep it attached to the artifact. Automated SBOMs give you instant visibility into dependencies when a new vulnerability appears, speed up response, and turn supply-chain risk into something manageable instead of a scramble.
Technology Ecosystem Trends
Ten Developments/Trends picks for this week Shaping Modern Engineering Operations
- Embedded Linux + edge AI stacks are maturing for production IoT fleets. Qualcomm Linux 2.0, Ubuntu Core 26, and Yocto-based platforms now ship with secure OTA, SELinux, Livepatch on ARM, container/K8s support, and smaller update deltas. AI acceleration for recipe writing and model deployment is already in use. Operationally this means longer-lived, patchable, AI-capable devices with centralized fleet observability.
- Platform teams are becoming the control plane for both human and agentic workloads. IDPs now serve AI agents as first-class users providing sandboxes, golden paths, cost/FinOps guardrails, and identity/policy for multi-step agents. The operational outcome is governed, self-service delivery at scale instead of proliferating siloed toolchains.
- Developer experience and platform-as-product metrics drive investment. Organizations measure platforms by developer NPS, lead time, and cognitive load reduction. The winners treat the internal platform as a product with its own roadmap, SLOs, and continuous improvement loop.
- Cloud strategy tightens around automation, FinOps, and hybrid control. Multi-cloud and hybrid remain the norm; IaC plus policy engines keep costs and compliance in check while AI helps right-size GPU and general compute. Shadow AI usage forces clearer governance on who can spin up what.
- Release management and continuous testing adapt to higher code volume. AI coding drives more commits and faster deploys, but also more rollbacks and quality debt. Teams respond with intelligent test generation, risk-based gates, and release agents that validate impact before promotion.
- Spec-driven development gains ground Teams write structured specs first; AI agents then generate, test and iterate on the implementation, reversing the traditional “code then document” flow.Source
- IaC stays essential under agentic automation AI agents generate and modify infrastructure, but version-controlled, reviewable IaC remains the control plane that keeps changes auditable, reversible and policy-compliant.Source·
- Observability turns agentic Tools move from dashboards to agents that correlate signals across infrastructure, applications and other agents, then propose or execute remediation with full context.Source ·Source
- Continuous compliance becomes fully automated. Regulatory and contractual controls are now evaluated continuously inside CI/CD and runtime rather than through periodic audits. Tools generate evidence, enforce policies and produce auditor-ready reports on every change. :Source ·Source
- Multi-modal agents enter operational workflows Agents that combine text, code, logs, metrics, screenshots and audio are being applied to incident response, root-cause analysis and change validation, expanding beyond pure language interfaces. Further reading:Source ·Source
Deep Dive Article: DevSecOps That Developers Will Actually Use
About ten years ago, I was working with a team whose Jenkins pipeline had become overloaded with security checks.
One morning, the build failed for what felt like the eleventh time. The application itself was not broken. Two SAST scanners had identified the same missing input-validation issue, but each reported it differently and sent the developer to a different dashboard.
I remember the tech lead looking at me and saying: “I don’t even read these reports anymore. I just rerun the build until it goes green.”
The scanners were not making the vulnerability disappear. Some of the integrations were unreliable, the quality gates behaved inconsistently & developers had stopped trusting the feedback. Rerunning Jenkins had become easier than understanding what the pipeline was trying to tell them.
That sentence captured the real problem.
Soon, pull requests(Single commit verification in Gerrit Tool) started waiting longer for approval. Three security tools were reporting the same vulnerable dependency in three different ways. Build times had grown from eight minutes to twenty-five. Developers had to jump between dashboards to determine whether the findings were duplicates, whether they were relevant, and who was expected to fix them.
Nobody had a clear answer.
Within a few months, the team had become very good at working around the security gates without understanding what those gates were protecting.
We did not commonly describe this work as DevSecOps at the time, but the experience still shapes how I design security into delivery pipelines today.
That incident happened about ten years ago. The tools, platforms, and practices discussed below reflect how I approach DevSecOps today. The technology has changed considerably, but the underlying lesson has not: security controls only work when developers can understand and act on them.
Security controls fail when they are bolted onto the delivery process without considering how developers actually work. DevSecOps succeeds when security becomes a normal part of building and shipping software, not another approval layer sitting on top of the pipeline.
Start with the delivery path, not the tools
Before adding a scanner, I first map how a change moves through the organization.
It usually starts on a developer’s laptop, moves through a pull request or a Gerrit change, enters the build system, passes through automated testing, becomes an artifact, and is promoted through one or more environments. Eventually, it reaches production, where monitoring and incident-response processes take over.
That path matters because every security control has a natural place.
Secret detection should happen as early as possible. A local pre-commit check can stop a password or access token before it enters Git history. The same check should also run in CI because local controls can be skipped, misconfigured, or unavailable.
Once a real credential reaches a shared repository, removing the text is not enough. The credential should be treated as compromised and rotated. This is why I prefer layered secret detection rather than relying on a single control. The OWASP DevSecOps Guideline provides useful guidance on integrating controls such as secret scanning, SAST, SCA(example: I used Blackduck tool) and Infrastructure as Code scanning into delivery pipelines.
Static application security testing belongs close to code review, while the developer still remembers the change. Semgrep, CodeQL, SonarQube, Checkmarx, Fortify, and similar products can help identify insecure code patterns, unsafe data flows and programming errors without executing the application.
Third-party dependency risk is a different problem. That belongs to software composition analysis. Tools such as OWASP Dependency-Check, Snyk, Mend, or JFrog Xray examine libraries and components for known vulnerabilities and, in many cases, licensing concerns.
Calling everything “SAST” makes ownership and remediation less clear.
Infrastructure as Code should be checked before it is applied. Checkov, Trivy, KICS, and similar tools can identify risky Terraform, Kubernetes, CloudFormation, or Helm configurations while the change is still under review.
The built container image should then be scanned again. Source-code scanning cannot tell you everything that ended up in the final image. Operating-system packages, transitive dependencies, generated files and an outdated base image can all introduce problems that were not visible in the application repository. Example: Zero-day attacks.
The aim is not to install every security product available. It is to choose the smallest useful set of controls that covers the real risks without making developers interpret five versions of the same finding.
A finding needs to tell someone what to do
A security finding is not useful simply because it exists on a dashboard.
It should tell the team what was found, where it is located, why it matters, and what action is expected. It should also make clear whether the issue blocks the release, requires approval, or can be handled through normal backlog work.
I have seen teams generate hundreds of findings every week and still release vulnerable software. The scanners were working, but the operating model around them was not.
Some results were duplicates. Some rules had never been tuned for the application. Some findings lacked enough context to determine whether the vulnerable path could ever be reached. Others belonged to a completely different team.
This is not an open-source-versus-commercial-tool problem. Poorly configured products create noise regardless of their licence or price. A scanner needs suitable rules, application context, ownership information, and a process for reviewing false positives.
Consider a vulnerability reported in a shared base image. The application team may not build that image and may not have permission to modify it. Failing every application pipeline will not fix the underlying component. It will only make several development teams distrust the security gate.
The finding should be routed to the platform team or whoever owns the base image. That team can rebuild and publish the corrected version, after which downstream applications can be rebuilt automatically.
Ownership should follow the vulnerable component, not whichever team happened to trigger the scan.
Scan and record what you are actually shipping
The source repository is only one part of the finished product.
The deployed artifact may contain operating-system packages, language dependencies, generated code, bundled configuration, and components inherited from a base image. That is why I prefer security checks to follow the artifact through the delivery process rather than ending after source-code analysis.
For every releasable artifact, I want a clear chain connecting the source commit, pipeline run, artifact version and cryptographic digest, dependency inventory, SBOM, security results, approval decision, and signing or provenance information.
CycloneDX and SPDX are SBOM standards, not scanning products. A tool such as Syft can generate an SBOM in one of these formats. That SBOM should remain associated with the artifact so that the team can identify affected products when a new vulnerability is disclosed.
This can feel like unnecessary record-keeping when nothing is wrong.
It stops feeling unnecessary when a serious CVE is announced and leadership asks which applications contain the affected component. A team with reliable artifact records can answer in minutes. A team without them may spend days searching repositories, questioning service owners, and rebuilding dependency lists.
The NIST Secure Software Development Framework supports this broader approach by treating secure development as a set of practices that should be integrated throughout the software lifecycle, rather than added only at the end.
Signing is useful only when deployment verifies it
Once an artifact passes its required checks, it should be signed.
But signing alone proves very little when the deployment environment accepts unsigned artifacts anyway.
The platform must verify the signature and the expected signer before allowing the artifact to run. Cosign, part of the Sigstore ecosystem, can sign and verify container images and other artifacts. The Sigstore documentation explains how verification can confirm both the image signature and the identity associated with it.
I also prefer deploying container images by immutable digest rather than by a moving tag such as latest.
A tag is a convenient name, but it can be pointed at different content. A digest identifies the exact image content. The Kubernetes documentation on container images also recommends using digests when you need to ensure that the same image content is deployed consistently.
The artifact that passed testing, security review, and approval should be the exact artifact that reaches production.
Not another build with the same version label. Not whatever happens to be behind latest when deployment begins.
The same bytes.
Stop treating every finding as an emergency
One of the fastest ways to lose developer trust is to make every finding block delivery.
A scanner’s severity rating is useful, but it is not enough to make a release decision. The real risk also depends on exploitability, reachability, environment, existing controls, and business impact.
A critical vulnerability in a development-only test dependency is not the same problem as the same vulnerability in an internet-facing authentication service. A medium-severity issue under active exploitation may require faster action than a higher-scoring issue that cannot be reached in the deployed application.
That is why I do not rely on CVSS alone. I also look at whether the vulnerable component is present in the deployed artifact, whether the affected code path is reachable, whether exploitation is already happening in the wild, and what business function is exposed.
The CISA Known Exploited Vulnerabilities Catalogue is useful here because it helps teams distinguish between a theoretical vulnerability and one that has evidence of active exploitation.
In practice, I normally separate findings into four responses.
Informational findings remain visible but do not require immediate action.
Advisory findings create an assigned task with an agreed remediation period.
Approval-required findings pause promotion until an authorized person accepts or rejects the risk.
Blocking findings stop the release. Examples might include a committed production credential, detected malware, an unsigned production artifact, or a known exploitable vulnerability in an exposed critical service.
The exact thresholds will vary by organization. What matters is that the rules are written down, understood, and consistently applied.
A developer should not have to guess why one issue stopped a release while another one did not.
Introduce policy gradually
Kubernetes policy engines such as Gatekeeper and Kyverno can enforce controls around approved registries, image signatures, privileged workloads, required labels, and other deployment requirements.
They are powerful tools. They are also capable of causing widespread disruption when an untested policy is switched directly into blocking mode.
I rarely introduce a new production policy that way.
First, the policy runs in audit or dry-run mode. This shows what it would reject without stopping deployments. The results are reviewed for unexpected matches, existing violations, and workloads that need migration.
Next, teams receive warnings and practical remediation guidance. Templates, Helm charts, and platform defaults are updated so that the compliant path becomes the normal path.
Only after the impact is understood should the policy move into enforcement.
Both Gatekeeper and Kyverno provide ways to observe policy violations before moving to full enforcement.
Turning an untested policy directly into enforcement is one of the easier ways to create an avoidable production incident, usually when the person who wrote the policy is unavailable.
Exceptions are normal, but they must expire
Not every vulnerability can be fixed immediately.
A dependency may have no patch. A legacy application may require a larger redesign. A release may have a contractual deadline that arrives before the permanent correction is ready.
Real engineering organizations need an exception process.
A useful exception should contain a clear description of the risk, a named owner, an approver, a reason the issue cannot be fixed now, any compensating controls, and a specific expiry date. It should also state what needs to happen before the exception can be closed.
An exception without an owner will be forgotten.
An exception without an expiry date is no longer temporary. It has become accepted security debt, whether the organization admits it or not.
The purpose of the exception process is not to make risky changes easy. It is to make risk acceptance visible, deliberate, and reviewable.
What good DevSecOps looks like
A good DevSecOps system is not the one producing the largest number of findings.
It is the one helping people make better decisions earlier.
Developers receive feedback while they still understand the code they changed. Platform teams maintain trusted base images, reusable pipelines, and secure deployment defaults. Security teams define policies, investigate meaningful risks, and improve detection quality instead of manually chasing every alert.
Product owners understand when a release includes accepted business risk.
Operations teams can trace a running workload back to the source, build, artifact, SBOM, security decision, and signer.
Production receives artifacts that are approved, identifiable, and verifiable.
That is the outcome I look for.
Detect issues early. Block only what genuinely deserves to stop delivery. Route each finding to the person who can fix it. Keep exceptions visible and temporary. Make the secure path easier than working around it.
That is the version of DevSecOps developers will actually use.
Tools, Resources and Community | Worth Knowing
Open Source Tools – Focused on DevSecOps
Trivy if you want one fast, all-in-one tool for vulnerability scanning, SBOM generation, secret detection, and IaC/container checks.
Semgrep if your priority is lightweight, high-signal SAST that developers can run easily in pull requests.
Syft + Grype if you need strong SBOM generation and accurate vulnerability matching for containers and dependencies.
Checkov or KICS if you want solid Infrastructure-as-Code security scanning (Terraform, Kubernetes, CloudFormation, etc.).
Gitleaks or TruffleHog if secret detection and preventing credential leaks are the main goal.
OPA / Gatekeeper or Kyverno if you need policy-as-code enforcement in Kubernetes clusters.
Falco if you want runtime security and behavioral threat detection for containers and Kubernetes.
OWASP Dependency-Track if you need continuous monitoring and management of SBOMs and known vulnerabilities after the build.
Commercial Tool – Focused on DevSecOps
Snyk if developer adoption and shift-left speed are the priority. Excellent SCA, SAST, container, and IaC scanning with strong pull-request integration.
Wiz if you want fast, agentless visibility across cloud environments, containers, and code with clear risk prioritization.
Prisma Cloud if you need a full enterprise-grade code-to-cloud platform covering IaC, containers, runtime, CSPM, and compliance.
Checkmarx if you require deep, enterprise-grade SAST and software supply-chain security with strong governance features.
Veracode if you need a mature, policy-driven platform for SAST, DAST, and SCA with robust compliance reporting.
GitHub Advanced Security if your teams already live in GitHub and want native code scanning, secret scanning, and dependency management.
GitLab Ultimate if you prefer an all-in-one DevSecOps platform with built-in SAST, DAST, container scanning, and security dashboards.
Aqua Security if container and Kubernetes security (including runtime protection) is the main focus.
Sysdig Secure if you need strong runtime security, compliance, and vulnerability management for cloud-native environments.
Mend (formerly WhiteSource) if open-source risk and software composition analysis are your highest priority.
Note: There are chances I missed some famous tools as well.
Learning and Community
OWASP DevSecOps Guideline A practical, community-driven guide covering how to embed security into pipelines (secrets, SCA, SAST, IaC scanning, SBOM, and supply-chain controls). Useful reference for teams building or maturing their DevSecOps practices.Source
SBOM Implementation Guidance Clear guidance on moving from manual SBOM generation to fully automated CI/CD integration and continuous vulnerability tracking. Practical reading for anyone improving software supply-chain visibility.Source
Internal Developer Platform maturity resources Ongoing community content examining how teams measure platform success, improve adoption, and evolve toward multi-persona and AI-ready platforms. Helpful for platform teams that want to move beyond “platform theater.”Source Source
Technology Ecosystem Weekly News Digest – Top Picks
Cloud and Platform Updates
AWS latest updates – AWS expands its production AI, serverless and cloud operations tooling. AWS has focused on making AI agents easier to build, secure and operate. Amazon Bedrock added Managed Knowledge Base, Grok 4.3 and OpenAI’s GPT-5.6 model family. Lambda can now use customer-controlled S3 buckets for deployment packages, giving teams better control over encryption, access, retention and disaster recovery. AWS also introduced an AI-powered GuardDuty investigation agent, published cross-account monitoring for SageMaker pipelines and demonstrated faster RDS incident analysis using continuously collected forensic data. Other changes include new Amazon SES pricing plans, security updates for Amazon Corretto and a leadership transition in AWS compute and machine learning. Source Source [3[ Source Source Source Source 8] Source
Azure latest updates – Microsoft expands Azure for AI and high-performance computing. New AMD-powered Azure virtual machines will support large-scale data processing, engineering and AI inference. Microsoft also expanded its Mistral partnership, giving regulated organizations more options to run AI in Azure, private environments or fully disconnected systems. Azure data centres will also adopt new fibre technology from 3M to simplify high-density network connections.:Source Source Source
GCP latest updates – Google Cloud expands capacity, resilience and AI governance. Google Cloud reported strong growth, prompting Alphabet to raise its 2026 infrastructure spending forecast. Google also connected the Nuvem subsea cable between the US and Portugal, added stronger multi-region failover for Cloud Run, and published new guidance for securing AI workloads on GKE and governing Gemini usage through BigQuery. :Source Source Source Source Source
Cloud providers face stronger regulatory oversight. The UK’s new framework requires major providers serving financial institutions to demonstrate resilience, report serious disruptions and address identified weaknesses. The rules cover AWS, Microsoft, Google Cloud and Oracle. Further reading:Source.
Here is a portal to get other cloud news: Source
Open-Source and Linux Ecosystem
Uber detailed how it keeps OpenSearch clusters available during zone outages. The method combines OpenSearch’s built-in shard allocation with custom isolation groups on its Odin container platform
Documentation becomes core infrastructure for AI agents. Analysis of 1192 agent conversations found knowledge-base search was the most-used tool, helping agents understand products, select tools and avoid inventing unsupported actions.Source
Linux receives several stable and long-term updates. Linux 7.1.4, 6.18.39 and 6.12.96 were released on July 18, followed by Linux 7.2-rc4 on July 19. Teams maintaining Linux-based products should review the changes and plan regression testing before adoption.:Source.
CNCF strengthens its cloud-native AI infrastructure portfolio. HAMi moved to incubation, giving Kubernetes teams an open-source way to share and schedule GPUs and other accelerators. CNCF also published practical guidance for hosting models with vLLM and measuring LLM performance using goodput, which counts requests that meet latency targets. Further reading:Source |Source |Source
Confidential Containers becomes a CNCF incubating project. The project uses trusted execution environments and Kata Containers to protect sensitive data while it is being processed. It allows teams to run confidential AI and regulated workloads through familiar Kubernetes workflows. Further reading:Source
DevOps, Platform Engineering and SRE
Telstra outage exposes failures in change management and patching. A major Australian telecom outage was traced to an undocumented design change and a missed software update on a network time server. The fault spread incorrect time data across the network, disrupting calls, payments and train services despite redundant infrastructure. This is a strong SRE case study on configuration records, dependency testing and maintenance controls. Source Source
GitLab 19.2 added agentic automation that can open merge requests to fix vulnerable dependencies and iterate when builds break, while also introducing carbon-awareness metrics so teams can track the emissions of their CI/CD pipelines alongside normal speed and cost data.Source Source
Reliability and policy testing move closer to production conditions. Flipkart shared its LitmusChaos-based approach for running controlled resilience tests across teams and workloads. Kyverno maintainers also demonstrated how CI tests can simulate live Kubernetes resources, reducing differences between offline testing and production policy enforcement.:Source Source
GitHub Code Quality becomes generally available. The service combines CodeQL analysis with AI-assisted issue detection and Copilot Autofix. It also adds organization dashboards, pull-request coverage reporting and quality gates through GitHub rulesets Source
A few Other portals to get DevOps news Source Source Source
Security and DevSecOps
Research highlighted that many organizations lack formal policies for AI agent identities. Machine identities already outnumber human ones, and nearly half of them hold access to sensitive resources. Source
GitHub expands secret scanning and public exposure monitoring. The update adds more secret types, broader push protection, improved webhook information and clearer reporting for credentials exposed in public repositories.:Source.
Supply-chain attacks remain a major route into enterprise networks. Financial Times reporting found that about half of more than 22,000 analysed breaches involved third-party compromise. SBOMs, supplier access controls and continuous monitoring are becoming basic security requirements.:Source.
Latest Security news: Source
AI/ML & Agentic AI Updates
AI data-centre growth meets power and community constraints. Hut 8 signed a 15-year, $9.8 billion lease for 352 megawatts of capacity in Texas. At the same time, communities across the United States are raising concerns about electricity, water use, local costs and limited transparency around new facilities. Sources:Source Source.
OpenAI expands its forward deployed engineering model. The company is placing engineers inside customer organizations and investing in a partner network to help businesses move AI projects from prototypes into working production systems.:Source.
AMD and Anthropic sign a large AI infrastructure agreement. Anthropic may deploy up to two gigawatts of AMD MI450 capacity, while AMD could invest as much as $5 billion based on agreed milestones. Source:Source.
Google is reportedly developing a more efficient Gemini server chip. The planned processor would place parts of the Gemini model closer to the hardware and is intended to improve token output for a given amount of power. Source:Source.
Three portals to get latest AI news : Source Source Source
Embedded Systems and IoT
Honda calls for shared software-defined vehicle platforms. Its Automotive Grade Linux demonstration ran across automotive hardware and Raspberry Pi using AGL, Android Automotive, Zephyr and Xen. Honda said open collaboration is necessary to manage vehicle software complexity.:Source.
The Xen community moves closer to functional-safety certification. Work is progressing toward ISO 26262 ASIL D and IEC 61508 SIL 3 support. The project is using compiler-based code reduction, coverage tooling and QEMU-driven fault injection in CI.:Source.
Micron signs long-term automotive chip agreements. Deals with Qualcomm, Harman and other suppliers are intended to secure memory and storage for AI-enabled vehicles, digital cockpits and advanced driver-assistance systems.:Source.
The FCC closes a loophole covering Chinese components inside connected devices. New rules prevent US authorization of devices containing logic-bearing hardware from companies such as Huawei and ZTE, even when the complete device is manufactured by another company. This has implications for IoT, routers, telecom equipment and embedded supply chains. Source
