top of page


A personal blog addressing software quality across all aspects of software development, testing, design, and people.
Search


Managing Open Source and Dependency Risk
Modern software development rarely starts from a blank page. Instead, applications are assembled from a vast ecosystem of frameworks, libraries, and open-source components that accelerate development and enable teams to build complex systems quickly. In many cases, the majority of an application’s functionality comes not from code written internally, but from external dependencies - and lately, AI. This shift has dramatically improved developer productivity, but it has also i
Craig Risi
3 hours ago4 min read


DevSecOps: Embedding Security into the Delivery Pipeline
Modern software delivery has transformed how quickly organizations can build and release software. Continuous integration and continuous delivery pipelines enable teams to deploy updates frequently, respond rapidly to customer needs, and iterate faster than ever before. However, this speed can expose a major weakness in traditional security models. Historically, security checks were performed as a final gate before release. Security specialists would review code, run vulnerab
Craig Risi
May 84 min read


Secure Coding Starts with the Engineer
With the rapid rise of AI agents and the emergence of increasingly powerful models, some of which may introduce new security risks, it feels timely to revisit the topic of software security. More importantly, it raises the question of how we can write code, often with the assistance of AI, that remains robust and secure in the face of these evolving threats. Code is written, features are delivered, and only near the end of the development cycle does a security team step in to
Craig Risi
Apr 244 min read


Measuring AI Usage and Safety in the Software Development Lifecycle
We’ve explored a range of approaches to measuring software delivery and ensuring teams build effectively in my recent posts. From well-established engineering and testing practices to modern delivery metrics. The metrics we’ll explore today, however, are far newer, emerging in response to the rapidly evolving role of AI in the software development lifecycle. As AI becomes embedded in the software development process, from code generation to testing and documentation, engineer
Craig Risi
Apr 104 min read
bottom of page