Environment configuration for small teams
It comes up on almost every project, usually later than it should. Most advice about environment configuration assumes a team that does not exist at your size. Here is the version that does not.
Code gets read far more often than it gets written, and usually by someone with less context than the author had. It is worth deciding this deliberately rather than inheriting whatever the last person set up.
What to keep
Secrets belong in the environment, never in the repository. Small and consistent beats large and occasional here. If two people in the business would answer this differently, that gap is the actual problem.
What to drop
Process that exists to coordinate ten people is overhead when there are two of you. In practice this is a scheduling problem more than a technical one.
What good looks like
Document every variable a new developer needs. Small and consistent beats large and occasional here. If two people in the business would answer this differently, that gap is the actual problem.
What this looks like day to day
The question is rarely whether something can be built, but what it costs to keep running afterwards. Three things worth confirming about environment configuration before you move on:
- Someone can say what the current setup is without going to look
- Secrets belong in the environment, never in the repository — and you know whether that is true here
- There is a way to tell whether the last change to this helped
If you are not sure where your systems currently stand on this, it takes us about an hour to find out.