The purpose of the presentation is to explain what CI/CD is and what problems it can solve, also briefing on how to implement it, including a high-level demo. Use case for CI/CD will be presented based on the experience from speaker’s life during the beginning of her career, when confusion around different versions of the code and lack of good DevOps practices led not only to hours wasted on pointless application testing, decrease in productivity, but also - even though it is not easy to admit - to the conflict in developers’ team.
The talk is about accepting that “to err is human”, and learning how to agree on and implement processes which will minimize impact of these potential errors, such as implementing version control system, branching strategies, and finally, CI/CD pipelines. It is also about learning by doing and learning from scratch, as the IT project the speaker was working on back then was the first IT project of the economic team. This fact makes that journey unique: the DevOps toolbox described in the talk was an actual response for real challenge. Usually it is the other way around, i.e. developers encounter DevOps practices because they are already implemented in the company they work in, and there is no space to experiment what would happen if they were not in place. Therefore, this talk may serve as a sandbox to observe that. This helps to understand the need for DevOps toolbox, as well as appreciate it more. Last, but not least, there will be a technical component: demo of CI/CD pipeline (stack: Terraform, GitHub Actions, AWS) automatically creating branch-based environments to ensure seamless and safe deployments, separation of work in progress, as well as opportunity to test it easily. The demo will be high level and focus on functionalities and its benefits, not code per se, to adjust for audiences with different backgrounds. Audiences interested in more technical deep dive would be able to access the repository with a code afterwards.