Operations | Monitoring | ITSM | DevOps | Cloud

CI/CD requirements for generative AI

CI/CD for generative AI applications presents unique challenges in model deployment, testing, and monitoring. Unlike traditional software applications, generative AI systems involve large model artifacts, complex dependencies, and specialized hardware requirements, making a sophisticated CI/CD pipeline essential for reliable delivery. As organizations embrace generative AI technologies, the need for specialized CI/CD solutions becomes critical.

A comprehensive guide to container security

So much of our modern software runs on containers. Containerized applications offer great flexibility for developers, but they also come with security risks. Container security is a holistic approach to managing risk in containerized environments. Securing containers requires a broad approach incorporating different tools and policies that enforce security in the software supply chain, infrastructure, container runtime environments, and other potential container attack surfaces.

What is Behavior-Driven Development (BDD)?

Behavior-Driven Development (BDD) is a software development methodology in which applications are built to match the behaviors a user would expect from the software. An evolution of Test-Driven Development (TDD), BDD gathers user stories about how users expect applications to behave, then creates software tests to validate that their applications match this behavior. The BDD methodology utilizes specific language and naming conventions.

Guide to unit testing

Unit testing is a software testing methodology that tests the behavior of individual functional units of code. Through unit testing, developers can verify that their code performs as intended. Providing an opportunity to catch bugs, validate the implementation of logic, and assess the quality of the code, unit testing enhances the quality of applications and preemptively identifies problems before they become major issues.

Software Development Life Cycle: SDLC phases and best practices

The Software Development Lifecycle (SDLC) is a methodology that provides a structured process for developing high-quality software in a timely and cost-effective manner. The SDLC outlines software development as a series of tasks, creating a management framework focused on efficiency and quality. Software development is a tightly interwoven process that balances costs, deadlines, and capabilities.

Introduction to developer experience: What, why, and how

The core concept of developer experience (or DevEx) is simple: happy developers are more effective developers. Great developer experiences create opportunities for success, while poor DevEx leads to frustration and delays. Though the concept is easy to grasp, real-world developer experiences depend on many complex factors.

Unlocking efficiency with CircleCI's new multi-repo project model

In a traditional CI/CD pipeline, the instructions for how your pipeline should run are stored in the same repository as your application code, creating a rigid 1:1 relationship between your pipeline and project code. This approach has benefits, like keeping pipeline logic close to the code it supports, but it also introduces challenges, especially for organizations managing multiple repositories or microservices.

Calculating the business value of software delivery

For engineering leaders and technology decision-makers, CI/CD metrics have always been more than just operational measurements – they’re direct indicators of developer experience and team productivity. Every failed build, slow pipeline, or delayed deployment directly impacts your developers’ ability to deliver value.

What is GitOps? Continuous delivery to Kubernetes with ArgoCD

With the increasing adoption of Kubernetes in recent years, there are various means and tools for achieving continuous delivery to Kubernetes. While it is possible to create a consistent CI/CD pipeline up to deploying to Kubernetes using CI/CD tools like CircleCI, there has been a rise in cases combining dedicated CD tools like FluxCD and ArgoCD to achieve this as well. A common aspect among these CD-dedicated tools is their adoption of GitOps.

Build and test a LlamaIndex RAG application

LlamaIndex is a framework for building context-augmented large language model (LLM) applications. It enables you to augment the model with domain-specific data to customize it and improve its responses to your use case. You can use this framework to build a question-answering chat bot, a document understanding and extraction application, or an autonomous agent. The framework provides tools to ingest data, process it, and implement query workflows that combine data access with LLM prompts.