How Fanatics gets ready for March Madness
Wednesday, March 29, 2017
Richard Harris |
Continuous Integration solution by CricleCI Enterprises to be used by Fanatics for March Madness.
When a team makes the playoffs, signs a player, or wins it all, Fanatics, a sports apparel company, wants to be first with the gear fans want. In order to maintain speed in the cutthroat world of e-commerce, the tools that Fanatics needs to use must be just as fast, reliable, and flexible as the current market trends.
That's why Fanatics chose CircleCI Enterprise as their continuous integration solution due to ease of deployment, ease of use, and the level of support and documentation available for the product to be deployed securely behind their firewall.
Fanatics previously used Jenkins as their CI tool, but it created big issues across the organization. During release weeks it was at least one person’s full-time job just to manage Jenkins. During the rest of the month, Jenkins would frequently go down or would be using too many resources, and so the day-to-day maintenance oversight to keep it running was very high.
Like all e-commerce companies, the 6 weeks between Thanksgiving and Christmas are the most critical revenue period of the year. Waiting even 10 minutes for a build in late November has a huge cost on Fanatics’ bottom line - and Jenkins could not keep up.
Beyond the operational cost, developers had no flexibility in their ability to configure builds to work the way they needed, and there also wasn’t a way for the team to see versioning of changes. One day, their git configuration stopped syncing, and the team had no way to see why it wasn’t working, or what the issues were.
The final straw for Jenkins came when a Jenkins job was accidentally deleted for Fanatics’ legacy monolith app. When the job started running again, it started to rebuild over 10,000 builds it had done in the past. For Fanatics, it was time to look for a new CI tool.
Fanatics had a shortlist of criteria for their next CI solution. Beyond the need for an on-premise solution, they knew they wanted more developer freedom and empowerment, as well as a tool that was self-service enough to free up time for their DevOps team. Other tools on the market were either too DIY, or didn’t have the features needed for a business of Fanatics’ size and velocity. With that list of requirements in mind, CircleCI was "an easy choice", and Fanatics was able to get set up and running with with their new provider in no time. In fact, using the new system was so straightforward for the team at Fanatics that it was surprising for some developers who thought the pain of Jenkins was simply the cost of doing business.
“To be honest, CircleCI confused a lot of people initially,” said Johnny Sheeley, Senior Engineering Manager at Fanatics. “Our team wasn’t used to have a product that just worked. Our developers were surprised that there was a solution that allowed them to add what they needed to run their builds, and that they didn’t need anyone to manually configure something for them.”
On Jenkins, each job took as much as 15 minutes, and stacking builds meant that at peak times developers would wait hours. On CircleCI, it takes as little as 3 minutes to run a build. With CircleCI, the ability to have independent builds in parallel saves a lot of developer time, and ultimately, money.
“On CircleCI, when our builds take 7 minutes, it’s because the things we’ve chosen make it take 7 minutes. CircleCI just automatically handles scaling and parallelization. On Jenkins, a 7 minute build could take over an hour by being enqueued. Using containers for each build means everything runs as quickly as possible.”
On the operations side, Fanatics no longer has 5 people worried about Jenkins and spending at least part of their day on it. That team has moved on to other, more strategic infrastructure projects. “The number of people who have come up to me and said, ‘I’ve never realized builds could be so easy,’ is huge,” said Johnny.
Read more: https://circleci.com
That's why Fanatics chose CircleCI Enterprise as their continuous integration solution due to ease of deployment, ease of use, and the level of support and documentation available for the product to be deployed securely behind their firewall.
Fanatics previously used Jenkins as their CI tool, but it created big issues across the organization. During release weeks it was at least one person’s full-time job just to manage Jenkins. During the rest of the month, Jenkins would frequently go down or would be using too many resources, and so the day-to-day maintenance oversight to keep it running was very high.
Like all e-commerce companies, the 6 weeks between Thanksgiving and Christmas are the most critical revenue period of the year. Waiting even 10 minutes for a build in late November has a huge cost on Fanatics’ bottom line - and Jenkins could not keep up.
Beyond the operational cost, developers had no flexibility in their ability to configure builds to work the way they needed, and there also wasn’t a way for the team to see versioning of changes. One day, their git configuration stopped syncing, and the team had no way to see why it wasn’t working, or what the issues were.
Some Backstory
The final straw for Jenkins came when a Jenkins job was accidentally deleted for Fanatics’ legacy monolith app. When the job started running again, it started to rebuild over 10,000 builds it had done in the past. For Fanatics, it was time to look for a new CI tool.
Fanatics had a shortlist of criteria for their next CI solution. Beyond the need for an on-premise solution, they knew they wanted more developer freedom and empowerment, as well as a tool that was self-service enough to free up time for their DevOps team. Other tools on the market were either too DIY, or didn’t have the features needed for a business of Fanatics’ size and velocity. With that list of requirements in mind, CircleCI was "an easy choice", and Fanatics was able to get set up and running with with their new provider in no time. In fact, using the new system was so straightforward for the team at Fanatics that it was surprising for some developers who thought the pain of Jenkins was simply the cost of doing business.
“To be honest, CircleCI confused a lot of people initially,” said Johnny Sheeley, Senior Engineering Manager at Fanatics. “Our team wasn’t used to have a product that just worked. Our developers were surprised that there was a solution that allowed them to add what they needed to run their builds, and that they didn’t need anyone to manually configure something for them.”
On Jenkins, each job took as much as 15 minutes, and stacking builds meant that at peak times developers would wait hours. On CircleCI, it takes as little as 3 minutes to run a build. With CircleCI, the ability to have independent builds in parallel saves a lot of developer time, and ultimately, money.
“On CircleCI, when our builds take 7 minutes, it’s because the things we’ve chosen make it take 7 minutes. CircleCI just automatically handles scaling and parallelization. On Jenkins, a 7 minute build could take over an hour by being enqueued. Using containers for each build means everything runs as quickly as possible.”
On the operations side, Fanatics no longer has 5 people worried about Jenkins and spending at least part of their day on it. That team has moved on to other, more strategic infrastructure projects. “The number of people who have come up to me and said, ‘I’ve never realized builds could be so easy,’ is huge,” said Johnny.
Read more: https://circleci.com
Become a subscriber of App Developer Magazine for just $5.99 a month and take advantage of all these perks.
MEMBERS GET ACCESS TO
- - Exclusive content from leaders in the industry
- - Q&A articles from industry leaders
- - Tips and tricks from the most successful developers weekly
- - Monthly issues, including all 90+ back-issues since 2012
- - Event discounts and early-bird signups
- - Gain insight from top achievers in the app store
- - Learn what tools to use, what SDK's to use, and more
Subscribe here