The Truth about Working with Independent Programmers
Many questions go through the heads of business executives, project managers, and sales people everyday when they are put in the position as to which direction they should go to satisfy their control system programming needs.
Outsourcing isn’t for everyone
There are many integrators who have never outsourced programming and do not believe that it is an effective solution for them. Whether they have a skilled in-house programmer or they prefer a dedicated resource for reasons of flexibility or cost, they are investing in a solution that works for their business. On the contrary, there are many others that either outsource control system programming as the demand arises or develop relationships to solely programming outsource as part of their business model.
If you are patient and disciplined and know how to effectively work with any other type of independent contractor, you can find a great deal of success and benefit in using independent programmers. Here are just a few of the reasons.
- Many independent programmers will provide a fixed cost for programming, which minimizes a major variable in a project, lowers risks, and could lead to increased profitability.
- Independent programmers can work with you and/or your customer to develop a functionality scope and ensure that the system design, equipment selection, and programming requirements will mesh well, which results in accurate pricing, efficient completion, and customer satisfaction.
- An added but sometimes unrealized benefit, which will enhance the outcome of your systems, is the variety of experiences that an independent programmer brings to a project, helping to avoid the mistakes and difficulties that others have made in the past.
Relationships yield productivity and savings
A relationship with an independent programmer can be paralleled to an association with your accountant, lawyer, or other business professional. Initially, there is an adjustment period as they learn your business and determine their role; however, once a trusting relationship is established, they become an integral resource for your business. Building or expanding this relationship is a natural progression and doing business together becomes easier and more productive as familiarity develops. An independent programmer that you work with on a regular basis will become a part of your team and augment your organization. In addition to satisfying your programming needs they will provide you confidence knowing that you have an added layer of support and someone to look out for your best interest on projects. As you work together longer, this relationship will pay greater dividends; projects will become more efficient, effective, and profitable.
Lowering the cost is a matter of time
Since independent programmers are typically small businesses deriving their mainstay income from programming, it is important that they are successful at what they do or else they won’t be around for long. Programmers need to cover their costs and be profitable to exist, so they need to charge a price that commensurate with the time that is required to devote to the project and work toward getting the project completed as efficiently as possible. As in other service businesses, time and knowledge are their marketable commodities.
The cost of programming is not simply the time that it takes to write a program, but instead all the time required to complete the programming project from beginning to end. This includes:
- Gathering information to define the functionality requirements
- Developing a functionality description
- Researching equipment and protocols
- Designing a user interface
- Writing code
- Testing and Debugging
- Onsite and Remote Support
Keeping the costs down is a function of efficiency, teamwork, and processes.
A significant variable that will enhance or detract from an independent programmer’s ability to be cost effective is the cooperation that they receive from the people with whom they work. Receiving accurate and complete information is a starting point for providing a suitable assessment of the project. It is also just as critical to have effective communication throughout the project process in order to streamline the information flow and optimize the time that is spent in all phases the project, as previously stated.
Independent Programming Companies can not survive without partnerships and acceptance from the audiovisual community. It is important that their message is on target and well received, that they effectively gear themselves to meet the needs of their customers, and that they listen to feedback. It is also important that integrators, consultants, end-users, and manufacturers understand who independent programmers are, how independent programming companies operate, and how to get the most out of a building a successful working relationship.
To be continued…
Remember the importance of establishing a relationship and Know Your Programmer. It will pay dividends.