see session slides http://kae76.github.io/onboardingprocess_presentation/
Make sure you have:
-
On boarding documentation
- Codebase location
- Install profile instructions
- Can drush site-install be used or GUI only
- Content generation scripts? Built into profile, bash or other method?
- Wiki location
- Design/theme styleguide
- Naming conventions for features, modules, themes
- Theming instructions
- Main theme to be used
- Preprocessor setup if exists (SASS/LESS, terminal, modules, local or server based)
- Custom module theming inside module or theme (location of template, CSS & JS)
-
Introduction session after giving them a brief of their role to read
-
Communication tools
- How does the team communicate
- Skype/irc/other?
-
Development procedures
- type of procedure
- Brief intro and/or links about procedure (agile, kanban, CI, deployment)
- Explanation of implementation of procedure
- Who to ask for help
- Source control management
- CI while always working on a single branch
- Ticket based branches per task: documented solution/execution
- Code review via Pull requests?
- Point of contact per category question
- Question for designs or styleguide implementation
- Functionality - UX issues
- Task allocation
- Admin/Finance queries
- Deployment/Build
- How to?
- How often?
- Updates on build changes (new functionality affecting current tasks)
- Ticket system
- Concise, one line titles
- Bullet point description
- Internal link to relevant tickets
- Commit linked comments
- Time based tickets/tasks - ability for dev to add time tracking
- Technical specification
- Modules used broken down into features they implement
- Modules present but not used and their role (development/staging...)
- type of procedure
-
Project Management
- Practises/Methodology
- Resources/intro to methodology: don't assume they know
- Implementation: format of scrum/standup (what's the difference)
-
Easy feedback solution needed
- Independent of project
Why these recommendation?
- Reduce lost time on setup
- Help communication frustrations & breakdowns
- increase productivity
- Minimal bug and defects carry through to client demos
- Learning and Mentoring process built-in
- Happy people = infinite loop of productivity!
Tackle your project like OSS software, on GitHub: you would always have the minimum:
- Installation instruction
- Usage
- Project owner
- Central, known, place for issues and discussions
- Online
- c.f. http://tomayko.com/writings/adopt-an-open-source-process-constraints