How to become a great software consultant
We believe that great software consultants are not just superior at tech - they also possess a combination of good communication skills and business understanding. Here are some steps you can take towards becoming a better software consultant:
1 Build your communication skills
Most of the things we do are not lone cowboy stuff. They are teamwork and include communication both with technical team members and non-technical stakeholders. Being able to communicate complex technical concepts in a way that even non-technical people can understand is important because it facilitates effective decision making and decreases the amount of misunderstandings that hinder project progress.
2 Become good at understanding business context
Building great software is always about tradeoffs. Scalability, time-to-market, existing infrastructure, cost effective architecture, performance - there are a huge amount of variables that are not technical per se but will determine what is the optimal way to proceed. Being able to listen to the customer carefully, researching their industry and understanding their business goals contribute greatly to your ability to advise your customer in software matters.
3 Develop your technical skills
Technical understanding and coding skills are your core competence. Having well-founded opinions about software development principles and best practices give you a solid base to work from. Furthermore, getting familiar with multiple languages, frameworks and domains gives you a nuanced perspective on how to craft good software. Especially in the beginning of your career, it makes sense to do a lot of different things. At some point you’ll find that some things interest you more than others, and then it is good to go deep. But if you immediately go deep, you might end up not having the wide perspective that is very relevant for a consultant that can work for various clients in various domains.
Becoming great requires time and deliberate effort. The famous 10 000 hours rule might be controversial, but there’s definitely a seed of truth there. It helps to be passionate about what you’re doing and fortunately software development is such a big and diverse field that most of you will find projects, domains and communities that match your skills and interests.