Chris Saylor
cjsaylor
Recent Tech Decisions
50 points

Companies
Following

  • Rollbar

    cjsaylor Rockgolem


    Rollbar handles any unhandled exception, express route error, and any log entry of level warning or error. It notifies our slack ops channel and is integrated with github to allow us to create issues directly from reported errors.

  • DigitalOcean

    cjsaylor Rockgolem


    We use DigitalOcean to host our build tools (namely Drone.io) for a cheap CI and CD server.

    We'll be using this to host the server application during alpha phase.

  • waffle.io

    cjsaylor Rockgolem


    We use this to manage the feature/bug tickets across all our git repos.

  • Drone.io

    cjsaylor Rockgolem


    Drone acts as our CI service for testing our application. We also use it as a deployment server for building docker images for production once tests pass on the master branch. The docker image acts as a deployment artifact that Convox can use to deploy.

    Our client platform utilizes Electron which is also built and pushed to S3 for download.

  • Grunt

    cjsaylor Rockgolem


    We use it in development for the main application and is responsible for generating the Electron binary artifacts for the client application.

  • Convox

    cjsaylor Rockgolem


    Convox is our deployment arm of all backend application services into our AWS ECS cluster.

  • Electron

    cjsaylor Rockgolem


    Our application began as an HTML5 browser game, however we decided to leverage certain native parts of desktop applications by wrapping our client code into Electron. This also allowed us to not have to worry about compatibility across all the various browsers.

  • Docker Compose

    cjsaylor Rockgolem


    Since our production deployment makes use of the Convox platform, we use this to describe the containers to be deployed via Convox to AWS ECS.

    We also use this for our local dev environment (previously used vagrant with chef).

  • RabbitMQ

    cjsaylor Rockgolem


    Rabbit acts as our coordinator for all actions that happen during game time. All worker containers connect to rabbit in order to receive game events and emit their own events when applicable.

  • Slack

    cjsaylor Rockgolem


    All build, CI, and github notifications go to our dev channel. This also is where we discuss and share documents.

  • GitHub Pages

    cjsaylor Rockgolem


    Company static site and development blog.