What do you do if there are internal processes you want automated with software, but don’t have spare time on your development team? Do you have a ColdFusion application that needs to be developed, but you’ve had bad experiences with projects in the past?
Scope creep, incompetent developers, poor planning, and poor testing are just some of the things that can ruin an otherwise great development experience.
This situation reminds me of a story of a friend of mine. She is a CIO of a company in New York City. Let’s call her Alice. She thought she could save some money by hiring a developer from a well-known freelancing website. The developer started out well enough, but my friend Alice soon saw that the code was buggy and sloppy. When she tried to confront the developer, he was gone. He didn’t answer his phone, email, or urgent messages on the freelancer site. Perhaps he just went snowboarding or perhaps got hit by a bus? She was stuck with this horrible application and had nowhere to turn.
Hiring a professional ColdFusion agency to develop software is the surest way to a professional and carefree experience. You will be thrilled with the result!
Hiring a Solo ColdFusion Software Developer vs. Hiring a ColdFusion Agency
As you can see from Alice’s experience, hiring a solo developer is not always the best choice.
A solo developer can inconvenience your job in ways such as:
- Getting busy with other clients
- Getting sick and have no backup
- Getting run over by a bus
- Disappearing unexpectedly
Just remember, you are dealing with a single point of failure when hiring a solo developer. We all know how important redundancy is when you are dealing with technology.
On the other hand, an agency has an entire team that can handle your project. There is no single point of failure.
Off the Shelf or Custom Software?
I’ve participated in many discussions where the general consensus is that several pre-made software solutions should be utilized and adjusted accordingly. There are many problems with this avenue including:
- The apps will only address 50-80% of your requirements. There may be places where it does fit perfectly, however.
- Scalability. Often pieced together, software applications don’t scale well as the needs of the company become greater.
- No support. When you combine several software solutions, you will not get any support for the combined solution. The original software companies never intended their software to be used in that way.
- High fees. Often many of these software solutions will require you to pay for them by the month. This can get very expensive in the long run.
- Customization. Customization of off the shelf products can be very difficult.
9 Best Practices when Hiring a ColdFusion Software Development Agency
There are a few steps you should follow to make the process of hiring and working with a ColdFusion software development agency pain-free.
1.What are my requirements? What are the vision and objectives of the project? You should be crystal clear on what you expect and what you want before you even contact an agency. Without a plan, there can be “scope creep,” which happens if the project is not clearly defined and detailed in the beginning. You should also have detailed mockups of what the design and functionality of the software will look like so the agency does not have to start with a blank slate.
2. Decide on features. When deciding on what features your software should have, define features you WANT VERSUS NEED to have. You should start small, with a list of the most important features.
3. What will it cost? What are you willing to spend on the completion of the project? What does your budget say? Remember, there is a huge difference between good and cheap. Cheap in the short term often means cheap in the long term –and not in a good way. As I mentioned in the previous tip, you don’t need all the features right away. Your ColdFusion development agency will be able to understand your most important needs and focus on those.
4. Risk of project failure. Know this statistic: 70% of software projects fail. You should know the risk before you start and choose a ColdFusion development agency wisely.
5. Time to deliver. You should be aware of the difference in when you need the application versus how long it will actually take to develop. Keep this in mind when you are vetting software companies.
6. Begin assessing software agencies. You must know what to look for when hiring a ColdFusion software development agency. There are steps you should take before signing a contract. First, you trust them and believe in what they are offering. You need to do your research, ask for referrals, and read reviews online. After you have found a short list of agencies, you may or may not wish to send out an RFP.
For a better understanding of the process, read Daniel Goldstein’s article, “Ultimate Guide to Hiring a Software Development Company.”
7. Take some time to understand the software development cycle. There are many cycles in use today like traditional SDLC and modern SDLC (like Agile). It would be beneficial to know the cycle of the agency you hire. Research online and then ask the agency lots of questions. Try to find out as much as you can upfront so you won’t be surprised later.
8. The contract. Contracts should be signed by all applicable parties. These will not only protect you but the agency as well. Making sure everything is covered and in writing is just smart business. These can include:
- Confidentiality Agreements (NDA)
- Masters Services Agreements (MSA)
- Statements of Work (SOW)
9. The final product? After the development, you need to ensure that both your team and the agency has completely tested the software application. Before the announcement that the project is complete, MAKE SURE IT IS!
Remember the story of Alice and her nightmare solo developer? Sometimes opting to go with a ColdFusion development agency is the much better choice.
Understand the requirements and cost for the outset. Do your research.
Do you have any experiences with hiring a poor solo developer or a great agency? Share your story with us in the comments below! As always, great advice is always appreciated!
And to continue learning how to make your ColdFusion apps more modern and alive, I encourage you to download our free ColdFusion Alive Best Practices Checklist.
Because… perhaps you are responsible for a mission-critical or revenue-generating CF application that you don’t trust 100%, where implementing new features is a painful ad-hoc process with slow turnaround even for simple requests.
What if you have no contingency plan for a sudden developer departure or a server outage? Perhaps every time a new freelancer works on your site, something breaks. Or your application availability, security, and reliability are poor.
And if you are depending on ColdFusion for your job, then you can’t afford to let your CF development methods die on the vine.
You’re making a high-stakes bet that everything is going to be OK using the same old app creation ways in that one language — forever.
All it would take is for your fellow CF developer to quit or for your CIO to decide to leave the (falsely) perceived sinking ship of CFML and you could lose everything—your project, your hard-won CF skills, and possibly even your job.
Luckily, there are a number of simple, logical steps you can take now to protect yourself from these obvious risks.
No Brainer ColdFusion Best Practices to Ensure You Thrive No Matter What Happens Next
Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.
√ Easily create a consistent server architecture across development, testing, and production
√ A modern test environment to prevent bugs from spreading
√ Automated continuous integration tools that work well with CF
√ A portable development environment baked into your codebase… for free!
Learn about these and many more strategies in our free ColdFusion Alive Best Practices Checklist.