Sunday 25th October, 2015
2:00pm to 2:30pm
Why is developing software so hard? Why is it usually late and why is it so hard to get right? These questions don’t have a simple answer, but one important element is build infrastructure. Building, testing, and deploying software should be as automatic as possible. After all, why should humans do work that a computer can do better?
Giving your team the tools they need to be as productive as they can be and allowing them focus on the important problems is what Build & Infrastructure Engineering is all about. This talk will explain the value that having proper build infrastructure will add to your team and show you how to put the infrastructure and tools in place within a python-based organization.
Na’Tosha started working as the first Build & Infrastructure Developer at Unity Technologies in August of 2010. At that time, the company was still a start-up with 70 very eager employees making a game engine and development toolkit. In her time at Unity, she has developed and deployed two generations of a distributed build farm, transitioned a team to distributed version control and introduced a collaborative development process that involves continuous integration and a heavy reliance on automated testing. The company has since grown to over 350 employees and enjoys much more rapid release cycles, better collaboration between developers, and less stress and frustration for everyone involved, despite the fact that this game engine is now ported to, and actively being shipped for, approximately 20 different platforms.
The presentation is straightforward and will cover the following concepts as important elements of build infrastructure:
The important element here is that each of these topics leads into the next: one-click builds make build automation possible, which in turn makes continuous integration possible, which then allows for automated testing, which finally leads to automated deployment (either triggered by a human or completely automated deployment i.e, nightly builds). For each of these points the author will cover the following:
Throughout the presentation, references will be made to what has (and in some cases has not) worked well at Unity Technologies. This means that the evolution of build infrastructure at Unity Technologies will be referred to as a case study, but the focus of the talk is not company or product-specific.
After this talk, the audience will understand the benefits of proper build infrastructure in a development team as well as common consequences of not having it. They will also be provided with guidance and starting points to begin establishing Python-based infrastructure in their own teams or evaluating where existing infrastructure could be improved.
Engineering Tools Lead
Na'Tosha Bard is the Lead Build & Infrastructure Developer at Unity Technologies, an industry-leading company that develops a multi-platform game engine and content creation tool used millions of times every month by several hundred thousand developers around the world. She started as the company's first dedicated build engineer in 2010 and now leads a team of Build & Infrastructure Developers responsible for a wide range of tasks ensuring, among other things, the productivity of the development and quality assurance teams within Unity. She has been an avid Linux user for over 10 years and is a strong believer in open-source software. In her role as Lead Build & Infrastructure Developer at Unity Technologies, she makes heavy use of open-source solutions and has a history of contributing to various open-source software projects. She spends her spare time blogging and speaking about various technical topics related to software development, games, and gender issues in technology.
Sign in to add slides, notes or videos to this session