A list of questions and topics to cover on your next kick-off + best practices on some of them.

I expect this list to grow over time.

Onboarding

TopicMy suggestion
Will I have onboarding process?Yes, please! I mean a fairly quick meeting (1 hour?), during which I expect mostly you to introduce the project to me, and as my part, answer on the question here.
What are your expectations for my work?
  • First, to do no harm. Ask for extensive code review for every early task. Deliver tests.
  • Share your expertise. Learn the process, stick to it, then suggest improvements
Who to talk to?Typical cases to cover:
  • Stuck on a technical problem
  • Missing permission for a tool
  • Planned vacation/day off
Is there a diagram of the project’s internals (architecture, infrastructure, dataflow)?
  • I never expect one, but an old legend says they exist
  • I don’t consider it useful to dig deep into it on day 1, only take a look. But I do consider it useful later on when I know more about the project.

Tools

TopicMy suggestion
What tools do we use?Typical tools:
  • Slack
  • Mail
  • GitHub/Bitbucket/GitLab
  • Trello
  • Jira
  • Confluence/Wiki
  • Invision
  • AWS/Heroku
  • CI
What accounts do I need?
  • Probably all mentioned above, if not, let me know
  • Another typical case: test account for test/staging/production server
  • If possible, let’s make it all work right away, in the spirit of 2-Minute Rule from GTD
How to log to them tools?
Sometimes there’s only one right way – either via email, or Google (or other authority)
Where (which tools) do you want me to add my avatar?
Do we use a password manager?

  • I nver expect one, but an old legend says they exist
  • I don’t consider it useful to dig deep into it on day 1, only take a look. But I do consider it useful later on, when I know more about the project.

First task

TopicMy suggestion
How quickly do you expect me to physically contribute? In my book, it’s important to:
  • make new teammate up to speed ASAP. Ideally: first day – first commit
  • help them proactively in order to achieve previous goal
  • at the same time, not to overwhelm them with the amount of information
Do you have a specific task for me to start?

What is the minimal set of runtimes/versions to start working? These are extremely useful and extremely often neglected pieces of information. I believe they should be stored in README and updated every time they change (note that we probably talking 1 minute time!)

Codebase

TopicMy suggestion
Which designs patterns do you use in your code?I will read more about them if I’m not familiar
What OS are
used by developers?
I work on Mac
How to run tests?

How to build the project?

Test

TopicMy suggestion
Do you write tests?I come from Ruby community, I do a lot. I would suggest at least starting building a solid test base
What is your approach to automated testing?
What is your approach to manual testing?

In the current codebase, should all tests pass? It’s ok if not, but please let me know that
What are your short-term plans in terms of testing?
How do you imagine perfect testing for the project?

Process

TopicMy suggestion
How do you typically work?Show me in a pair programming session
How many other devs are in the project?
What meetings do we have?

Do we have a style guide?If it’s outdated, it tells something.
What’s the Definition of Ready (if exists)?API ready
design ready
design approved
understood requirements
What’s the Definition of Done (if exists)?code delivered
tests written
tested manually
tested by external QA/business
documentation updated
README updated
Can I close Slack while deep working?Yes, please. I will respond to code review requests regularly, but in proper time.

Development

TopicMy suggestion
Do we make code reviews?
How do you treat code review?Let’s define the goal of code review. Catch small things like typos? Discuss the code and architecutre? Question each other constantly?
Are you open to idea reviews?Please be. Here is elaboration.
Do you follow any git flow?

Design

TopicMy suggestion
Do we have designers on the team?
Will you provide designs?Let’s define the goal of code review. Catch small things like typos? Discuss the code and architecutre? Question each other constantly?
Will you provide designs in a tool that allows checking the style details (font size, padding) Please do; otherwise, the development is a pain
Will you provide designs for both mobile and desktop?
Can I change something according to my best knowledge?
Can I question your design?
Should I be every-single-pixel accurate with the design?

Management

TopicMy suggestion
How to log work time? in Jira or another tool (in some Excel :O)?
Per issue or in one collective issue?