Sneak peak in the sausage factory
Thierry Delprat
tdelprat@nuxeo.com
https://github.com/tiry/
People behind the code
the Nuxeo Engineering Team handles
get feedback from customers
efficient support for
customer developers
always up-to-date with the platform
Experienced and passionate developers
they want to do quality code
they will complain if something reduces quality
Expectations are high
Best practices to ensure QA and maintainability
Coding rules, Issues Management, CI, Code review
Doing bad code has direct consequences
Other developers get angry
Support duty becomes a burden
they defend the QA proces
Developers work hard to learn and adapt or they leave quickly
in average developers are with us for 5+ years
Keep growing expertise
our 8 top experts are with us for 10+ years
focus on complex technical tasks
Kanban style or Scrum board (Jira)
Principles and Rules
Nuxeo Core Developer Guide is public
This guide includes
guidelines for using all the tools
Maven, Git, Npm, Bower ...
coding rules
guidelines for avoiding security issues
Code analysis
For now the most efficient remains Code review by peers
we have a lot of experienced developers
a lot of them review commits and raise hand when something is wrong
Releases cycle, Feature branches, HotFixes ...
Release a new FastTrack every 2 to 3 months
Release a new FastTrack every 2 to 3 months
Give early access to new features for ongoing projects
4 to 5 FastTrack releases per year
Release LTS once a year
LTS Long Term Support
LTS Maintenance Branch
New Features are developed
in isolated "feature branch"
we can work on several features at the same time without any interactions
CI does continuous testing of the branch
detect issues early
when ready changes are integrated in a
Pull Request
Pull Request is reviewed by peers
when changes are accepted
the new feature is merged
feature branch
is automatically deleted
Fixes are done in a branch too
Fixes benefit from CI Services too
including PR & Review
Fixes may be back-ported to LTS
(Cherry pick)
Backported-Fixes are tested
Backported-Fixes
are reviewed
Backported-Fixes
are reviewed
Backported-Fixes
eventually become
Hot Fixes packages
Released every 2 to 4 weeks for each of the 3 LTS
34 HotFixes released in 2015