Herotalkies is a movie streaming service that allows Tamil audiences worldwide to watch new Tamil movies online legally.
Herotalkies had hired a team of software developers and an experienced CTO to develop its platform in-house. However, eight months into the development team had various incidents of perpetually delayed releases. The founders were getting worried that they were being overtaken by competitors and that they would be too late. Hence they engaged Akrity as a software development consulting team. When we took over the project we conducted two analysis activities: one, a high-level code review of the existing code base to identify any architectural flaws, and two, a full review of the software development practices employed.
The existing development plan had incompletely defined features and no defined priority. Lack of priority on the features meant that the team was not directing itself well Collaborative workflow methods and tools were not employed. Many times work done by individual developers would become redundant in the next cycle resulting in heavy rework causing huge productivity losses. The code base was built on top of a weak architecture. We identified that client-side and server-side tasks were not well bifurcated exposing some security risks Minimum server-side bookkeeping, for handling user payments was missing which was required for handling customer queries The code and content was so tightly bound that releasing content to the platform needed a new software release
After analyzing the problem, we executed the solution in 3 key steps
STEP 1: Creating and communicating a prioritized product roadmap
Our first step was to prioritize the application features before putting them under development. We recommended the following thumb rule for features prioritization, (which the client duly accepted):
- Revenue-generating features
- Security enhancing features
- Software stability features
- Marketing-related features
We called for workshops and heavily prioritized the features using the above thumb rule and built consensus among all stakeholders regarding the product roadmap. With this categorisation we were able to define a minimum viable product that could be released in the given time frame and the business objectives could be met.
STEP 2: Setting up productivity workflow and workflow tools
We made the following recommendations and set up processes in place to
- Deliver software in short incremental releases
- Regular status updates for all stakeholders
- Focus ONLY on the highest priority features first
- Use Trello for defining releases and communicating status between stakeholders
- Use git as a distributed version control with extensive use of branching and merging
STEP 3: Execute and track multiple development sprints
The resident software developers at Akrity Labs collaborated heavily with the developers at the customer organization delivering refactored code meeting the minimum design guidelines we had set up. During these sprints, we ensured to
- Make architectural corrections by refactoring existing code
- Write new code compliant with maintainability standards
- Record bookkeeping of user payments
- Decouple software releases with content releases on the platform
After engaging Akrity the first productive release was made within 40 days of takeover of the project. This was a major achievement for both Akrity and Herotalkies. For the first time, customers of Herotalkies were able to make payments using a secure payment gateway and watch movies uninterrupted. The client has fully adapted to the new workflow because it helps them
- Release software faster,
- Manage features better, and
- Produce more maintainable code
The client continues to appreciate the work that has been done by Akrity and acknowledges the role of Akrity Labs in reaching a really critical business objective in such a short time.