Tips are Free

Just some things I've noticed over the years that help get things done during the day. Most of these are common sense, or so you'd think, but I still see these challenges at some places.


  • Keep your user profile updated.

  • Set channel topic and description.

  • Pin important posts.

  • Have a quick audio chat instead of DM.

  • Don't do everything in Slack.

  • Message yourself to save notes on anything.

  • Search will search all of Slack space, it's useful for finding past messages.


  • Keep titles short & useful - they show up in the default sprint boards.

  • Fill in the description with relevant information.

  • Link realted issues.

  • Integrate your CM (Git) process.

  • Don't overload a JIRA issue to fix multiple things.

  • Use built-in JIRA reports if at all possible.


  • All employees should fill out their user profile: title, dept, what you currently do, contact information and photo if appropriate.

  • Information is worthless if it's out-of-date. Delete or archive your old pages and projects.

  • Keep Confluence pages relevant.

  • Project landing pages should be informative and useful.


  • Clear the path for your devs and let them code.

  • Provide the right environment for your team.

  • Learn the tools that your team uses. Don't ask for a spreadsheet when a JIRA report will do.

  • Encourage code ownership.

  • Hire a devops position if you have more than 5 team members and maintain an active CI system.

  • Let us fix the tech debt. Please.


  • Ensure the developers have quiet working conditions with few distractions.

  • Have plenty of breakout rooms available for side conversations throughout the day.

  • Some devs work well in open offices, some don't. Try to accomodate both types.

  • Treat your employees as good as your contractors. When new equipment is being handed out, make sure the employees get it first.

Working with Developers

  • Keep things logical and we'll (usually) understand.

  • Train your developers regularly. All of them. You need them to stay sharp and up-to-date.

  • Give them what they need without putting them on a pedistal.

  • Do not disturb a dev that is concentrating. Are they wearing headphones? Please come back later.


  • Git is very important. Train your devs on git. Then train them some more.

  • Use gitflow.

  • Use pull requests (PR) to ensure high quality code.

  • If feasible, PR changes and approvals should go through a senior team member to settle disputes and ensure that only high quality code is merged.

  • If PRs become a sensitive or hot topic, do them interactively or over Zoom.

  • To avoid "rubber stamping" PR approvers, try this: devs should only assign one person to their PR, and that person will assign the second reviewer.


  • Don't adopt the new version right away, update your CI first

  • Turn on spell checker.

  • Learn the tricks from each new version.

  • Don't use protocols for everything.

  • Don't use subclassing for everything.

  • Don't use Combine for everything.

  • Use a sensible amount of unit tests.

  • Automate your CI pipeline through to QA for bug fixes and verification testing. I've seen it done, and it's beautiful.


  • No Laptops! No phones as well if that's an issue.

  • Pay attention.

  • Agenda, please. It's not that hard.

  • Start meetings on time, or at most, 1 minute late.

  • End meetings 5 minutes ahead of time.

  • Stay on topic.

  • Remind participants of the time remaining.

  • Send a follow-up email, or update the original calendar invite with any action items or agenda updates.

  • Send an Outlook "To Do" for each action item, or use whatever tool fits (Confluence, etc).


  • You cannot expect to ship quality software without proper QA testing of said software.

  • Test your software. Then test it some more.

  • Make QA part of your schedule.

  • Consider embedding a QA resource into each product development team for early testing.