Giving Guidance on Practices

Finding the sweet spot between consistency, innovation, and communication.

Leading a software development team often involves striking the right balance between providing strict guidance and granting your team the freedom to innovate. In this blog post, we’ll explore a strategy that helps you achieve this balance and create an environment where your team can thrive: building a curated set of best practices.

Identify Foundational Practices

Establishing non-negotiable coding standards and project management methodologies is crucial for your organization to function effectively. These foundational practices ensure that your team has a solid base to work from, facilitating collaboration and high-quality software production.

To make this identification stage more effective, involve your team. Host small group brainstorming sessions, and openly discuss the standards and methodologies as they’re being curated. This approach encourages your team to take ownership and feel in control, leading to greater commitment and adherence to these practices.

Keep in mind that it’s important not to be overly prescriptive. Simplicity is key, as you don’t want to overwhelm anyone or create unnecessary barriers for your team to navigate.

Create Clarity

After establishing foundational practices, highlight areas where you’re intentionally leaving room for your team to innovate or exercise their judgment. This clarity provides clear boundaries and encourages creative thinking within the framework you’ve set. Distinguish between foundational practices, essential for consistency, and common practices, which serve as helpful guidelines but can be adapted as needed. This distinction empowers your team to make decisions based on their expertise, fostering autonomy and promoting innovation.

Publish these practices as a living document, making it widely accessible to everyone on the team. Emphasize that the document isn’t sacred and is likely to change as the team learns and evolves. This approach encourages ongoing collaboration and improvement.

Drive Adoption

To fully realize the benefits of your foundational practices, it’s essential to drive their adoption across your team. Regularly engage with local leadership to revisit these practices, discussing their effectiveness and any necessary adjustments. This ensures consistent alignment with the established guidelines.

Additionally, focus on filling skill gaps and addressing misconceptions. By investing in your team’s growth and providing learning and development opportunities, you’ll empower them to make informed decisions and drive innovation within the boundaries of the foundational practices.

Tools

You don’t need fancy tools to accomplish this. Our workflow involves brainstorming sessions in Figma, followed by curating our findings into a version-controlled wiki. We published ours on GitHub. We base our apprenticeship learning path and onboarding documentation on that repository.

More fit-for-purpose tools, such as Promyze and PlusPlus, are being developed as people recognize the value of this exercise. Even if you don’t intend to use these tools, browsing their websites can provide inspiration for centralizing and driving adoption around best practices.

By following this approach, you’ll create an environment that nurtures a balance between consistency, innovation, and communication, setting your software development team up for long-term success.

← Back to Insights