Systems | Development | Analytics | API | Testing

The CI Infrastructure Behind Bitrise: Build Without Compromise

As a developer, when you think about CI/CD, you probably focus on build times, test results, and deployment pipelines. The infrastructure powering those builds? It's invisible (unless something goes wrong!). At Bitrise, we've spent 10 years refining infrastructure decisions that most developers never see. In this post, we are pulling back the curtain on the infrastructure choices we've made and why they matter for reliability, consistency, and performance.

Best Practices for Docker Logging Configuration

When managing Docker containers, effective logging is essential for troubleshooting, monitoring, and ensuring compliance. Mismanaged logs can lead to disk space issues, performance bottlenecks, and lost diagnostic data. Here's a quick breakdown of what you need to know: Choose the right logging driver: Options include json-file (default), syslog, journald, fluentd, and none. Each has unique benefits depending on storage, performance, and integration needs.

Bridging the Gap Between Reliable APIs and Unpredictable AI

APIs and AI are on a collision course. For decades, APIs have been the foundation of digital reliability: deterministic systems where you send a request, get a predictable response, and trust that what’s defined is what will happen. AI doesn’t play by those rules. Large language models and AI agents operate in probabilities. They don’t just follow contracts; they interpret them. They learn, infer, and sometimes hallucinate.

How to Test Your AI Apps and Features: A Comprehensive Guide for QA Leaders

Your CEO just announced the company’s AI-first strategy and the product team is shipping AI features faster than ever. Marketing is promising intelligent automation to customers, while the QA team is left wondering how to actually test this stuff. Every QA team is grappling with the same challenge as AI becomes the default solution for everything from customer service to content generation.

How to get the full potential of Xray with Xray Academy

Software teams today face increasing pressure to deliver high-quality applications at speed. Continuous testing, test automation, and traceability are no longer optional — they’re must-haves for scaling development. Tools like Xray provide the structure and visibility teams need, but their success ultimately depends on how effectively people use them. That’s where Xray Academy comes in.

MySQL Mocking with Speedscale's Proxymock: A Complete Guide

Testing database-driven applications is notoriously painful. If your app depends on MySQL, you’ve probably spent hours setting up local databases, running migrations, loading data, and then cleaning everything up just to rerun your tests. This repetitive cycle slows development, breaks pipelines, and introduces inconsistency between local and production environments.

Designing Your Virtual Test Team

As organizations explore more advanced uses of agentic testing, a compelling vision emerges: a modular virtual test team composed of AI agents, each playing a focused role like Test Architect, Test Designer, Executor, and Summary Agent. While still early in real-world adoption, this model offers a way to coordinate intelligence at scale, with humans guiding the system and autonomy granted based on task risk and maturity.

Metrics That Matter for Agentic Testing

Traditional test metrics like automation %, pass/fail rates, and defect counts don’t reflect the impact of introducing agents into the QA process. This blog explores a new class of KPIs designed to measure how well your virtual test team is performing including Agent Assist Rate, Human Override Rate, Scenario Coverage Delta, and Review Time Saved.

Leveraging Confluent Cloud Schema Registry with AWS Lambda Event Source Mapping

In our previous blog post, we introduced two ways that Confluent Cloud can integrate with AWS Lambda. One option is using Lambda’s Event Source Mapping (ESM) for Apache Kafka, wherein Lambda creates a consumer group, consumes records off the provided topic, and triggers the Lambda function. The record is polled by the ESM, and the consumed record subsequently acts as the event data provided to (and processed by) the Lambda function.