Table of content

    Written by Siddhartha Bokaria and Sunil Kumar, Software Engineers at MyGate

    1. Introduction


    The pain of creation, managing and distribution of application builds is a well known topic. As it occurs during any company’s journey, we have struggled finding the right rhythm of what we term as ‘build automation’. The core necessities remain relatively standard; the need for a developer to seamlessly distribute builds to validation engineers while operating within rigid virtual private cloud (VPC) zones.

    In tightly knit independent application squads, we tend to take small steps toward harmonising an application (app) distribution strategy. Provided the product build and flavour pipelines are present, we start with the bare necessity of issuing a command that allows the package flow through proxy zones and get published for consumption.

    We do not plan on reinventing the wheel but favour assembling the right solutions to manage our app distribution needs. As such, first in the list of agenda is to perform a basic survey of available options.

    2. Literature survey


    There are a host of projects dedicated to solve this problem. Some of the prominent ones are listed below with a brief overview of their capabilities.

    Fastlane [1]
    As their official phrase states, “app automation done right”. This includes a suite of pipeline centric features of extracting screenshots, beta distribution, app store deployment and code signing. Definitely what we should be setting up in the long term. However this will be an overwhelming solution for a basic app distribution need amongst squad members.

    Firebase [2]
    Previously part of Fabric’s Crashlytics, the upcoming Firebase app distribution which is now in beta shows the most promise and falls right within our ‘goldie lock zone’. It focuses on distributing development builds to a group of testers. It allows various approaches including console, CLI and gradle based scripts reducing friction to adopt. It promotes access to builds through a simplified portal and targeted emails. It provides a basic dashboard for central management and activity overview. It supports both iOS and Android builds. And, the entire approach falls under free tier at the moment. Adding GCP to our ecosystem is a task by itself and once allowed this is a frontrunner and a panacea to our problems.

    AWS mobile hub [3]
    A collection of products rather than a targeted solution. It is a feasible option and would require you to align application building activities from the beginning to account for the chosen framework. A relatively steep learning curve might be a determining factor. For an ongoing set of projects such as ours, this would require additional push for a consideration.

    Apple testflight and Android test tracks [4]
    This is a good platform for sharing early stage releases. It is predominantly used during beta testing. You would expect a certain level of stabilisation prior to using this facility. The portals often carry download volume quotas for your app listing. We need a simpler alternative to this.

    3. Our approach


    Everything said and done, we were yet to figure out the right approach that fit into our workflow. Our current goal is to reduce repetitive and time consuming activities of sharing builds with the validation team. Just when velocity of iterations were making the task of sharing builds harder, we came across a simple do it yourself (DIY) app distribution platform called Librarian [1]. This looked like a good place to start with a simple command based submission interface and light UX. Though getting this to a central location was tricky whilst navigating through layers of aforementioned VPC zones, it allowed us the flexibility of carving out our own build flow. That led to the following deliberate steps to set up our own distribution pipeline targeted at an AWS environment.

    3.1 Key modules

    • A shell script to allow preparation of the environment. An Android engineer would ideally not want to be distracted with environmental setup required to support background operations. The script helps with installation of python package manager and AWS CLI. It also triggers configuration of AWS environments which means the developer should keep the access tokens ready.
    • Gradle file extension that exposes the task to the developer. A simple configuration at project level file helps identify remote resources. The app level changes allow you to link tasks to the gradle list. Now you can chain the ‘assemblePackage’ and ‘publishRelease’ tasks for seamless build distribution.
    • The final module is an example implementation of a bridge API. Librarian does not support remote submission of build currently and the accompanying NodeJS based API helps activate that feature.

    3.2 Quick start (Android)


    With all the prerequisites satisfied [5], set up your build environment by following these simple steps.

    1. Place the 2 files (s3Upload.gradle and publish_checkpoint.sh) in the app root where the build.gradle (for app) is present. Synchronise project and add files.
    2. Edit build.gradle (app level), put this line at EOF: apply from: ‘s3Upload.gradle’. Synchronise file.
    3. Edit build.gradle (project level), put following lines below allprojects: repositories section of the file:
      • project.ext.AWS_S3_BUCKET = ‘s3-bucket-name’
      • project.ext.BRIDGE_HOST_PATH = ‘http://localhost:3000/api/librarian’
      • Synchronise file.
    4. Refresh gradle command list.
      • The newly available commands are ready for use.
      • ./gradlew tasks –all
      • You should be able to locate the publish tasks under ‘other tasks’ group labelled as ‘app:publish-variant-ToS3’
      • ./gradlew <publish-task-name>
    5. For 1st time users the utility will setup the necessary packages (pip, aws cli installation, aws environment configuration).

    3.3 Illustration


    And, here is the workflow illustration to assist the speed readers.

    4. Roadmap


    This approach is working for us and has reduced the hassle of dealing with unorganised sharing channels. Through this post, we plan to share it with other teams and seek inputs. Some may be using alternatives easier to adopt approaches that might interest us. Others may embrace it and contribute to its development. In either case, the following items have been planned.

    • Extend approach to support iOS builds.
    • Extend support for other cloud storage options.
    • Investigate alignment to Firebase app distribution channel. The preparation script should now ideally target Firebase CLI and gradle script can be replaced by the public plugin.

    Head over to our Github repository [5] and try it out yourself!

    References

    [1] App automation done right
    https://fastlane.tools/
    [2] Firebase App Distribution
    https://firebase.google.com/products/app-distribution
    [3] AWS Mobile Hub – Build, Test, and Monitor Mobile Applications
    https://aws.amazon.com/products/mobile/
    [4] Apple testflight and Android test tracks 
    https://developer.apple.com/testflight/https://developer.android.com/distribute/best-practices/launch/test-tracks
    [5] MyGate app build distribution utility
    https://github.com/mygate-tech/mg-build-automation
    [6] Librarian
    https://github.com/biocross/Librarian

    Table of content

      Around 60% to 70% wet waste produced daily in cities like Bangalore and Mumbai is wet waste or organic, biodegradable waste. 

      It is extremely illogical for this waste to be dumped into landfills if it can be treated at home or in the backyard. Not only does it reduce the pressure on landfills, but also proves to be profitable to societies and individuals. 

      Composting helps to dispose off wet waste in a productive way, creating sustainable gardens, and also provides the opportunity for societies to generate extra income by the sale of compost fertilizer. It enriches the soil quality, helping it retain moisture and reduces the waste volume handed over to the government, which is already struggling pitiably to process India’s phenomenal waste generation (1.50 lakh metric tonnes daily).

      Most people are repelled by the idea of composting because they’re uninformed and present arguments like, ‘compost smells’, ‘composting is messy’, ‘it takes too long to compost anything’. All of these facts are right if composting is done improperly without the right initiation. Let’s get right to it. 

      What is organic waste?

      It’s biodegradable (green waste) natural waste materials (from plants and animals) that can be broken down into simpler components, carbon dioxide, methane, water, by natural processes such as composting, aerobic/ anaerobic digestion. 

      What is composting?

      When the organic waste is decomposed, treated and recycled to create nutrient-rich soil fertilizer and conditioner, it’s called composting. It’s natural and biological.

      What is considered organic waste?


      Nitrogen rich waste (green waste)

      • Cooked and uncooked food/leftovers (including crushed eggshells)
      • Vegetable/fruit skin, seeds, dry snacks, grains, bread crumbs, dairy products
      • Juice, old wine, fruit core
      • Coffee grounds, used tea powder and tea bags

      Carbon rich waste (brown waste)

      • Used paper plates/cups, food-soiled paper (excluding Styrofoam), egg cartons
      • Paper towels and tissues
      • Grass clippings, leaves, dried flowers, grass, cut flowers, weeds
      • Cardboard boxes, unpainted non-treated wood and plywood, sawdust, old notebooks (plastic free)
      • Dry cat/dog food

      Main types of ‘at home composting’


      Vermicomposting means decomposing waste by using earthworms (red wigglers and red worms). It is richer in nutrients and composts faster than regular hot composting, which is done in bigger containers under the sun. Aerobic composting is traditional composting in the presence of microorganisms exposed to air. Composting tools include bins, tumblers and countertop electric composters. 

      Easiest DIY way of composting at home


      There should be a Carbon: Nitrogen ratio of 30:1 in your compost, three parts brown waste to one part green waste. 

      1. Pick a medium-sized earthen or plastic container and drill 5-6 holes on the sides (more if the container is bigger).
      2. Place newspapers and cardboard under the container to contain any seepage.
      3. Line the bottom of the container with soil or shredded newspaper.
      4. Start adding alternate layers of green waste and brown waste. You can also introduce half composted materials like buttermilk or cow dung to kickstart the process.
      5. Cover the top with plastic, cloth or wooden planks.
      6. Depending on the aeration and the type of waste, your compost will be ready when it turns into a thick, dark brown, earthy-smelling sludge.

      The pile shouldn’t be too hot or cold and properly aerated. It usually takes two months for the above listed process to produce completely ready compost. You should turn the compost pile every 4-7 days. Use a trowel to dig into the lower layers where you should add fresh piles of green/brown waste. When the pile shrinks to half the size and the waste is unrecognisable, your compost is ready.

      The Don’ts of composting at home

      • Do not use meat, bones, fatty foods, grease, seed producing weeds and dairy. They take longer to break and attract flies.
      • Don’t add pet feces and diseased garden plants.
      • Do not use compost bins as a place to dump green waste haphazardly. This is a curated process.
      • Do not add big chunks. Cut down all waste into smaller pieces.
      • Do not throw away wet waste not fitting in the pile. Maintain multiple compost bins at the same time.

      Community composting


      Societies of today understand that waste is an asset, not an inconvenience. The scope of community composting starts from backyard composting in housing societies but can extend to entire neighborhoods and town/city communities, entailing, closed-loop (for society only) as well as commercial and scalable initiatives. From maintaining worm farms to static pile composting, from Bokashi method to turned windrow style, or just simple in-vessel composting, the options are diverse. Green living, cleanliness drives, resource stewardship, and eco friendly waste management education and installations have been the tell-tale characteristics of active and mindful communities. 

      A society can start with a manually operated outdoor composters placed inside its garden or invest in an Organic Waste Converter (OWC). Let’s explore both ideas.

      While we understand that open pile composting may not be the ideal way to compost due to  space constraints in residential societies, in-vessel composting can be less of a hassle.

      Compost tumblers are barrels on stands (or round bins with no assembly) and require 5-6 spins every couple of days or a daily roll each day, depending on the model. You’ll have models with the option of dual chambers for different stages of decomposition and an outlet for compost tea (liquid fertilizer from active compost pile). The C:N ratio of what goes inside still applies (as per the user manual). Prices range from Rs 5000-Rs 13,000 per unit. You’ll need to buy a few based on the number of apartments, the quantity of waste they generate and also train the gardener/other service staff in the entire process. These options are for small societies that don’t produce too much waste on the daily. The turnaround time for compost tumblers is four to six weeks if the mix is right. But it’s a highly affordable option for housing societies. Even ten tumblers can get you decent results for 200 apartment units.

      Organic waste converter (OWC):


      For societies that don’t prefer manual composting and have no space for compost piles and multiple tumblers, there’s the alternative to use fully automatic organic waste converters. They produce compost in 24 hours and can deal with large quantities of wet waste generated daily. Models can range from processing power of 5 to 10 batches daily with a capacity of 25-100 kg waste. Manual converters take at least 15 days to produce the same results. A good quality electric OWC can cost between Rs 3.5 lakh to Rs 4.5 lakh and above. Semi automatic machines could cost between Rs 1.5 to Rs 2 lakh. 

      Tax benefits on compost wet waste produced by Housing society


      Housing societies that produce over 100 kg of waste and have an area of 20,000 sq meters are required not only to segregate dry and wet waste but also do on-site disposal. In cities like Mumbai, the government is offering a 3% property tax rebate to housing societies that compost wet waste and up to 7% rebate if a society gives zero garbage to BMC. Such heavy incentivisation could become the norm across the country if citizens actively participate in waste management self-starter initiatives. Other than that, there’s always a little profit to be made by selling organic compost in farmers markets or even online. Eventually, the OWC would pay for itself.

      Table of content

        If you’re living in a gated community or apartment complex, you’re well aware of the complexity of apartment management. Managing its day-to-day operations like amenities, security, common areas – they all need to be administered by someone or, preferably, a group of the owners. As there’s a lot of room for disagreement in how these matters are handled, the authorities have mandated that all housing societies be registered under ‘The Society Registration Act’, which stipulates legal policies to aid in the administration. A society should be registered within 3 months and is only excused from registration in serious situations. 

        Advantages of society registration

        Registered housing societies receive specific powers that permit them to address society issues in a formal/legal manner. Therefore, a registered housing society is well equipped to tackle the challenges by deciding on bye-laws  that will be binding on anyone residing in the community and how the association may deal with everyday issues. 

        Here are some instances where the powers of a registered housing society can be beneficial:

        • Violation of rules: Only a registered association can take formal action against residents violating accepted rules of the society such as using the residential space for commercial purposes, disagreeing or delaying the payment of maintenance fee, perturbing neighbours etc., 
        • Addressing grievances: A registered association can address common grievances regarding maintenance, security, new requirements and more. The association can also initiate and promote cultural events, drives for charitable purposes and any other community activities for the welfare of the residents.
        • Ensuring resident security: A registered association is responsible for enforcing the law and hence can take measures to ensure the safety of the residents. For example limiting the entry of visitors during the COVID-19 pandemic. The society can also take a call on limiting the entry of unwanted visitors, salesmen and others. The association also ensures that the maintenance of commonly used facilities is carried out regularly. This association can also take action against staff in case of improper maintenance.
        • Settling disputes with builders: The association can also take legal measures against builders in case of disputes regarding the residential space or violation of building codes. It must be noted that The National Consumer Disputes Redressal Commission (NCDRC) only looks into complaints filed by registered associations 
        • Maintaining records: A registered association is by law required to maintain proceeding reports and details of common facilities. The information regarding these facilities and the common ownership scheme is carried in the Deed of Declaration and can be accessed in the future for legal purposes. This ensures the smooth functioning of the society and offers complete transparency
        • Ease of taxation: Residents of a registered society will find it easy to file for property-related taxes, GST applicability and other taxes. Banking procedures are also easier to carry out when society is registered. A gated community must also be registered before implementing society management software or introducing resident welfare applications.

        Process of getting the society registered

        Now that we know why the apartment association has to be registered, how do we get it registered? To start off, the Apartment Owners Association needs a minimum of 7 members, who are unanimously elected by society. The association includes members (apartment owner), associate members (other than the owner but lawfully occupying), a general body (all members of the association) and a management committee (a president, a vice-president, a secretary, a treasurer and eight other members). 

        Selected representatives are tasked with preparing a memorandum that details: 

        • Name of the Society 
        • Names of the residents and their occupations
        • Objectives of the Society
        • Bye-laws by which the society is governed. The bye-laws can be changed if the circumstance demands it.

        The following documents are necessary for registration

        • Name of the Society
        • Address of the Society
        • Proposal letter duly signed by the executive committee and addressed to the Registrar of Societies
        • Proceedings of the first general body meeting 
        • Memorandum of the Society 
        • Standard fee

        Management office term and elections

        The members of the management committee are elected unanimously by the members of the community. The management of the association usually holds office for a year. Re-election happens annually but can be conducted mid-year if all members are consenting.

        Table of content

          Written by Divyanshi Bhamri, QA Engineer at MyGate

          1. Introduction


          Hello again. This is the fifth article of a series on performance testing with Locust. I hope you all enjoyed my previous articles. 

          In this article we will be talking about distributed load testing using Locust or in simple terms Master-Slave load testing using Locust [1].

          Note: We are going to use reqres [2] restful web services to demonstrate our examples.

          2. Why distributed testing?


          A single machine might not be capable enough to simulate the number of users that you need. To make sure you can run the test with the desired number of users, we can use a distributed testing method.

          Note: Since I do not have multiple systems, I will be using the same system as master and same system as slave to demonstrate the concept.

          Before starting let us familiarise ourselves with some terms.

          Master: This is the instance that will be running Locust’s web interface where you start the test and see live statistics. The master node does not simulate any users itself. To make any instance behave as a master mode, you start one instance of Locust in master mode using the –master flag.

          Note: There will be only one master in the setup.

          Slave: This instance will be simulating the users. To make any instance run in slave mode, use the –slave flag.

          Note: There can be one or more than one slaves in the setup.

          Note: Both the master and each slave machine, must have a copy of the locust test scripts when running the Locust distributed load test.

          Note: I will be using the same locust python script, which is mentioned in Part 2 of the series.

          Master and Slave implementation
          using simple diagrams

          3. Case: Implementation of the Master and Slave mode


          Step 1: Move to the directory where you have copied the script. I have named the same script as master.py

          Step 2: Run the following command to run it as a master mode.

          Step 3: Open a browser and navigate to http://localhost:8089

          You will notice that one more section has been added for slave options. Currently this will be 0 because we have not added slaves to the master.

          Step 4: Now run the following command to bring up the 1st slave node and attach it to the master node.

          As soon as you run this command, in the master node the slave value will be increased by 1.

          Note: We can use 127.0.0.1, because master and slave are on the same machine. But if your master is on a different machine, please enter that particular IP.

          Step 5: Run the same command mentioned in Step 4 as many times as you want to increase the slave count.Note: I will show a demo with 2 slave nodes.

          Step 6: Enter the number of users and hatch rate as per your requirement. click on the ‘Start swarming’ button.

          Step 7: The test will start automatically and you will see the result immediately.

          Distributed testing is one of the best ways to simulate an environment in which you can mimic your production setup with as many users as you want.

          A common set up is to run a single master on one machine, and then run one slave instance per processor core on the slave machines.

          4. Conclusion


          This is the fifth part of the series. In the next part we will learn about more interesting aspects of Locust.

          Thanks for reading. I hope this article provides you the basic idea about distributed testing with Locust.

          References

          [1] Locust Documentation
          https://docs.locust.io/
          [2] Mock API
          https://reqres.in/api
          [3] Distributed Load Testing
          https://www.yangyang.cloud/blog/2018/11/a3/distributed-load-testing-by-locust/

          Disclaimer

          This is a curated post of an article published at Medium.

          MyGate was founded in 2016 by Vijay Arisetty, a former Indian Air Force (IAF) pilot who received the Shaurya Chakra for saving hundreds of lives in Andaman & Nicobar Islands in the 2004 tsunami. After rigorous training at the National Defence Academy (NDA), he was part of the IAF for over a decade, where he was posted in different parts of the country and even led missions abroad to bring peace or maintain law and order. 

          It was a sports injury that ushered him into corporate life. After studying at Indian School of Business in Hyderabad (ISB), he worked for a few years in corporate before arriving at what has become his life’s goal: transforming gated societies for the better of those who live and work there.

          Our CEO received the Shaurya Chakra for saving 100s of Indian lives
          All three of our founders are graduates of prestigious Indian institutions: IIM-A, ISB, IIT-Guwahati, IIT-Kanpur and NDA

          Early on in his journey, Vijay was joined by Abhishek Kumar and Shreyans Daga, both industry veterans and students of prestigious Indian institutions (IIT-Kanpur & IIM-Ahmedabad and IIT-Guwahati & ISB, respectively). All three of them left their comfortable corporate jobs to take on the difficult path of entrepreneurship in India. That too by creating a completely new sector, by building technology to make the lives of urban families more secure and convenient and to empower the millions of security guards, daily help, delivery executives and others that service them.

          This is a massive challenge, and in just four years MyGate has been able to solve much of it with technology, determination, teamwork and an amazing reception from millions of its users. We are well on our way to being recognized as a global technology leader, alongside the likes of Amazon, Microsoft and Google. 

          MyGate is well on its way to becoming a global technology leader
          To realise its ambition, it has raised major funds from venture capital firms

          Like all of these companies, MyGate too needs to raise investment in its early years to invest in its team and technology and create a business that’s sustainable for the long-term. Such investments are nearly always made by venture funds that raise capital from high net worth individuals in all parts of the world. Over the past decade, the majority of investments have come from the USA, Europe, China and Japan. These investments enable companies such as ours to develop products and technologies that improve the lives of the 1.3 billion Indians much better and to hire millions of Indians and support their families. 

          MyGate has also received investments from multiple venture funds, with a majority from an India-based VC fund, aside from US-based Tiger Global Management and J Soros Capital Management and a low single-digit, minority investment from Tencent (a pure financial investment with no decision making authority).

          MyGate will keep striving to become one of the world’s leading technology organisations while keeping its footing firmly in India and building it on Indian values. 

          A brief about our journey:

          1. We have 1000+ people as part of MyGate employed across India; 
          2. 2 lakh+ security guards are now able to work and upskill themselves with our technology;
          3. Lakhs of maids, cooks, nannies and drivers are able to find better job opportunities on our platform;
          4. All data captured by MyGate always remains within India;
          5. We’ve built one of the most advanced, comprehensive, reliable products from India and now used in 9000+ societies and by 1.6 million+ people;
          6. We’re the only company in this space to adhere to Global GDPR privacy guidelines and ready for proposed Indian data privacy bill;
          7. Worked closely with Karnataka State Police to create a technology platform to enable movement in Bangalore for delivery of essentials. Processed more than 6 lakh requests to help people during the lockdown;
          8. Raised funds internally to support hundreds of security guards with food and other essentials during the lockdown;
          9. Even in times as tough as the lockdown, we have taken care to ensure zero layoffs. 

          Our customers, team and technology are core to our company and we will keep investing in them to create a sustainable business for the future. We look forward to your continued support and blessings to build a global technology company out of India.

          Table of content

            Written by Veerraju Chitturi, Associate Product Manager at MyGate

            Unprecedented times require unprecedented measures. On Mar 25, a 21-day nationwide lockdown was announced to contain the COVID pandemic. But the execution of the lockdown was left to the State governments. Needless to say that the state governments across the country were overwhelmed since they had no precedent to deal with such a crisis. But here’s the tricky part: How does the State Government ensure the movement of essential services i.e. Groceries, Healthcare, Essential e-commerce, etc, and control the misuse of such privilege. Answer: Issue passes for movement.

            There are downsides to issue physical passes. One, people have to go out to police station to get passes and you need a pass to go out(Catch-22 anyone?). Two, this was very inefficient since people were thronging to police stations increasing the risk of the spread among law enforcers. Police authorities needed a tech solution to handle the crisis.

            It all started when the State Police’s top brass reached out to one of our founders asking if MyGate could help them to build an ePass solution for essential services in 4 days. And we said YES!

            After all, MyGate’s expertise lies in facilitating seamless visitor entries into gated communities and corporate spaces. Since we already have a presence in 1.5 million homes (that’s all the households in the entire country of New Zealand :P) and validate over 60 million visitor validations in a month, so scale was never going to be a problem since our teams built products to scale.

            Problem lies in building a solution in such a short period of time. Bottomline was to allow all the essential services to function seamlessly. In a MyGate society, visitors would request for access and residents would approve/deny such requests. However, here we had to facilitate movement of employees/citizens from their home to their workplaces (essentially permission to go outside their residences). It was a problem turned upside down for us.

            So, let me try to break this down to 4 different parts.

            1. Allow Organizations/Individuals to request a pass
            2. Enable Police authorities to make a decision to approve/deny
            3. Enable Organizations/Individuals to carry a digital/physical pass
            4. Mechanism for authorities on ground to validate the passes

            Product Engineering/Design Considerations

            1. Resources and Time: Easy to develop from an engineering perspective
            2. Use existing solutions: Building features on top of existing systems (apps/web applications) by tweaking according to requirements
            3. Scalability: Since the system has to support potentially thousands of organisations and lakhs of citizens it has to work at scale
            4. Seamless, Secure and prevent misuse: Making it easy for organisations to request/approve and use/carry passes using online/offline channels

            War Time


            I know usage of the word “wartime” is at an all time high as per Google Trends but I can’t help not using it in this context. It was indeed a wartime and we were working on a tight deadline of 96 hours which meant that the entire Product Lifecycle i.e. Ideation to Release had to be done in 4 days. What this meant for us as an organisation was that we had to invest enormous resources i.e. leadership, engineering, product and design working simultaneously taking some of the decisions independently once the basic specifications as to what needs to be built were arrived at.

            Execution


            Such an enormous project with a steep deadline meant we needed extraordinary coordination among various teams. And where were all our resources? ‘At Home!’ We were all working remotely and that meant we had to coordinate digitally using whatever medium we could lay our hands on i.e. Meets/Hangouts/Zoom/Whatsapp. Of late we have all read zillions of articles,or experienced it ourselves, how difficult it is to work from home.

            It was like an extended Hackathon. From founders to engineers, everyone who had to work on the project got together in a war room and brainstormed for 2–3 hours on what our plain vanilla product would be. We had arrived at an exhaustive list of product specifications for all the individual products that were going to build and got to work at midnight.

            We had split ourselves into various teams with digital war rooms where all the discussion took place. We had war rooms for all possible purposes: Leadership, Product, Dashboard, Android App, Checker App, Backend. Most of us had already bookmarked Google Meet War Room links and some of us even knew the URLs by heart at the end of the exercise.

            Product Specifications:


            After deliberating in war rooms for 2–3 hours, we arrived at the following product specifications

            1. Build a web application for the companies to register and login to request for a Pass
            2. Create Super Admin/Admin roles on the same web application to approve/deny organisation requests
            3. Build an app for individual pass requests where one can view/print a pass
            4. Build an app for authorities to validate the passes

            Products

            This was the final output of our efforts. We named the product as KSP CLEAR Pass using a set of acronyms
            KSPKarnataka State Police
            CLEARCOVID, Law Enforcement Assistance to Residents

            KSP CLEAR Pass Web Application


            This web applications we had built served three purposes:

            1. Enable organisations to register and request passes for their employees
            2. Enable Police authorities to approve/deny organisation request(s)
            3. View reports of all the organization requests that were approved/rejected jurisdiction/city wise

            Product Blog: https://mygates.techletsolutions.com/blog/ksp-clearpass-companies/

            KSP CLEAR Pass for Individuals


            We built an Android application

            KSP Checker App


            We needed to control the misuse of the passes and hence we built an app which can scan the QR code embedded in the ePass to verify authenticity. And we made the app completely offline.

            Additional Products we built for Karnataka State Police

            Inter State Pass: As soon as there was Lockdown 2.0, we quickly leveraged existing systems to build Inter State Pass for individuals who had to travel out of state due to Emergency purposes

            Inter District Pass: We used the existing framework to facilitate inter district movement of people

            Result


            We finally shipped the product in 96 hours!! Some of us had slogged and only slept for couple of hours in a day. This was a tremendous experience for us as an organization to ship a comprehensive product which pushed all our capabilities to the limit.

            Our product received enormous response from organisations and citizens of Bengaluru. This has allowed resumption of all essential e-commerce services within Bengaluru much quickly. We are glad that we could help the government authorities during such tough times and restore the city’s economy much faster that the rest of the country.

            Links to some of the news articles that covered us for the ePass effort

            https://www.ft.com/content/1b48b439-6a10-42d8-ad7e-c1272e2a2b21

            https://www.livemint.com/news/india/covid-19-lockdown-how-bengaluru-restored-essential-services-faster-than-others-11585656817304.html

            Read this story on Medium.