The competition is pretty intense in the digital space presently. Software solutions are coming up every single day to connect us better with businesses and each other rapidly. Because let’s face it -we have all been in those shoes where we thought about an awesome business idea and very soon saw something pretty similar to it on one of our social media feeds!
But that doesn’t dampen your spirits if you are in an entrepreneurial mindset with a product idea in mind!
Now having an amazing business acumen need not necessarily be coupled with technical backing. Naturally then, the next daunting task would be to setup a technically-sound team who can relate to your idea and deliver you the product with maximum efficacy & faster than the competition.
Like they say, ‘the early bird gets the worm’ – a critical need of the hour for any business to thrive is a shortest Time-to-Market strategy.
It wouldn’t need a lot of guessing to figure that a short time-to-market strategy would imperatively mean a faster Product delivery time is needed for tipping the competitive scale to our side.
However, the fact is that “Product Delivery Time is just an outcome of the methods employed for the Project Execution of the agreed scope of work”
This is exactly what we want to talk about in this post. We wish to help upcoming entrepreneurs, fresh start-ups, or even firms kicking off on a technology product wing – from walking around the common challenges that they are bound to fall prey to. Also, probably give some tips to fast-track their project plan.
For ease of reference, we will talk about this post from the perspective of a software start-up firm – that we recently helped get to their Beta stage.
If you aren’t interested in the whole story and need just the key takeaways,
is where you need to be!The 1st bet:
Our clients were a group of 4 novice professionals from the Real Estate domain. Each of them had 20+ years of experience in their respective line of work – namely Software Architect, Systems Networking, Sales & Marketing & Software Quality Assurance.
The product was a holistic community management suite that allowed builders, apartment owners, tenants and other community stakeholders to sync up on a common platform using a web + mobile application suite.
Their first bet after registering their company was to hire a dev team to manifest this business idea into a real, deployable software product. They then had the following 3 options ahead of them while choosing their right team:
- Contact Freelancers: Although the present market is full of talent pool, our protagonists felt skeptical about entrusting such a huge project to unknown vendors with virtual credentials.
-
Outsourcing: There are many factors that should be considered while deciding on a outsourcing partner, but our clients decided against going with this as they felt it would eat away a huge chunk from their bootstrapped resources.
-
Hiring your own full-time employees: This seemed like their best option at that point and they ended up hiring in-house developers to bring their product to fruition.
Expectation vs Reality:
6 months into their planned product development cycle, this is where they found themselves:
-
A secure DB architecture was setup and in place
-
The application was being developed using .NET Core framework
-
A basic UI template was bought and was used for the application’s front-end UI
-
Each team member was given the ownership of a couple of modules and they were supposed to know them thoroughly
-
Many form-entry-type modules had been completed
This was around when they connected with us to develop the mobile extension for this application suite.
In the following 30 working days, we had with us approved UI/UX designs for around 50 odd mobile pages tweaked for cross-platform Flutter mobile app development. By this time, we had also got a fair idea of their whole application scope.
We were further invited to take a look at the web application being developed, because they seemed to be stuck-up in the development cycle and weren’t able to provide us the necessary APIs for the mobile as per our planned mobile development project plan.
We met the client’s team & interacted with them for a couple of days as part of due diligence only to realize the following:
-
Development of the main modules, which formed the engine of the whole application suite, was yet to be begun.
-
There was no particular project structure in place within the development team – which made future project scalability and maintenance a hell-hole.
-
The development team was clueless to the overall scope of the application they were developing, as each had standing instructions to only work on the assigned modules.
-
The application was not deployed anywhere till that point of time and was only accessible to the development team.
-
There was no QA process in place during the development cycle, just unit testing.
- The team, although enthusiastic and technically sound, were not confident about building the application forward with the huge scope the clients had in mind.
The Conundrum:
Our clients then put us in an awkward position.
They gave us 2 choices and asked us to pick either and guaranteed their support anyhow – as long as we guaranteed fast-forwarding the application development lifecycle:
- Scrap their development team – while providing them appropriate remunerations – and completely outsource all development activities to us.
OR - Guide their team appropriately for the web application part, while our team continued to work on the mobile app part.
The Makeover:
Within the next 2 weeks we changed the project’s landscape. Our thought process was simple, “To build our client’s brainchild of a product and setting up the right foundation for their organization to grow around it eventually”. With this, we implemented the following steps right away:
- The application development was decided to be started afresh.
- The team hierarchies were maintained as before – the client team continued to work on the web-application dev , while our team kicked-off on the mobile application.
- An experienced software architect and product owner were deployed for the project to guide & oversee the product lifecycle.
- A proper project structure was created and shared with the team, while the advantages of the same were explained to them.
- Daily sync-up meetings were planned among all team members to discuss the complete application scope, as also to make everybody comfortable with each other.
- An experienced UI/UX designer was deployed for the web applications front-end design on fast-track, such that the designs were ready by the time the refined product development lifecycle was planned.
- Product backlog was created with user stories.
- Agile methodologies that would be used for the project were discussed with the teams.
- A shared AWS cloud server was setup for deploying the web application build.
- DevOps pipelines were put in place to enable all stakeholders to track the real-time status of the web & mobile application development.
- QA associates were also looped in the initial project discussions, so that they could actively contribute from the 1st development Sprint.
Outcome:
- 3 months after the reformed product development cycle initiation, we declared the application suite to have reached its Alpha stage, as:
- The web application had surpassed its previous state from the former development cycle, with some more core components developed.
- iOS & Android Mobile applications (in sync with the web modules) had been provided to the client for testing on their personal devices.
- 2 more months after the Alpha, the application scope as per the documented product backlog, along with many other change requests has been developed and deployed for testing. Thus, bringing the application to its Beta!
Key Takeaways:
Outsourcing is mythically looked down upon as expensive, dispensable or even an overhead, by many folks. But the fact remains that the experience they bring forth, can do wonders for any product!
Here are some pointers why we feel you would only be putting yourself in a better position by seeking help from professionals who extend their technical & market expertise to your project:
- There are many ways to go about a solution, but usually very few tried and tested ways to accomplish your requirement aptly – wouldn’t it be good to leverage it? Rather than going about in circles to find the apt solution, spending away the limited time & resources. Think about the case of our client who had to scrap away 6 months’ product development effort of their whole team! That could have been avoided if they had decided to outsource the same in the initial stages itself.
- An unbiased pair of eyes are always better at calling out wrongs in a product development lifecycle – This could be looked at from both angles:
- The employees can only provide comments with as much experience as they have till that point of time. Besides from an organizational standpoint, calling out something wrong could again have various implications for them, OR
- The employers, on the other hand, could mostly never fathom the impact of a mistake committed in the long run of the product, and may tend to leave it unattended for then.
- Most credible firms work on the Build-Operate-Transfer model – this ensures that while the clients were able to operate their WIP product at all points of the development cycle, they could also have the same easily transferred to them after the development with a definitive warranty period. It’s never Deliver-&-Escape!
- Application Development is a two-way street – as it’s equally important to set milestones for completion, rather than indecisively expanding the scope of the application. One could keep scaling up the product infinitely, trying to make it and more market ready, but that would defy the whole purpose of faster time-to-market. As an entrepreneur, the first tasks you should take up on yourself is to clearly define the scope of your Minimum Viable Product for the market.
Finally, while partnering with a development team to do the heavy-lifting of your product development:
- Be wary of finding technical dwarfs – who would be well-versed technically but might not really get the business need, or the target audience or the market, for that matter.
Have diverse conversations from outside your business requirement to know them better. - Prevent getting sucked into a dreamy-vacuum by business astronauts – who would paint a very vibrant image and throw around a lot of business jargons and statistics, but wouldn’t really have much hands-on experience working with your requirements.
Try connecting with the technical team who would be actually working on the project, before shaking that hand.
Find a development partner who is hard as gold, but still malleable enough to be moulded with different perspectives – because invariably after the project cycle initiation there are meant to be disagreements. But irrespective of anything, the various options must be discussed and the best approach selected in the benefit of the product.
Observe how your outsourced partner deals with uncertainty, or steadfast rules during the initial discussions.