Writing software is not easy.
Getting a large group of software developers to write quality software together is particularly challenging.
For this reason, many people have come up with ways to help groups of software engineers improve how they write software together.
- Architects provide a vision for the technical aspects of a software project. They may choose computer languages, design patterns, opportunities for reusable code, coding standards, and more.
- Process Innovators come up with ways of working together that may produce better results. I’m thinking of the people who created flow charts, UML diagrams, different language constructs, software methodologies (including Scrum, pair programming, Test Driven Development, etc.), and more.
Software Consultants can also be process innovators. They advise teams to try new or different ways of working together to achieve better results. Some consultants are brilliant and inspirational; others may be cranky and dogmatic.
I’ve worked with several good Software Consultants throughout my career.
Each time I’m introduced to a promising new approach, I tend to experiment with the ideas. I see which ones work for me. I get excited when something clicks.
At the same time, I’m aware that software consultants are there to make money for themselves. A bit of skepticism is useful. Are the ideas good for a day, a year, or most of a career?
When the ideas hold up over time, I’m grateful for having the opportunity to learn about them. When they don’t, I usually get something else from the experience.
Even mediocre software consultants can introduce us to interesting ideas.
Leave a Reply