Getting Out of the Office: Continuous Integration, Continuous Learning

The most typical place you will find a software developer on a normal day is at their desk, working hard and turning coffee into code. Its important to remember to get out of the office and add variety to our work environment. It brings new ideas, learnings and shared experiences that will ultimately bring a team closer. Last year we visited ng-europe and this year our conference of choice was ShipItCon.

If you build it, they will come. The famous quote from the 1989 film Field of Dreams was the slogan of choice for the inaugural year of ShipItCon, a non-profit community event for engineers involved in the building and deployment of software.

They built it, Qpercom came. An early start and a trip across the country saw us arrive in Dawson Street, South Dublin just shy of 8:00am, leaving us some time to wander into a nearby restaurant for some breakfast before entering the The Mansion House for the conference, which kicked off at 8:30am.

There were three sessions throughout the day, each filled with talks on a variety of deployment related topics. Between each session there were welcomed coffee breaks, with time to network and visit the sponsored stands dotted around the room.

Every talk gave me a reason to open my notebook and jot down notes and ideas. The stand-out talk had to be The Looming Complexity Crisis by Eric Maxwell, Success Engineer at Chef Software. Eric told us the story of Jane, a developer with a great idea but struggles as she battles with the volume and complexity of decisions she has to make every day in order to make her idea a reality.

Habitat is an application automation framework that aims to solve crises like the one Jane finds herself in. It centers application configuration, management, and behaviour around the application itself, allowing it to be deployed and run on various infrastructure environments.

We are always looking to improve development practices at Qpercom. Currently, we are working towards adopting continuous integration into our daily practices. The first step in this process is containerizing our software using Docker, helping ensure applications deploy quickly, reliably, and consistently.

Continuous integration (CI) is a development practice that automates the deployment process which will increase the quality of our software and will allow us to develop and produce software more rapidly. Manual deployment is a laborious task, so automating it will give us more time to focus on what matters - quality, security and our users’ experience.