9 Things to Remember When Working with a Developer
In the real world, rarely is an entrepreneur with a great idea also a savvy developer capable of bringing his creation to life. More often than not, the visionary is required to navigate the foreign realms of software and web development, and finally, enlist the help of a professional. The collision of these two worlds can be cumbersome.
Having gained plenty of experience on the entrepreneurial side of this marathon of a journey, I offer 9 important tips for how to work efficiently with developers.
Understand that the ways entrepreneurs and developers think and speak are sometimes completely divergent. Many key factors can be lost in translation between entrepreneur and developer. The best way to jump that communication barrier is to actively and attentively listen to what your developer has to say. Explain your concept thoroughly to the developer. Use detailed notes. When the developer begins to ask questions, be aware that an important part of the process is about to occur. Be absolutely positive that the developer is on the same page about your idea.
A developer’s thought process can literally require language translation while the visionary is explaining her concept. While you’re speaking English, the developer may be thinking in code. While you explain what you want, the developer is likely problem solving, formulating plans – in effect, thinking four or five steps ahead. This is a skill, so don’t be concerned. Understand that your developer is doing what developers do best.
2. Establish Ownership
The eventual launch of your concept will be the result of a successful collaboration between you – the visionary – and the developer. It is important to establish in the first or second conversation exactly how your ideas are translated into a virtual blueprint. Again, take detailed notes, and continually summarize what you understand to the developer. In this way, you both remain on the same creative page. It may be wise to establish yourself as the legal and technical owner of all aspects of your project through all phases of development.
3. Personality Counts
It may make the communication process easier if there is a bond formed between you and your developer. You may find that you communicate with, and understand, some developers better than others. Mutual communication will help ensure a successful project. Keep business and personal relationships separate, but certainly develop a “rapport” with your developer. The temperament of many developers may be similar to that of a struggling artist; they may be only willing to work in their own timeframes, may behave erratically, and may be chock-full of emotional and motivational swings. Do not even attempt to shackle the creative mind of a developer; it will only lead to your own frustration. Instead, ensure the lines of communication are always open and clear.
4. Meet In The Middle
As with any brilliant idea, there must be a reconciliation between fantasy and reality. Typically, the entrepreneur has a “pie-in-the-sky” vision, intended to revolutionize the entire world. It is typically the developer who will lasso that idea and tether it back down to earth. Sure, a great developer will be able to create something outside a typical template, but if you want a hologram to pop from the screen every time someone visits your site, you probably won’t always be satisfied. Some compromising will be necessary.
This is where building that strong rapport with your developer will come into play. If your developer shares your enthusiasm for the project, he is much more likely to put forth extra effort to make your dream a reality. But remember that there are limits on how far reality can take you; most of us don’t have hologram technology on our laptops.
5. Never Pay By The Hour
This is a mistake learned first-hand and never made again. Establishing milestones in the payment agreement is hands-down the most effective way to be sure you are getting your money’s worth. Be sure not to offer too high of a percentage of payment up front so that there is enough incentive for the developer to keep up the good work. Develop a viable payment structure with a contract that is suitable for the scope of work.
6. Do Your Research
All developers are not created equal. There are many different avenues of experience any one developer can have. Be sure that the developer you may be working with will have the specific skills that you are looking for. There are definitely necessities within software development that require specialists, not simply a general contractor.
When beginning your hunt for a developer, be sure to ask those you know if they have any personal experience with developers with whom they enjoyed working. You may also want to contact owners of websites or other software you like to see if they can recommend someone to you. Once you find a strong candidate, be sure to check references and carefully review her portfolio. If possible, try to meet your developer in person to get a better understanding of the personality to whom you’ll be entrusting your vision.
7. Put it in Writing
This seems obvious, but you’ll need to get everything in writing. Have the developer sign an agreement including a detailed confidentiality agreement. Put your agreement concerning ownership rights, provisions for communications, and the milestone payment schedule in writing as well. While you don’t need a complicated contract, some contract will be necessary. You can find contracts and comprehensive agreements online, or you can simply write one out in clear English. Consult an attorney if necessary.
8. Clarify the Relationship
Will the developer be a partner in the project or a contracted vendor? If you plan to employ the work of a developer and expect them to work quietly, exactly as you have requested, you’re in fantasyland. The vast majority of developers will want to collaborate with you on the project and desire some sort of compensation or incentive package for doing so.
9. Check-In Early
It is an absolute necessity to check on the progress early on in the development. In fact, this should be done at pre-established project milestones. Be sure that all the right concepts were correctly interpreted in the translation from you to the developer. To save frustration on behalf of both parties, ask to see how things are coming along; out of respect for the developer, I recommend clarifying the intention of check-ins to confirm that they are meant to be mutually beneficial, not intrusive to the developer.
If it were easy, everybody would do it. Remember to be patient with the process. Collaboration with another individual in order to bring your vision to life can be extremely frustrating and time consuming. Be sure to go in prepared for some hurdles, miscommunications, and hopefully, a successfully finished project.