Unity Technologies

ABOUT:

Unity Technologies is the creator of a flexible and high-performance end-to-end development platform used to create rich interactive 2D, 3D, VR and AR experiences. Unity's powerful graphics engine and full-featured editor serve as the foundation to develop beautiful games or apps and easily bring them to multiple platforms: mobile devices, home entertainment systems, personal computers, and embedded systems.

INDUSTRY:

Gaming

COUNTRY:

US

FEATURED IN:

Partnership with STX Next:

since October 2017 (9 months)

Project:

Katana

Due to their large scale of operations and specific needs, Unity Technologies decided to create in-house tools for software development. Unity Technologies asked STX Next for assistance in maintaining and steadily improving one such tool called Katana. It is a Continuous Integration tool based on BuildBot.

STX NEXT DELIVERED

Back-end Development

Backend
Development

Frontend Development

Continous
Integration

Continuos Integration

Project
Takeover

Continuos Integration

DevOps
 

TECH STACK

Python logo

Python

Twisted logo

Twisted

jQuery logo

jQuery

Karma logo

Karma

MySQL logo

MySQL

Docker logo

Docker

MariaDB logo

MariaDB

Slack logo

Slack

...and Grunt, Jinja2, Handlebars, Jasmine, Jira, Github, Vidyocloud, LogZ, SCSS, Bootstrap, SQLAlchemy

Challenge:

Katana was created to meet the demand of more than 10,000 builds per day. With its scale, Katana is crucial for Unity’s daily operations, as any downtime would affect hundreds of Unity’s developers. Challenges included resolving memory leaks, dealing with race conditions and adding new features to very sensitive system.

Solution:

Katana is a fork of BuildBot - a Continuous Integration tool written in Python using the Twisted framework. With one master server, Katana is able to use an unlimited number of slave machines to perform builds.

 

TESTIMONIALS

Author

Although Katana emerged as a fork from the open source Buildbot, it is nothing like its parent anymore. Now there are over 10,000 tasks performed on the Katana production servers daily. Unity engineers use Katana to develop their game engine, so every new release must be accurately written and perfectly tested. Our current technical challenge is expanding Katana without destabilizing it.

— Kamil Mowinski, Full Stack Developer @ STX Next

Request our Introduction Pack

which includes our Full Portfolio