You’ve put together a software team. How might you invest in it?
We offer both public and in-house workshops that will improve your team’s performance as both individuals and as a group.
A small selection is below; please contact us at [email protected] to talk about your team development.
- Real World Refactoring in Ruby on Rails
- Interviewer Skills for Engineers and Hiring Managers
- Effective Code Reviews
- Better Coding Through Team Values
Looking for more targeted help? We do that too!
Many software problems have been generalized as patterns. Some of these are named and documented, some are treated as well-known common practice, and some are shared organically from one person to another. Familiarity with a language or framework’s patterns allows a software developer to apply well known solutions to problems, which means they’re able to bring more value to the customer sooner.
Effective Code Reviews
Code reviews can improve your codebase and improve all participants’ technical skills. But sometimes it feels like neither of those is happening. There are a few common code review traps that developers can find themselves in. Sometimes reviews get rushed through to production, and while no major bugs ensue, longterm architectural constraints are unintentionally introduced. Sometimes reviews become a battleground between stylistic preferences while a team wrestles with what they value as individuals and as a group. And sometimes reviews are blocked for reasons that aren’t as important as delivering value to the customer sooner.
Is your code review process helping you, or holding you back? Are features not shipping because of churn in your process? Are bugs or maintenance costs slipping in that could have been caught in code review?
In this workshop, we work with your team to identify and understand what most holds them back, and coach the team to make code review into a process that helps rather than hinders. After this workshop, your team will have learned
- How much and what kind of feedback is important to give
- How to deliver actionable, specific, and kind comments
- How to identify differences when individuals hold different values
- How to resolve differences in individuals’ values
- When it would be valuable to block a PR from being merged
Better Coding Through Team Values
How much time does your team spend on technical disagreements?
How long do change requests get bogged down for when something not covered by the existing styleguide is causing the team to delay the merge while they figure out how to achieve consensus so they can update the styleguide?
How much productivity gets lost when one teammate tries to accommodate another, only to learn later that what’s good for one person isn’t best for the other?
What if there were some values your team could agree on, and use as a standard to resolve all these differences? What if when new differences arise, they could create new values that would resolve related differences in the future?
This workshop helps your team explore who they are as individuals, and how that builds into who they are as a team, and ultimately how that colors the technical decisions they make. At the end of the workshop, your developers will be better equipped to work more smoothly as a group. So the next time someone wants to introduce a little Haskell into the codebase, your team will have the answer for what they want to do about it and why.
Drop us a line to learn how we can help your company: [email protected] (or use this form)