You’ve been asked to commission a new application for your business and you are deciding how you’re going to deliver what has been asked.
Should you be thinking about how to secure internal resource?
Should you be Googling for someone else to take the project on for you?
Or should you be considering a combination of the two?
It’s a difficult decision. Your reputation may depend on it, your department’s success might be resting on the decision and your organisation’s future may depend on you getting this right.
Questions to ask yourself:
If you have the staff and the skills to deal with this within the company, then you may be considering running the entire project in-house.
It may be that, whilst you do have the staff, they do not have the precise skills required for this project, because your internal development team may have a broader set of skills, in order to fulfil their role within the business (they may look after databases, applications, website(s) and a host of other pressing systems and developments, for instance).
Even in the latter case, you may want to make use of their foundation skills and improve on skills in discrete areas needed for your project.
A good example of this would be enhancing a development team’s capabilities in a selected development platform, in order to complete the project to a satisfactory degree.
In each case, you may feel that you have a greater deal of control, if the project is completed in house.
That thought-process is not always valid though. In some cases selecting a development resource outside of the company, might provide a greater deal of control and freedom.
If you select a third-party to develop your application, you are not bound by the skill sets you have in house.
You simply choose a partner that has the skills that you have deemed appropriate for the job (and avoid re-defining the job based on the abilities to hand).
In terms of resource availability, even if your internal workload is alright for now, what if your development team get pulled into other projects, or staff members leave the organisation and what if the project gets bigger than anticipated, or even completely unmanageable?
With a trusted partner for your development project, it is much easier to define costs and timescale and no need to worry about the prospect of having to hire additional staff at short-notice.
In most cases you will agree on service level agreement, a defined scope of work and agreed project timelines. You may be even lucky enough to settle on a pre-defined cost and timescale, before the project commences.
In achieving any of the above, you have an agreement which the partner must adhere to and therefore reducing the risk of going over budget or missing deadlines.
If chosen as a part of a rigorous selection process, a development partner should be the best in their field, for the elected development platform, whereas internal teams are likely to have a number of focus areas to support the business and thus have a broader, but shallower set of skills.
Using exclusively internal resources can understandably lead to a restriction on the conceived possibilities. Perhaps your team may succumb to ‘target-fixation’, focusing solely on the brief set-out and ‘not seeing the wood-for-the-trees’.
The right development provider will have experience of many different projects, in a variety of industries and may view things very differently, resulting in valuable ideas which might have not been considered otherwise. Your partners may even challenge some areas of the proposed functionality or project definition, or they may re-affirm your concepts, which should help you proceed with more conviction.
Whilst some organisations are flexible enough to explore the merits of outsourcing their development projects (and while some companies even insist on outsourcing as a business-model) it is understandable that in some organisations, there is an aversion to this approach.
However, it doesn’t necessarily have to be an ‘either/or’ decision.
Maybe you do have the staff and the skills available to you, but you don’t have the time. Perhaps the project demands would be too much of a drain on resources for you to ‘go it alone’.
Maybe you should consider working in collaboration with a development partner and there are various models for collaboration to consider.
You may wish to work with a partner in business logic and high-level application design. After all, you are the expert at what your company does and your partner are experts in how to interpret all of that that in a new business application.
Following this you are likely to want to work with your partner in the actual development and combine the expertise of their development and your development resources. ‘Two heads are better than one’ and exploring a development from different angles, experience and skill-sets can be very valuable.
You might be more inclined to engage with a partner to get the project started and build a foundation system, for your development team to build from there (having benefitted from some on-the-job training) in a ‘kick-start’ scheme.
It could be that you have commenced a project and encountered some difficulties, or just need a hand in applying the finishing touches.
Whichever path you choose, it is important that someone within your company is selected to act as project manager, to co-ordinate on the completion of milestones, tasks assigned to a partner company and management of internal resources.
It is also important to identify the people who will be responsible for the system once it is operational.
For any degree of in-house development:
For any degree of outsourcing:
For more help and guidance on any of the above, please don’t hesitate to get in touch with Explorer.
Author: Neil Baxter
Job Title: Oracle Account Manager
Bio: Neil has fulfilled a number of customer-facing roles in the technology industry, from Account Management to Solution Management. He has many years of experience in advising on bespoke solutions, having even been responsible for implementing and configuring timesheet, CRM, and project management software in his time. At DSP-Explorer, Neil is very focussed on presenting the commercial benefits of the solutions that our development team can provide, with particular emphasis on the Oracle Application Express (APEX) platform.