Digital product development is no piece of cake. It’s not a brief transaction with a specific product developed and handed-over, but rather a long term process. Here in Thorgate, we like to consider it an equal partnership between the client and our team. Nevertheless, we always try to exceed the clients’ expectations, a lot of which is dependant on how much the client is vested in making sure that this cooperation succeeds.
Our developers, team leads and project managers have years of experience of working with many different projects and clients, big and small, and across various sectors. Our team has learnt the 9 customer traits that are the most important factor as to why some projects thrive while others... not so much.
At first, these points might sound generic, even a bit like a relationship advice. However, business relationships work in a way similar to other successful relationships. Much like Rome wasn’t built in a day, a good (business) relationship, takes time, patience, honesty and 2 parties who truly want to make it work.
1. Know what you need
A good client is open and forward-looking about their ideas. They know exactly what they need, why they need it, and when. While having a clear vision about the final product is key, it is also important to be open to suggestions and discussion. When a suggestion is made, it is okay to consider alternatives because being too stubborn doesn’t help anyone. When we’re equipped with a clearly defined list of challenges, we can hit the ground running and set out to solve these together. Additionally, if the current situation of the client is clearly defined and the challenges are thought through and listed in order of priority, it helps the development team focus on things that truly make a difference.
2. Communication and respect is key
Good, clear communication is the key to any successful partnership. Much like in a private relationship, this doesn’t mean checking every move of your partner, and knowing when they come and go. In fact, this means being respectful of each other’s time. It is essential to be able to provide input actively and regularly while being responsive and prompt. Should there be any changes on either side, it is important to notify the other half as soon as possible. This might seem obvious, but if the input isn’t given on time, it respectively shifts all the other deadlines as well.
3. Trust the experts
In a good relationship, everyone likes to feel valued. Much like we trust the client to be an expert in their field and provide us with tools and the business insights necessary to deliver the best possible work, we hope that the client is able to do the same and trust us when it comes to what we do best - develop solutions that support the needs of the business. This means trusting each other when it comes to best practices in the respective business areas.
4. Have a realistic budget
There’s no tiptoeing around it - good product development takes time and money. That is why it is important to be realistic about the budget early on as only then are we able to make sure that this has been properly considered before the development has begun.
10 Minutes / 1 Minute / 10 Seconds
Image source: Igor Cheban
As it can be seen from the image above, the first drawing on the left, made in ten minutes, is a lot more refined than the one made in 10 seconds or even in a minute. If given 10 minutes, the artist can create the drawing as intricately as possible, given more time they’d probably be able to do even better. In 1 minute, the artist is able to draw out the main elements, giving the viewer an idea of the direction. However, the drawing made in 10 seconds let’s the viewer barely grasp that someone was trying to draw a bird. Possibly, the best solution in your case could be to have a really well-drawn head but a mere concept of a body. This kind of compromise can only be achieved if the budget and the goals are well-defined in advance.
Following this analogy, if the scope of the project changes and the bird needs to somehow look different from what was originally agreed, then the budget changes as well. Both excessive reporting and urgency pull the focus away from what really matters - the outcome of the project.
5. Know your business
Mentioned briefly in point 1 and 3, it is crucial that the client would be able to explain their business process and share the unique insights with us on how their business is run and where do they see it heading in the next 6 months, a year or even 5 years. By working together and relying on each other's strengths, we will be able to build a product that dots all the I's and crosses all the T's from both business and technical perspective now and in the future.
6. Choose the right person to handle things
It might seem redundant, but the people who are in charge of managing the project (from both our side and the client’s side) should also be able to manage the process. This means having enough competence, information, and autonomy in the organization to make real and prompt decisions about the project. If the contact person is merely a mediator between the real decision-makers and the development partner, then it might turn into a very unamusing telephone game real fast that wastes both time and resources on both sides that could be put to better use.
7. Know what you don’t know (and be willing to learn)
This point might seem a bit funny at first, but being honest about each other's strengths and weaknesses early on helps us make sure that everything is handled accordingly. It’s always good if the client (especially the person handling the project) is a bit tech-savvy themselves but it is not mandatory. Knowing how product development works is obviously a big plus, but a mutual interest in the project and willingness to learn are even more important.
As noted earlier, product development is a process between equal partners. At Thorgate, we value constant learning and development, getting to know the in’s and outs of our client’s business helps us to become better partners. Same applies to our partners when it comes to learning more about product development. We’re always happy to learn but being able to learn new things together, especially from each other is even better. The best project is the one that both challenges and teaches us.
8. Have an inspiring project
Developers are not machines - even though it might seem like that at times. They work better when they’re inspired and genuinely excited about a project. What makes a project inspiring? When the project is challenging and technically interesting to work with then it lights the fire in our developer's eyes. This doesn’t mean that we’d like to move as fast as possible and as far as possible; keeping the code up to date is also a very important task, like a regular oil change and maintenance on a car. Last, but not least, the project, in its essence, should be focused on solving an actual problem, maybe even changing the world - we like to get excited with you. And finally, a pinch of humour never hurts! ;)
9. Don’t underestimate the personal chemistry
Great personal chemistry between the client and the development partner, or between the developer and the project itself can turn a good project into a legendary one. All collaborations don’t click and it’s okay. But if they do, magic can happen. Having a cool and relevant project and a friendly proactive attitude can get you far.
If you are not sure whether to invest in a custom-made software or not, read this: To Build or To Buy
If you're wondering what is the best way to start, take a look here: Start with an MVP
Or just get in touch with us and the industry experts can help you with your questions!