For more than 15 years of eCommerce Software Development, I have seen so many delayed project because of various reasons. In this document, I want to outline the most common activities, which being ignored lead to delays, cost you more time and money and, overall, decrease your company revenue. Some of them might sound obvious, but made all together can give you outstanding results.
Many CEOs, IT Directors, eCommerce and Marketing Managers had experience with external IT Agencies. Sometimes, it was not the best one, and sometimes extremely poor. There are many potential ways, how IT Agency can try to cheat on you, try to make the problem seem more difficult than it is, or extend hours in other ways. Not surprising, that many businesses do not trust in full IT Agencies after such experience. However, a high-professional Agency will never cheat on you. There are always things to do and there are many other ways, how to earn money for an Agency without cheating. Keep that in mind and find an IT Agency you can fully trust - without trust, the next points will not work well. To test your potential vendor, you may consider some small project, carry out a small portion of retainer tasks or try to solve some non-urgent problem that still needs solving for better business operations. Investing in finding a good IT partner will save you from numerous future issues - don't ignore that!
When you have someone you can trust, it’s time to take a high level view on relationships between your company and your technical vendor. Many clients believe that simply paying money is enough to make the project happen. Partially, that is true, a professional team should take care about your project. However, no one knows your business better than you. To understand it as well as you do, we would need to run your business! It might sound obvious, but what is not obvious, the technical cannot move forward without you and your knowledge - they can provide options, they can find solutions, but they cannot get ideas, goals and requirements for your business themselves. It's your responsibility to provide that information and give direction. Stay in touch with the technical team to provide necessary information in a timely manner and not halt the process. Here we come to the next point.
The more detailed your business requirements are, the better. Pay attention, I don’t mean technical part! You DON’T need to know what integrations APIs you will use, how user data will be stored or what server side you need. The technical team will solve that for you. But what you really DO need to know is whether you want to sync only order data, or products too, between the store and your ERP, what user data you would like to have saved and how many users you plan to serve with your online store. Those are business requirements, not tech ones. In perfect world, you have business analytics in your team, and they can check, what your Marketing Team wants to have, what are CTO’s needs and how Warehouse Team would like to process the orders. If not, we did that multiple times with our clients together, the only thing is you need to accept this job is required. Otherwise, it's like going on a road trip without a map and GPS - you may ask people in every city, how to get to the next point, but it is hard to predict, when you get to the end point and how much effort it will take. Furthermore, it's certain that it will take longer than it should! I know, it’s not possible to know everything at the very beginning. Eat an elephant one bite at a time! Take a small project part, make it in proper way and move to the next one having new information from preceding step.
As you may find, there is a lot of work to be done before making a single frame for UX/UI designer or a single line of source code for developer. Often, our clients’ teams are not ready for it. They don’t have enough time to be on analytics sessions, they don’t expect they need to find answers on numerous questions quick, they don’t want to make any decisions about business requirements. Understanding Who will do What, and How they will achieve results, is crucial at this point. Find a responsible person with enough time for the project, empower them to make decisions, gather necessary details, and get answers quickly. You will then see how your project progresses in a fast and predictable manner towards launch.
You've done good work at the start of the project, provided all details, made all parties busy. You receive reports about the progress, but don’t read them much. Everything should go well, your team made excellent job! You take a close look at the project at a very late stage, just before launch, and what do you find there? At least one half works, not as you expected! Did these guys even read your requirements? How did they get there? Believe me, they did. But they understood it in the own way. Unfortunately, there is always a room for miscommunication and I know that very well. Sometimes, we beg our clients to read the reports and be proactive on every demonstration. As the manager of the technical team, I'm the last person who wants my team to do anything wrong. And we still can't read other people's minds. Please, stay with us, be on the project, and you will get exactly what you want and what you expect.
While a technical team tries to anticipate all potential risks and changes, the future remains uncertain. Small changes or inaccuracies can be relatively easily mitigated and do not impact the final result or the amount of work to be done. However, large mistakes also happen and that is not connected directly to the team’s skills or experience. In such cases, for the tech team, it is extremely important to share those mistakes with you and propose possible ways to solve the problem. The final functionality may change or operate in a completely different way, but it can still deliver the desired results for the business. I recommend being open to such changes or surprises, as close cooperation can solve any problem and make your business successful.
The launch phase requires significant efforts from both the technical and business teams. A lot of things to do, hard deadlines and stress before the launch brings most attention to the technical team missing activities of the business team. Every business should pay attention to own activities too. Numerous projects have been delayed because of a lack of product images, not signed contracts with payment providers or missing licenses. While technical side is huge it is not only part of the project and in most cases readiness of technical part is far from enough to launch a new online store. Keep these activities in mind, check the requirements with the technical team, and track your tasks in the same way as you track the technical part, and it will become almost impossible not to be ready to launch the project on time.
I know that following all these points is not an easy walk! It requires a lot of efforts from business team and may look like far more work than expected. Those are additional, often hidden or unplanned, costs for the business. You may even think to go to “Agile” and “random” approach, it worked before! That doesn't seem like a good idea to me. A business will pay for this in any case, either for planning and management or for ad hoc fixes, sleepless nights and bad project quality with shifted deadlines and/or extended budget. The final choice, though, is up to the business.