A starting point for Originate engineers, product managers, and testers
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.circleci Fix hack Mar 30, 2018
android Verify correctness of all links via Text-Runner (#79) Mar 30, 2018
editors VIM guide Oct 9, 2017
go Verify correctness of all links via Text-Runner (#79) Mar 30, 2018
haskell Fix links Jul 16, 2017
ios Fix broken link to Swift style guide (#16) Apr 25, 2018
javascript
practices MH update wording around branch formatting (#54) Oct 5, 2016
product
ruby Update guide contents via organization, README modifications and new … Jul 26, 2016
scala Verify correctness of all links via Text-Runner (#79) Mar 30, 2018
security Update README.md Aug 12, 2016
.gitignore Verify correctness of all links via Text-Runner (#79) Mar 30, 2018
README.md Verify correctness of all links via Text-Runner (#79) Mar 30, 2018
cucumber.md Merge branch 'master' of github.com:Originate/guide Feb 7, 2018

README.md

Originate Guides

CircleCI

This guide is the starting point for Originate engineers, product managers, and testers. It gives an overview of our tech stack and best practices around engineering related topics.

Engineering Process Practices

Technology Stack Guides

Mobile:

  • Android and iOS for fully native experiences with top performance
  • React Native for cost-effective hybrid cross-platform solutions that aren't performance sensitive

Backend:

  • Golang for Ops and CLI tools, as well as network services and APIs
  • Node.JS using established languages like CoffeeScript, ES6, or TypeScript for small IO-heavy services with little compute requirements and when using only one language for both frontend and backend has advantages.
  • Scala for big code bases, complex business logic, large-scale data processing, or anything on top of the JVM/Apache ecosystem

Frontend:

  • React for rich web UIs
  • WebPack for compiling front-end assets

Devops:

  • Ansible for configuration management
  • Docker for packaging software into containers
  • Packer for creating machine and container images
  • Terraform for infrastructure-as-code

Others:

  • Haskell
  • LiveScript for internal projects based on Node.JS
  • Python for machine learning
  • Ruby on Rails for rapid prototyping and small to mid-sized monolithic projects without much traffic

Software Practices