My experience has led me to work closely with programmers for years. I studied programming and I understand a lot of the logic that drives their choices. However, I remain an entrepreneur and a project manager, so I find myself straddling these two roles that often have to relate to the business world to give birth to something new.
In this article, I will explain to you, according to my vision, the basic steps to avoid mistakes, waste of time and waste of money when you find yourself having to schedule something for someone.
I will summarize the route in three steps:
Clear ideas: as far as possible, it is important to have a clear vision of the final product to be obtained, namely:
- the function it must have;
- which users are its target;
- how and on which devices it should run;
- what content or services it must provide.
This is not to say that during development the product cannot evolve, indeed it must. But when you start building a house you usually have an idea of the end result, right? Well, the clearer you will get, the more you will avoid building walls that you will then break down to make room for installations or other.
Make a mockup: contact a UX designer (User Experience Designer) and create a user experience model.
Imagine with him/her how the user will interact with your software, try to get to the bottom of every possible detail. There will certainly be evolutions during your development path, but you must have everything you know in a container that allows you to visualize it as if it worked or almost.
With the content you have produced, contact the software house or the freelance programmer and start discussing its execution.
Get ready, because the more people you consult and the more different solutions will be proposed to you. You will come to a conclusion on what is right to do according to a series of assessments:
- How many professionals propose you the same solution;
- Who has the best references;
- Who has already developed applications similar to yours;
- The cost, the usual tyrant.
But be careful in comparing the various solutions. Even when the solutions look similar, their differences will be decisive.
Of course, if you have already integrated someone in your team who wants to plan and advise you on choosing the right platform, you will find that you have made a smart move. It will only be, actually, as long as your consultant does not have to take care of maintaining or updating the contents. In this case, in fact, the person who will be in charge of it may have preferences with respect to which product to use and therefore no longer be impartial. Having a disinterested consultant by your side, to whom the fee or workload will not change according to the solution you will adopt, will allow you to better evaluate the purchase. See it a bit like a personal shopper who accompanies you around the department stores, advising you on what actually looks good on you. In my experience, I rarely see this approach applied, but I think it can save a lot of money and avoid serious headaches.
Still going with the metaphor of the personal shopper, I also want to specify that it is important that your “personal shopper” is not your life partner, because inevitably his choices will be influenced by his personal tastes. In the case of private life this will probably be the case for you, but in business it is not necessarily the same.
In any case, the real key lies in the available budget.
If you have to spend a few thousand euros to redo your website, you probably can’t afford a consultant, but if you have to choose a team to develop the new worldwide distribution application for which you work (application that will cost hundreds of thousands of euros) perhaps it is the case to think of investing a few thousand of them in order to give you a super partes advice.
I conclude by reminding you of the saying “you can’t win them all”. Often, in the world of software development, especially when looking for extremely innovative solutions, it can happen to take a wrong path and to have to “throw” a piece of code that only after having thoroughly programmed does one realize it does not work as We expected. These drawbacks are part of the game and, although it’s easy to believe, it’s not necessarily your development team’s fault. Unfortunately, there will be some road accidents that are difficult to predict in advance. Similar cases happen every day even in the world of building construction. You can do all the surveys and calculations of the world, but it is when you dig the subsoil that you really discover what is below.
I hope you enjoyed the article and I leave you my “good luck” for choosing your next development team.
If you have any questions or comments, don’t hesitate to write to me.