An interview with Rahul Matharu, Founder of HandySolver
"Our strength lies in understanding the requirement quickly and pointing
out or proposing things that are being missed out by the client and we
are able to integrate no matter what the complexity."
Bring Your Business Online (BYBO): What do you feel is the importance of hand holding in digital transformation (DT)?
Rahul Matharu: DT is essential in today’s age because that is how you keep an edge or even remain at par with your competitors. Usually what happens is that businesses are well aware about their domain but they are not fully clued up on how digitisation can benefit their business. Therefore it is handy if somebody from outside like a DT Consultant can understand their business and propose how DT can assist their business in using technology in an effective way.
If a business lacks knowledge of how to merge their business with technology to their benefit then that is where a DT Consultant can be helpful.
BYBO: Can you give me an example of hand holding which you have done?
Rahul Matharu: Yes, there was this particular company which was wanting to provide online software for email marketing and social marketing for financial domain clients.
What the client would do was, he would give his brief requirement, that this is what he was wanting to achieve and then we would architect how it could be achieved.
For this we would first Wire Frame how the flows would be and we would also propose the technology stack that would suit his requirements. From there we would start building it. Initially we would create a quick version which he would be able to test so that he can further streamline his requirements.
This was more like a collaborative approach because it was not possible for the client to insightfully tell everything in the beginning. Then based on the first version we would build the second version and in this collaborative manner we would build his solution.
BYBO: How did the Wire Frame help the process?
Rahul Matharu:The client just gives us a brief flow that he is looking at but there is a lack of detail. Therefore, what we start doing is based on that we would start creating the wire frames as to how the screens would look and how the user of the software will be flowing through the solution.
That had multiple advantages, one is that it would bring multiple details and much more clarity.
Second is that it would bring out important questions which were missed out earlier because of a lack of detail.
Thirdly it also helped in creating an accurate quotation and phasing out implementation, because we would clarify what features are required and what can be postponed for now. That is how wireframes helped.
BYBO: Could you expand on the need for being able to offer a technology stack?
Rahul Matharu: It is important to choose what kind of technologies you want to build the system in.
Like if you have a business running then you might have off the shelf software which can be used. However if it is not available you might have to go for something which can be custom built.
The technology stack you choose will also determine the cost and the maintainability. The kind of hosting and features you choose will also have an effect on the cost. It is important to choose based on what is your priority.
Further there is a choice on whether you are looking for rapid development or you are looking at something which may take more time but is more robust and you don’t mind a little delay in the output but it has to be robust.
Some clients will want to prove their idea in the market faster so they will go for a proof of concept which will be a quick first version that can be improved along the way.
Some other clients may be very clear on their requirements, or more or less clear, so they may go for a process which will take more time but will be more robust. Based on their priorities, choices are made. Choices like the technology to be used and what kind of procedure they want to follow and what kind of hosting, what kind of database and how much they want to scale.
Sometimes a particular technology may be an overkill, it might be that it is very scalable but what about the overhead of maintaining it, what is the cost? Developers for that technology might be expensive to hire. It boils down to the priorities.
We help the client prioritise.
BYBO: How much time do you take to make a solution through the rapid development process?
Rahul Matharu: We take the requirements, research accordingly and create the wireframes of the screens because you need enough clarity. Following this we make the Service Requirement Specification, which gives the client an accurate quotation and timeline with a milestone based deliverable structure.
Then we propose that in phase 1 what can be built faster and what to cover in phase 2 of development. The client can start using the software as soon as phase 1 is ready.
Usually it takes one to two weeks to get the requirement, milestones and timelines in place. After that we start on the project and we take 2 to 4 months to build a medium sized software solution.
This, therefore, is the timeline for the rapid development process.
BYBO: What are the main strengths which Handysolver brings for rapid development of software?
Rahul Matharu: Our main strength is that we are able to figure out a solution to whatever requirements the client has.
We have our core strength, like we are into web application development, however if the client wants to integrate with other softwares or implement real time solutions, video conferencing or social integrations, we are able to do that. We are open to integrating whatever is the requirement. Our aim is that whatever the client has visualised becomes a reality.
Like we have a client who uses a third party software for developing interactive learning games. He wanted an interaction of the game with his web application, so we were able to make that integration happen.
Our strength lies in understanding the requirement quickly and pointing out or proposing things that are being missed out by the client and we are able to integrate no matter what the complexity. We have the clients back!
We are able to do all this with a reasonable speed because the client usually has an idea of a timeline in which he is wanting it because it is important for him to launch to test his concept.
Many a time it happens in custom software development that the client is not sure about whether what he is building is going to be useful or not. Therefore, one wants to be able to launch and test quickly.
We also propose the technologies which are most appropriate and in which we are most proficient.
This also helps in making the process rapid.
BYBO: How do you handle the removal of bugs and the interaction with the clients for this?
Rahul Matharu: Whenever we develop software there are bound to be some bugs. We have a flow in which whenever a task is completed by a developer it goes to the quality assurance expert, who then checks and passes the task as per the client's requirement before it is sent to the client for review.
We have the first test by the developer and then by the QA expert. Post that our entire team at times is involved in a Beta test and then it goes to the client. This process does take a little more time because the QA person has to put in his effort but it reduces the number of bugs before the software goes live.
BYBO: How do you handle enhancements which the client may need and the cost of these enhancements?
Rahul Matharu: This is a very important question and many companies get stuck here. It is very important that before the project starts the terms are clarified.
For that the requirements have to be written down with enough detail so that you do not miss out on any obvious thing because then you will have to do it without increasing the cost.
You have to be detailed enough from your end for the development team to be able to assess the effort. It has to be written down and it has to be quantified.
We always take out the effort, the number of hours, the number of days. This way the client knows that he is paying for this effort. It is very important to attach a number and deduce the quote mathematically.
With that what happens is that if some requirement comes and it looks to be an enhancement then we can logically add more effort and bill the client but if you don’t follow this scientific approach then the client can feel that this was supposed to have been covered and we should have known it in advance.
To avoid this kind of a stalemate situation it is important to be very clear at the quotation time to specify what you are building and what you are charging for. This kind of transparency & detailed clarity is beneficial for both the client and us.
BYBO: What is your billing process and how does the client get the assurance that he is being billed correctly?
Rahul Matharu: There are two types of projects that we have with clients: fixed price and on hourly basis.
In case of fixed price it is a lump sum so we mutually decide on the quotation after building our Service Requirement Specification Document. We give the effort in terms of number of hours and we distribute it into deliverable milestones. In this case the client is not that concerned about how long we spend the hours because the price is fixed.
The other is that if a project goes into maintenance then there are continuous enhancements. For this we have a model where we are able to bill them hourly.
For proof of work we have a system where at a particular gap the screen shot of the developer's screen gets taken and by seeing this the client gets an idea that the developer has been working on the project. For this at the end of the month a bill gets raised.
The client is also provided a dashboard in which they can log in and see who spent how much time on what particular point in the bill which was raised. So there is transparency.
BYBO: How do you arrive at a recommendation to a client for going for a rapid or robust development process and what are your strengths in these two processes?
Rahul Matharu: It really boils down to the type of software which is going to solve the requirement.
If is a very beaten topic, for example if you are building a mobile app which is a grocery delivery app or a CRM solution, in that case it may be better to go with a readymade of the shelf solution and carry out some customizations.
Unless you have a very unique business model or you are very clear on what you want and that is not being met by anything off the shelf. In such a scenario you can build something custom. If you go for an off the shelf solution then you must check that it has detailed and clear documentation and a good track record. There should not be many bugs on it and the developer should be able to refer to the documentation on how to make enhancements.
There are also no coding or low coding platforms like ZOHO, SalesForce, Shopify. If you look at these platforms they charge a fee per month but they give quality, in the sense that there will not be bugs and they give very good documentation on how to customise.
Attaching yourself to them is good if you have the funds needed and you are looking to get a quality solution.
The third is that you get something custom built. Usually when you are doing something unique which has not been done or you want a specific way in which you want to do things. Like your company functions in a certain way or if you have an idea which has to work in a certain way, then you go for a custom build solution.
BYBO: What is the strength of Handysolver in building software and how are you moving forward?
Rahul Matharu: Our strength is mostly custom built software and integrating various tools and systems to make them talk to each other.
We have made a lot of custom portals and software as a service solutions. These are our current strengths and we are looking at customising off the shelf solutions.
We have already worked on e-commerce solutions available on Wordpress like Woocommerce.
Recently we had completed a project using Shopify where we integrated Shopify to Discord via Zapier, such that after a user subscribes to a plan he starts getting premium alerts on Discord.
You can read more about it at: https://handysolver.com/blog/shopify-discord-zapier-integration
We are looking at customizing ready made solutions to meet the client’s needs.
BYBO: If somebody reading this interview wants to get rapid development done what advice will you give them?
Rahul Matharu: Firstly you should be clear about what you want to get developed. The more clarity you gain in that either by yourself or by connecting with a consultant or a wireframing team, the better it will be.
The important thing is that clarity will help you get an accurate quote, no matter whom you take the quote from.
Build a very detailed document of your requirements. Choose a technology stack which is backed by some big companies (like Flutter by Google) or those which are popular enough by having large communities.
This will make it easier to switch, because in the end what happens is that no matter who develops the code for you, it will come to you. And suppose your developer or developers team changes it should be possible to assign new developers. Further ensure some video or written documentation keeps getting created along side.
Also simplify your requirements to a clear purpose. What's the main thing it's trying to achieve? Robustness is more important than being feature rich. And robustness comes by building something simple but meeting a need.
Finally deploy live for a quick Beta test with colleagues, friends and family. The real version is always the second one!
If you are looking at Digital Transformation or building a software or SaaS solution, don’t hesitate to connect with Rahul Matharu at: [email protected]