Help your developers build/test/deploy code quick!
February 20, 2019

Help your developers build/test/deploy code quick!

John Grosjean | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Review Source

Overall Satisfaction with CircleCI

Our SaaS platform has gone to a CI/CD model, and CircleCI is a critical piece in automating the building, testing, and deployment of all non-production environments. Whenever a developer needs to test something, they can trigger a build and either recycle an older dev environment or launch a new dev environment that won't interfere with any other builds. This greatly accelerates the development process, and ensures the code won't have build errors or fail tests when it does get deployed to production.
  • Automated builds! This is really why you get CircleCI, to automate the build process. This makes building your application far more reliable and repeatable. It can also run tests and verify your application is working as expected.
  • Simple. Unlike Jenkins, Teamcity, or other platforms, CircleCI doesn't need a lot of setup. It's completely hosted, so there's no infrastructure to set up. The config file does take a bit to understand, but if you follow their example and start with something small and add to it, you can get it up and going quicker than it first looks.
  • Scales easily. Again, since it's all cloud-based, you don't have to manage or scale infrastructure. Simply subscribe to the number of containers you want, and scaling up just means buying more containers.
  • No static IPs. This could cause problems if you want to enable only CircleCI to access your environment. Much of the limitations for us were around this issue, since we're in such a regulated industry.
  • The search feature needs improvement. If you're doing a lot of builds, the history can go on for pages. We didn't find it suited our needs for audits/reports as you can't search by a particular developer who triggered a build, filter for only successful builds, etc.
  • Slightly limited customization, something like Jenkins is more flexible. CircleCI used to have a very defined build process, but now with the introduction of workflows, it's gotten a lot better. I think they hit the right balance between simplicity and flexibility though. If you need a lot of integrations or other things that they don't offer, Jenkins is probably better. CircleCI isn't intended for complex applications, it's really about keeping it simple so you can focus on code development.
  • Greatly increase the speed of code delivery. We no longer need to go through a long deployment process for every feature. Developers can spin up their dev environments at will, test new features, and verify their code is ready to ship in just minutes.
  • Reduced labor. Again, no more long, manual code deployments. And this means big savings in labor costs.
  • Code quality. Since CircleCI runs various tests after building, we know if a code change broke a feature immediately. It can be fixed before the feature is even scheduled for release to production.
Jenkins and Teamcity both have additional features that maybe you require, but they are also a lot more work to get set up and working. There's a much longer learning curve to getting these configured for a simple build. They're not hosted, so you have to maintain the infrastructure and scale yourself. They're both good products if you require more than CircleCI, but if not, skip the extra headache and go with something simple like CircleCI.
It's pretty snappy, even with using workflows with multiple steps and different docker images. I've seen builds take a long time if it's really involved, but from what I can tell, it's still at least on par if not faster than other build tools.
CircleCI is perfect for a CI/CD pipeline for an app using a standard build process. It'll take more work for a complex build process, but should still be up to the task unless you need a lot of integrations with other tools. If you have a big team and can spare someone to focus full time on just the CI/CD tools, maybe something like Jenkins is better, but if you're just looking to get your app built, tested, and delivered without a huge amount of effort, CircleCI is probably your preferred tool.