Engineering Values
We Value
Cross Training
We will seek to have more than one developer with working knowledge (code + business case/understanding of importance to organization) of supported apps. “Working knowledge” means the ability to fix an app with little friction.
Peer Review
We value collaboration in all its forms, especially pull requests.
Velocity vs. Ideal
Simple solutions, delivered today are often better than perfect solutions delivered tomorrow. “Quick fixes” are acceptable if they are documented and agreed upon by other developers.
Not Shaming or Blaming
We strive for a blameless culture with teachable moments.
- We understand that an existing solution may have been built under extenuating circumstances.
- We challenge ideas not people.
Documentation
We will write brief & useful documentation for fellow contributors. The documentation should focus on how to install, test, run, and deploy an app.
Acknowledge the Difficulty of Estimation
We recognize that it is hard to translate difficulty points to time and, therefore, can refuse to give time estimate.
Having Sufficient Time & Advance Notice
- We understand the importance of having sufficient time to do work and will communicate that to stakeholders.
- We seek to help stakeholders understand the importance of giving sufficient notice for work requests.
Careful Prioritization of Requests
We try to schedule work considering factors like difficulty, impact, and priorities communicated by management/stakeholders.