top of page


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


The Testing Impact of Architecture in LLM-Powered Applications
In my previous post , we explored the big changes required in architecture to make LLMs successful. As those who are familiar with me will know that quality and testing are vital aspects of software architecture to me. So, I feel like I wouldn’t be able to explore the topic of software architecture without aspects of testing and quality. Testing and QA Must Be Built Into Architecture In classical software engineering – at least at a fundamental code level - testing often tend
Craig Risi
4 days ago7 min read


The Architecture of LLM-Powered Applications: How It Differs from Conventional Software Architecture
As I’ve already explored in my previous articles, LLM-powered applications are having a big impact on the way we think about software development. With this rapid acceleration into AI adoption, many companies and teams are discovering that building applications powered by Large Language Models (LLMs) feels nothing like building traditional software. The patterns are different, the risks are different, and so are the architectural decisions. LLMs introduce new forms of compl
Craig Risi
Nov 217 min read


Preparing Your Data for LLM Applications
Large Language Models (LLMs) are only as good as the data that shapes them. Whether you’re fine-tuning a model for domain-specific use or building an LLM-powered application from scratch, data readiness is the single biggest factor influencing performance, reliability, and ethical outcomes. As the saying goes, “garbage in, garbage out” - but with LLMs, the cost of poor data goes beyond technical glitches; it can lead to bias, misinformation, and loss of trust. In this post,
Craig Risi
Oct 318 min read


Building Quality into LLMs through Testing and Observability
In the previous blog post, we explored how LLMs are changing the way we develop software and how we need to think differently about data, engineering, and architecture to cater to them. In this second part, I will explore testing, observability, and the related aspects of ethics a little further. And when it comes to LLM-powered applications, testing is certainly not second fiddle. In fact, it could be argued that it is even more important than in traditional software develo
Craig Risi
Oct 177 min read


Building Quality in LLM-powered applications
While I’ve written on AI many times, I do often resist writing on the topic because I fear it is often overplayed and somewhat of a potential tech bubble. It won’t be going away, though, and even if its impact wanes, we still need to learn how to test and build quality around it. Especially in the realm of LLMs, which have had the largest impact on software development, both in how we create software and the types of solutions we can solve. Large language models (LLMs) like G
Craig Risi
Oct 37 min read


Continuous Compliance: Turning Audits Into Automation
When it comes to application security , compliance can often feel like a roadblock: a slow, manual process that lags behind the pace of...
Craig Risi
Aug 83 min read


Secure Software Development: Building Security Into the Code from Day One
We can secure our access and secure our data ; however, with software the engine driving innovation, it is also a prime target for cyber...
Craig Risi
Jul 113 min read


Data-Centric Security: Protecting What Matters Most
In my previous post, we looked at the importance of focusing on access control and perimeter security. However, protecting the perimeter...
Craig Risi
Jun 273 min read


Identity-Centric Security
In my previous post, I started to look at modernizing security, starting with software architecture. However, when looking at secure...
Craig Risi
Jun 214 min read


Modernizing Enterprise Security through Architectural Design
In the modern digital era, security can no longer be viewed as an afterthought or a final step in the software development lifecycle. In...
Craig Risi
Jun 64 min read


Modernizing Security
Over the past few months, I’ve shared a range of thoughts on modernization, primarily focused on the functional design of software....
Craig Risi
May 176 min read


Green IT in Testing and Quality Engineering: Driving Sustainability Through Smart Quality Practices
In my previous blog post , I explored the concept of Green IT through the lens of development practices, highlighting the importance of...
Craig Risi
May 26 min read


Going Green: Building Sustainable Software Modernization Practices
As organizations modernize their software systems, there's an increasing responsibility to do so sustainably. Green IT emphasizes the...
Craig Risi
Apr 175 min read


AI/ML in Software Modernization: Code Analysis, Automation, and Refactoring
As organizations race to keep pace with rapidly evolving technology landscapes, software modernization has become a crucial strategic...
Craig Risi
Apr 115 min read


Modernizing Data: From Relational Databases to Polyglot Persistence
I’ve done several blog posts on modernization recently, with a big focus on transitioning older applications to be repurposed for the...
Craig Risi
Mar 304 min read


AI Coding Technologies and how to best use them
Artificial Intelligence has transformed software development by enhancing productivity, code quality, and automation. Initially, AI in...
Craig Risi
Mar 85 min read


The Journey to Modernization – Part 8 – Testing Strategies for Serverless
Serverless applications present unique challenges for testing, given their event-driven nature and heavy reliance on managed cloud...
Craig Risi
Feb 135 min read


The Journey to Modernization – Part 7 – Best Practices for operating and maintaining a serverless stack
Serverless applications are inherently distributed, often integrating multiple services and resources across cloud environments. One of...
Craig Risi
Feb 74 min read


The Journey to Modernization – Part 6 – Best practices for implementing a serverless stack
In my previous article , we explored the foundational considerations for modernizing to a serverless stack, focusing on how to evaluate...
Craig Risi
Jan 247 min read


The Journey to Modernization – Part 5 – Considerations for transitioning to a serverless stack
At the end of 2024, I began exploring various steps toward modernization, and as we move into the new year, I will focus specifically on...
Craig Risi
Jan 107 min read
bottom of page