Getting it right the first time saves time and money. It seems really obvious, but it is shocking to realize how much money is spent redoing projects of all types because they were never properly designed at the start. Many times, I am brought on board projects as the “clean-up guy” – so I see it all the time. CTO Services strives to work with every client to give them exactly the resources needed to get the project done right the first time.
There is no “one size fits all” development approach that works for all companies. Different people work together very differently, and companies of all sizes have different approaches to developing technology projects. The common thread among successful projects seems to be this – the stakeholders who really understand the vision and the business needs stay engaged in the development process until the end to make sure the right product is delivered.
Software process is important, but at the right time. I have seen single developers build brilliant high-quality software systems without using any process tools at all. I have also seen companies with the most mature software development process get so bogged down that the overhead of the process causes the project to fail. As your development team grows beyond one person, or if an outside company is used on a project, the most important thing is to review the progress as often as possible (weekly or biweekly) and make corrections as needed.
Special Note: Even if you have a single developer/no process in place, make sure you own any IP that is developed for you. Make sure it is all being regularly checked into a reliable source control or document system. For software projects, we recommend GitHUB.
Partnering with the right team of outsourced specialists is often more effective short term than trying to hire full-time talent. This seems particularly true today as IoT and M2M projects often involve expertise in very specialized areas (such as cellular or Bluetooth Low Energy). When you are getting started, it is often cheaper to engage a professional company with expertise in these specific areas rather than spending time and money to have an employee (or yourself) learn on the job. Technology moves so fast, there is often little time for this.
Help clients own and understand the IP they are developing. If you engage CTO Services for help of any kind with a technology project, we will go out of our way to make sure you own and understand your intellectual property and the risks of managing it. For example, if you have a key employee who is developing much of your IP, we can help you put in place a plan to protect your business if something happens to that key producer. Similarly, if you partner with an outside company to get started on a project, we can help you transition it “inside” to your own team over time.