I was reading this post in CEPro this morning about the AudioVisions software centric business process. Based on what I read, they have spent many years creating custom software that links all of their internal business processes. To me this does not make any sense. First of all, any company needs to focus on the business at hand. How can any company expect to be good at and devote enough resources to their core business AND software development, and why?
Based on the article, it looks like most of what the AudioVisions software does is material, project, and labor tracking. I am sure that AudioVisions are not the only company that builds their own software but TigerPaw Software builds award winning software that integrates all of these (and more) functions and are on version 10. For the past 20 years all they have done is build this type of software.
Also, I know these guys, they are a “real” software company. They have a development process and methodology, documentation, training, third party integration, and technical support. Not to mention that the CTO, James Foxall, has written numerous books on software development. With a company and a product like this, why would you attempt to do it yourself?
After 10+ years I have a good idea of what it takes to build great software and a great software company. The myth of a single programmer hammering out perfect code in the dark is just that, a myth. Any software development team needs an architect, developers, database experts, UI experts, QA people and general programmers. I just did the D-Tools org chart and we have 12 people under our CTO, Corey Krehel, and we feel that we are understaffed in some areas.
I believe that in order to succeed you need to focus on your core competencies. I guess it is possible to build a truck that perfectly suits your business style but in almost all cases you would be better off with a new Ford and just focus on the things that are important to your business.