CI Keeps Us Agile

CI keeps us Agile

CI Keeps Us Agile

CI keeps us Agile

Like many companies, Harmelin Media had to rapidly adapt to changing work environments during the pandemic. Gone in an instant were the organic in-office encounters, impromptu collaboration sessions, casual check-ins, and the collective grounding of what’s going on, what’s next, and who needs help. While video conferencing and official meetings used to be complementary events to our day-to-day operations, the pandemic forced them to become the foundation of our communication. 

But we quickly transformed. 

We transformed beyond the transactional exchange of information in meetings and the call-and-response of video conferencing. We sought out opportunities to reinvent our process, communication, and collaboration to keep each other engaged, on-task, and on-target. We looked for inspiration in different businesses and business models. We considered alternative tools and reorganizing staff. At each turn, we found something useful, and we adapted it for our needs.  

One of the most fruitful learnings came not from the outside, but from within – from our internal Software Development team and a process they use called Continuous Integration and Code Review.  

Atlassian – a software company that develops products for software developers – defines Continuous Integration (CI) as automating the integration of code changes from multiple authors into a single software project. At Harmelin, our Software Development team uses CI every day to build and test solutions for our clients and our business. 

Considered an industry standard best-practice, CI enables large teams to collaborate on complex problems with ease. Automatically running tests for each code change helps catch and isolate bugs before they impact end users. The practice is so widely adopted that companies like GitHub (Microsoft) and GitLab feature CI as a cornerstone of their product offerings. 

In practice, CI at Harmelin happens mostly behind the scenes. Engineers focus their attention on solving the problem at hand, writing Python and JavaScript code as needed. Once ready, the code change is automatically picked up by the CI which handles running the tests. We have found CI to be extremely effective at helping us catch defects or bugs earlier in the development process. We have also adopted a practice of Continuous Deployment (CD) by which approved code changes are automatically built and released to remote web servers. Adopting CD has allowed our engineers to spend more time solving problems and less time manually deploying code changes. 

Harmelin’s Dev Team also practices team Code Review, meetings where we discuss and inspect code changes in detail. Modern Code Review (MCR) is a well-studied software engineering practice used throughout the software industry and beyond. MCR is a terrific way to share knowledge around the team and to discuss alternative approaches. It can also be an opportunity to brainstorm how the specific code change might impact users or data downstream. 

In Code Review, each engineer shares Pull Requests with the team that they consider ‘Ready to Review.’ They briefly describe why the code is being changed (the underlying business need) and how they went about implementing a solution. We try to inspect every line of code changed and think critically about how it could impact other solutions that we’ve deployed. 

Coupled with CI and CD, Code Review enables us as a team to ensure high-quality work while also moving extremely fast. That speed tends to come in handy, especially when operating in a space dominated by today’s tech giants. Our advertising vendors and partners such as Google and Meta routinely make changes to their services and their reporting APIs. The Dev Team stays ready to react to these changes and develop and deploy fixes and updates as fast as possible. 

While these processes have been utilized by our Software Development team for years, we applied them more broadly to our entire organization during the pandemic. Conceptually, CI/CD and Code Review fulfill the vacant space of organic interaction, empower agility, and return formal meetings and video conferencing back to simple, complementary events. The CI, CD and Code Review concepts have become a critical part of our new approach to project management and communication.  

Ironically, the method for implementing these principles and practices into our media operations has come to life in our proprietary project management software – a software that our development team built from the ground up.  

 

For more information contact us.