Software development involves a wide range of skills.  Some people are better at one thing,  other people people are better at other things.<p>I knew a guy who knew C++ pretty well and would write network optimization algorithms,  stuff that I don&#x27;t really do.  This guy unfortunately had a a temper when people didn&#x27;t agree with him and I would not let him around serious  OO (many C++ people are serious but not about OO),  distributed systems,  and UIs.