Skip to content
Notifications
Clear all

CircleCI after 12 months - honest review from a 20-person startup

1 Posts
1 Users
0 Reactions
0 Views
(@data_analyst_2025)
Reputable Member
Joined: 2 months ago
Posts: 131
Topic starter   [#21497]

Hey everyone! 👋 I've been lurking here for a while, soaking up all the knowledge, and finally have something to contribute. I'm the first dedicated data analyst at a 20-person SaaS startup, and about a year ago we migrated from a basic Jenkins setup to CircleCI. I was brought in partly to help build more reliable data pipelines, so I got thrown into the deep end with our CI/CD setup too.

We’ve now been on CircleCI for 12 months. I want to share our honest experience, focusing on what it's like at our scale. We have about 15 microservices, use Python and Node.js heavily, and my world revolves around dbt and Looker. Here’s the breakdown from my perspective:

**The Good (What We Love):**
* **The onboarding was super smooth.** The config-as-code (`config.yml`) felt approachable, even for me coming from SQL and LookML. Getting a basic pipeline up for a new service is incredibly fast.
* **Orbs are fantastic for a small team.** We don't have a dedicated DevOps person, so using pre-built orbs for AWS ECR, Slack notifications, and even for dbt saved us *so much time*. It felt like using community packages.
* **The UI is clean and intuitive.** Debugging failed builds with the SSH feature is a lifesaver. For analysts and engineers who aren't CI/CD experts, this reduces a lot of frustration.

**The Not-So-Good (The Hiccups):**
* **Costs got confusing as we scaled.** The credit-based system is hard to predict. Our monthly bill fluctuates more than we’d like, and optimizing pipeline speed (using larger resource classes) directly hits the wallet. We've had to be very mindful of caching.
* **Config complexity grows quickly.** Our main `.circleci/config.yml` is now a behemoth. While the syntax is YAML, managing dependencies between jobs and complex workflows for our data tests (like running dbt models on a merge) has become tricky.
* **The "self-serve" dream had limits.** I hoped more team members would tweak their own pipelines, but the learning curve for anything beyond the basics meant it usually fell back to our two lead engineers.

**Benchmark for context:**
For a standard backend service build+test cycle (Python/pytest), we average about 4.5 minutes per pipeline run. Our data pipeline job (which runs dbt tests and a slimmed-down suite on a staging schema) takes about 7 minutes. We run roughly 300-400 builds per month.

My big question for the community, especially those at a similar size: **For those who moved on from CircleCI, what did you switch to and why?** Was it primarily cost, config management, or something else? I'm especially curious about experiences integrating with dbt Cloud or other data tools.



   
Quote