Our Approach


Our first step in engaging with customers is understanding the ‘why’ and aligning with their vision.

We believe everyone involved in the project must understand the ‘why’ and recognize the potential contributions each one of us involved could bring. Our initial scope briefing sessions involve product thinkers and lead developers, the objective is to align with your vision and look the problem from your perspective. This exercise often requires us to observe your target users, their behaviors and digital touchpoints.

**For Lawmatters – an online marketplace that makes lawyers more discoverable and accessible, our team visited a law firm in Bangalore and interacted with graduates / interns, junior and senior law practitioners to understand their routines and challenges. At this point, we also try to benchmark your product / service with others in the market, comparing at a high level how they’re digitizing their business. This summarizes what we do to understand the ‘why’ and the size and depth of the impact the project is intending to bring.


Once we articulate the ‘why’, we define the problem, visualize the challenges and identify gaps we could fill.

Moving one step forward from understanding the ‘why’, we write down the problem statement. What is the pressing problem the customer’s business intends to solve immediately, in some time from now and at a later point? What are the gaps that technology can fill? What aspects of the problem need to be solved online and what need to be solved offline? The intention of this stage, is to understand the problem, ask the right questions and visualize digitization opportunities.

** For the pain app, a one-touch-call-the-doctor app for elderly patients admitted in hospitals, our team analyzed the need to see the opportunity with technology – 1) Having a tablet app placed next to the patient’s bed, helps elderly patients call the doctor or nurse in one touch when they’re in pain. 2) It relieves family members and let’s them move around not having to always be stationed near the bed. 3) It tells the doctor which patient needs to be visited on high priority during their rounds.


At this stage, we identify ways to solve the problem holistically for your business, with digital technologies.

Once we have defined the problem statement and listed down digitization opportunities the problem presents, we identify a suite of apps, modules and software services that could potentially solve the problem digitally, holistically, creating an integrated experience for all the users impacted and creating expected outcomes for the business. For Vroom, a ride sharing app, we sketched a mobile interface for the consumer with a series of touchpoints / interactions, a mobile interface for the driver with a series of touchpoints / interactions and a set of tools & controls for the platform administrator to monitor performance and manage operations. As a part of envisioning the solution, we also list down the constraints – users’ tech savviness, access to internet, digital devices, hardware limitations and other factors that will influence how the solution will be designed.

**For Embrace’s smart baby warmers, installed in rural hospitals, internet access was a challenge; our solution was designed and architected around Bluetooth (BLE – Bluetooth Low Energy) and Cloud. For realtime location dependent apps like Vroom, when internet fluctuates while traveling underground or gps is inaccurate, the app would fetch location from the phone’s telecom network provider.


Together with your team, we work towards creating an execution roadmap, phased out in alignment with your business goals.

Once the solution is conceived, we put together a detailed proposal that documents our efforts in the first three stages – the client needs, proposed solution and scope, time & cost estimates. The proposal will clearly outline the scope of work, list down apps / modules / services that will be designed and developed by Codewave and also 3rd party services the solution will depend on (if any). The objective of this stage is to be able to propose a clear execution roadmap, phased and aligned with client’s business goals and marketing plan. Once the proposal is discussed with the stakeholders and accepted, we elaborate it further and create an SOW (Statement of Work) with deliverables in milestones. SOW is the project contract that is signed by Codewave and the Client, which defines milestones, deliverables and payment terms. In this stage, we create a project plan, aligned with the milestones captured in the SOW, so the scope is baselined for every milestone and a detailed project schedule is created (with work broken down into smaller chunks / tasks).

** For Testimoney, an investment management app, Perfios was identified to be a suitable 3rd party integration. We also enable our customers take important – “Make” versus “Buy” decisions at this stage, by benchmarking existing services available in the market and comparing with customized modules that could be built from scratch.


At this stage, the design team comes up with detailed wireframes & visual designs. UI/UX is reviewed and finalized.

Once we have a sign off on the SOW, team is introduced to the client team and a vision briefing session is scheduled. Our kickoff meeting involves everyone assigned on the project, from designers to developers to QA apart from the business team. The intention of this exercise, is to ensure everyone, along with the designers gain a high level understanding of the solution and the execution plan (the project plan); and then dive into important use case level detail, possibilities, dependencies, limitations and timelines. The design team with product thinkers, come up with initial wireframes – work in close feedback loops to come up with the visual design and freeze on the designs. During this stage, minute details at the page / screen level are progressively elaborated and frozen. While the product design team works on the design, the development team comes up with the sequence diagrams, flowcharts, backend design and database schema. At the end of the design phase, we have approved designs and a sign-off on the content and functionality.

**For OyePaisa we sketched the entire flow, user interactions on paper and elaborated the screens with visual design. We worked in very close feedback loops with the client team who were taking continuos user feedback from beta users, starting from the design phase. The screen designs were placed in sequence and linked using Invision app, so users could experience the flow as in a prototype, even while the app was being designed.


We build the solution with the right choice of technologies, considering scalability, security and overall stability.

The last and the most important stage – is development. This stage starts with finalizing the right technologies, frameworks, libraries, plugins and 3rd party services (if any) required for the development of the solution. Development generally has three pieces – frontend, backend and the APIs development of which mostly happen in parallel. We make sure the solution is developed in a way that the backend and APIs are developed only once and can be consumed by Web (desktop devices), Mobile (phone / tablet devices) or Smart TVs. With the number of digital platforms increasing, we would recommend architecting the solution in a device agnostic way, so it can be quickly extended / adapted to a new device with minimal effort. The solution is developed in alignment with the project plan, deliverables are dished out in predefined mile-stones. We internally follow agile practices, have weekly deliverables and progress review meeting with the client team. We use Podio.com for daily collaboration, feedback and consensus gathering. Once deliverables for the specific milestone are developed, they are passed onto the QA team for testing. Upon acceptance of deliverables, milestone is closed and payment is released.

**For Vroom, the SOW was elaborated to a great level of detail, with each feature / use case numbered and referenced in the project plan (which had further scope breakdown). Each task had an owner and a due date, mapped and all project activity was tracked. We also maintained a “Meeting Tracker” to document meeting minutes / feedback / discussion points that needed to inform ongoing development.

Learn more about the culture & explore opportunities to be a part of the team