Continuous integration is increasingly becoming the method of choice among software developers, in large part because of speed and accuracy in which code can be deployed. As Twentyseven Global consistently looks to cutting-edge technologies that have the ability to streamline processes and deliver better solutions for our clients, adopting continuous integration into our methodology was a strategic decision that coincided with fully embracing Agile. Matt Henley, vice president of client service in Kansas City, shared how CI benefits the software development process.
Why is 27 Global implementing CI?
“It’s all about speed and accuracy, and fully embracing Agile. The key benefit is the visibility that CI provides to the daily “sprint” process. Developers know early on when there are issues with the code, and that early detection leads to greater efficiency. Beyond just the development staff, CI also allows project managers and product owners to gain better insight into day-to-day progress of the development teams, and resolve problems earlier on in the project life cycle.”
How is CI deployed?
“Typically, a separate build server is utilized to manage the CI process. Twentyseven Global hosts our own build servers in a cloud environment, but we can also integrate with our client’s CI environment if and when it is necessary. As CI/CD (continuous deployment) and DevOps practices evolve quickly, the software architects at Twentyseven Global are constantly evaluating various products so our projects stay leading-edge. Currently, our go-to CI tool is Jenkins, although we also have experience using Codeship, TFS Build Service and TeamCity. In any case, we like to integrate these directly with Slack for team notifications, and utilize cloud infrastructure like AWS and Azure in order to reap the full benefits of CI/CD.”
What are the success factors for using CI?
“There are two things that stand out for Twentyseven Global. First, there is a learning curve to setting up a CI process. It may be difficult for a team that is not experienced to budget the time needed at the beginning of the project to correctly establish the CI process. That’s why Twentyseven Global has invested in creating boilerplate CI/CD processes that we can quickly ramp projects with. Second, the entire team needs to embrace CI, as it will drive the agile sprint cycle in many ways. It starts with the developers who must check on the code at the identified intervals, which could be earlier than they are used to in a non-CI environment. Quality control and product owners must also adopt CI, as it will drive their daily sprint activities. Once these hurdles are overcome, our experience with CI has resulted in improved accuracy and communication.”