DevOps is a well established practice in many software teams by now. Yet the space is constantly evolving with new techniques and products entering the stage on a monthly basis. Sometimes it's difficult to keep track and decide which approaches are worth following and which ones will fade away again.
In this session I would like to take a look at the DevOps space through the eyes of a team of Python developers. Like many other teams, we use DevOps methods and tools to significantly accelerate and stabilize the development of our projects. Using Gitlab, Docker and dynamic environments on AWS ECS, we have built deployment pipelines that enable us to release code several times a day without fear of downtime or friction between code bases.
The talk also touches the concepts and ideas behind DevOps - the mantra of "you build it, you run it" and how it translates into concrete tools and techniques. For illustration I will showcase real-world examples taken from our production setup with a special focus on Python related tools and practices (like pipenv for dependency management, black and flake8 for linting, or mypy for type safety).
I will also discuss our development and deployment workflows - our own definitions of deployment stages and environments - to demonstrate how they enable a remotely working team to deliver software at high efficiency.
The talk finishes with an outlook on recent developments like GitOps and Serverless, which we are currently evaluating.
Affiliation: alcemy GmbH
After my CS degree, I started out in the industry as a humble web developer. I quickly discovered my passion for hardware, processes and automation, which led me to move towards an Ops direction. When the DevOps movement arrived on the scene, it was a revelation for me: finally we were starting to understand that Dev and Ops were never intended to be split. Today I work for the ML startup alcemy as one of the engineers overseeing the infrastructure and guiding the developers in becoming more efficient.