Avoid problems with software developers

Avoid problems with software developersIf you run your own business, there’s a good chance you’ll end up working with a software developer at some point. If so, it won’t take long to realise that most software developers think differently to business people, and so getting your communication right is essential

Don’t be alarmed. This is normal and can be managed if you take note of these points:

  • Define what you need. Your developer must understand what you mean when you say something. Do not just say what you want and leave it at that. Explain the business processes around your new software, and be absolutely sure the developer understands them. If they don’t, it can be an expensive mistake.
  • What’s easy is hard. Don’t make assumptions about how difficult it will be for your developer to achieve something. It often takes a lot of work to get a piece of software to perform what appears to be a simple task. Some of your requests will be easy to achieve and some will be hard – but it will be difficult for you to judge which is which.
  • Be specific when you talk about time. Developers are accustomed to estimating how long a project will take in terms of the number of days’ work. This figure doesn’t usually translate into calendar days – it’s the total number of days they need to devote to your project. Always agree a dated deadline to be sure you are working to the same timescale.
  • Developers like complexity. Developers spend lots of time with hard-to-use software. Things which are blindingly easy to them may be difficult for your staff to understand. So when someone is designing software for you, make sure you see examples of the work in progress. If it looks hard to use, then make sure your developer understands this and work with them to change it.
  • Explain how you work. Adopting new business software can completely change the dynamics and processes in your organisation. To avoid this causing problems, make sure the developer understands how your staff work and can explain how the new software will affect this. Involve your staff too.
  • Expect problems. At some point in the development process an unexpected problem will arise. Time management is crucial to stay on top of these. Keep timescales tight enough so you can control the budget, but flexible enough so that a delay will not adversely affect your business.
  • Block out buzzwords. Fashion is an important part of the software development world. There are fashionable ways to do thing, and they usually come with jargon. Even the best developers will start talking excitedly when given the chance to try the latest fashion in software design. Slow them down and get them to explain everything in simple steps. Don’t assume that the latest thing is right for you.
  • Look at the how. It’s not just important that your software does what you want it to. The way it does it is important too. If the software is public-facing, it affects the image people have of your business. And if the software is for internal use, its ease of use is vital so that staff can use it quickly and easily. So make sure you’re happy with the look and feel as well as the functionality.
  • Appoint a project manager. Communication is key to successful software development. Give your software developer someone they can talk to at all times and make sure that person can feed information back to the developer too. It can be anyone, as long as they understand the project’s goals and have the time to talk and think about it.
  • Keep your source code. Source code is what the developer works with. It is not the finished product, but it does create it. Without the source code it can be impossible to make future changes, so get a copy once the software is signed off. This will give you the option of using a different developer in future, if need be. Make sure all associated intellectual property is assigned to you too.