The John Lewis Partnership Coding Principles

Software Engineering

This document serves as the current definition of the John Lewis Partnership’s coding practices. Use this as a foundation for writing good code. As and when you discover new stuff, submit a pull request to update this repo.

This document is not an exhaustive explanation of each principle, but intended to provide references for further, deeper reading.

Invitation to Contribute

If you’re involved in the software engineering process at JLP, then we want your input! The principles are maintained in a GitLab project jlp-engineering/coding-principles.

For correction of typos, fixing broken links, or anything similarly unlikely to raise any debate, please fork the project, make the change and raise a merge request.

For more significant adjustments to an existing principle, do the same, but perhaps anticipate some discussion on the merge request.

For suggestions of new principles, or fundamental challenges to existing ones, please start a conversation in #comm-engineering.

Contribute on Gitlab