Engineering, Strategy, Tips & Insights

                               

Minimize the Parity between Environments

One of the common pitfalls with maintaining multiple environments is ensuring that the gaps between each environment doesn’t grow too large. The larger the gap, the more difficult it is to ensure a consistent experience.

To help combat this issue, we follow the Dev/prod parity guidelines offered by the twelve-factor app guide.

These gaps break down into three areas:

  • Time: It may take days, weeks, or even months before the development process is complete and code has been approved to be deployed to production.
  • Personnel: One group writes the codes, developers, the other group deploys it, ops engineers.
  • Tools: Local sandboxes may run using certain backend technologies like NGINX, MySQL, and OS X, while the production environment utilizes Apache, MySQL, and Linux.

The goal of a twelve-factor app is to keep the gap between development and production as small as possible. By expanding on the three areas above, this may manifest as follows:

  • Time: Minimize the time between writing code and deployment.
  • Personnel: Ensure that the developers responsible for writing the code are closely involved in the deployment and monitoring of it in production.
  • Tools: Utilize the same stack between development and production environments whenever possible.

 

Traditional Development Our Process
Time Between Deployments Weeks Hours
Resource Involvement Multiple people Same people
Dev vs Prod Environments Divergent Similar as possible

We’ve learned that by following these guidelines, we are able to streamline our development process, deliver a more optimal product, and maximize customer satisfaction.

We don’t want our clients to have to jump through hoops to get something done. Our job is to make the process easier and we truly take this objective to heart. We’d rather deliver something ahead of schedule instead of maximizing our billable hours by taking advantage of our clients.

We’d love to review our process in more detail and discuss how we can help you with your project. Reach out to us today to get the conversation started.

Leave a comment

Your email address will not be published. Required fields are marked *