GoCo cut their CI pipeline duration by 2x and reduced costs by 38% after switching from CircleCI to Semaphore

  • ⛔️️ Pipeline duration: 0:34:20
  • ⛔️ Costs: $250k / yr
  • ⛔️ Build pass rate: 21%
  • ⛔️ Support: limited
  • βœ… Pipeline duration: 0:16:23
  • βœ… Costs: $155k / yr (38% decrease)
  • βœ… Build pass rate: 49%
  • βœ… Support: Slack onboarding, migration & optimization support

Discover what Semaphore can do for your team πŸ§‘β€πŸ’»

Jason Wang, Co-founder and CTO of Goco.io shares his experience in switching to Semaphore from CircleCi.

In this video you’ll find the answers to these questions:

Why did you decide to switch to Semaphore from CircleCI?

We were on CircleCI for a number of years, and it served us, I would say, very well for the time period we had it. But as we continued scaling, some of the challenges were the limit on the number of parallel containers you could run at one time. As you might know, CircleCI limits you to only 50 parallel containers. We have a lot and lot of unit tests, and it actually takes a long time to run, and so the parallelization is very important for us. So that was one major factor, the limit on the number of parallelization you can do.

What were your main CI/CD goals before switching to Semaphore?

The price starts adding up quickly when you have a lot of tests and you have a lot of CPU minutes running in all those parallel containers. The price was a major factor. The third was support. CircleCI offered very basic support. They wouldn’t help us diagnose, help us reduce our spend, our costs, and make us more efficient. They really just help you when something would go wrong. So those were the main factors in terms of why we were looking for another solution. So with Semaphore, one of the nice things is there’s no limit to the number of parallelization that you can run, and so we were able to decrease our build times anywhere from 25% to 50% depending on the pipeline that we’re talking about. In addition, there were some cost savings as well. I believe we’re roughly 40% less cost at Semaphore than we were at CircleCI. So faster and less cost. It’s a double whammy. That was really nice to see. Just being able to both reduce cost and improve the build time, the speed, those were the two primary goals, and we were able to achieve both of those, so we were very happy with the results.

How was your onboarding experience with Semaphore?

Anytime you’re transitioning to a new CI platform, it’s always a little scary because it’s a lot of work and just a lot of risk for the team, their productivity. But we set up a separate Semaphore trial in the background while the team continued using our old CircleCI platform, and they set up a Slack channel. Semaphore set up a Slack channel for us. We had really great hands-on support. Their API documentation is actually really good. So we’re able to do most of it ourselves, but anytime we ran into an issue, their support was able to help us in real time. We could get answers in minutes just over Slack, and so that was really helpful. Once we got things running, they even helped us optimize and give us some suggestions on best practices, look at the data to tell us, “Maybe change the Dino type from one to another. Maybe try this thing to cache your assets.” So based on their feedback, we’re able to then further optimize, and the whole process took about four to six weeks to get fully optimized. So yeah, I would say it was a really great onboarding experience, and the support and service we got was top-notch.

How do you find the Semaphore customer support service?

Everything has been great. We’re still using the Slack support. So now that we’re fully launched, we don’t really have as many questions or issues. Things are working pretty well, but when we do, we get answers very fast, and so it’s been really good ongoing.

What would you advice to someone considering Semaphore CI?

I would say give it a shot. Semaphore can give you a quote, and you can see how much savings you can get. You can probably do some basic math to figure out how much faster your test can run with unlimited parallelization, and then read through the API documentation. Perhaps get a little test sandbox environment running to see how easy it is to use and get going. Those are the things that we did to get a lot of confidence around it. Once we did that, we’re definitely happy that we ended up making that decision and doing the move.

Industry

Software development

Headquarters

Texas, USA

Stack

React

Ruby on Rails

Postgresql

Redux

AWS

Redis

Vue.js

More customer stories

β€œSemaphore 2.0 allows us to build, tag, push, and run Docker images easily. This makes building a powerful pipeline where we can deploy to our Kubernetes cluster fairly easily and quickly.”

Senior Software Engineer

Read case study

β€œSemaphore allows us to build anywhere from two to twenty branches in parallel, each one in a threaded environment. We had thousands of tests that were running for a really long time and with Semaphore we got the build to run in under 20 minutes.”

QA Lead at 500px

Read case study

β€œWe were using Jenkins to build the old system, and it was hard to maintain and quite painful. We looked at other hosted CI services, but they were very unreliable. When we found Semaphore, we got our application up and running pretty quickly. We now use it for all projects.”

CTO at Simply Business

Read case study