Case Studies

Some of our favourite success stories

Embedded BI ToolWebsite
golangpostgresmetabasedockerclojure

We recently built an embeddable self-serve BI tool for Pashi - a YC startup that is building operating systems for manufacturing. They wanted to provide monitoring dashboards to their customers(enterprise manufacturing companies) and also allow them to slice and dice the data themselves.

The system was built on top of Metabase and Postgres. We built our in-house streaming engine to stream real-time data from Pashi Datastore to analytics service. We then built a parser that can dynamically create a data model for analytics based on different stages/devices involved in the production line. We then reversed engineered Metabase API from source code / sparse document to automatically generate queries, snippets, visualizations, and dashboards needed by Pashi’s customer. One of the most challenging aspects was the ability to deal with dynamic data model and write analytics queries on top of them

PirloWebsite
GolangNodejsReactDockerAWSAndroidKotlinAppiumCI/CDMobile Deive Farms

Pirlo.io is an in house project with an aim to make it extremely simple for app developers to test their mobile apps. We built a complete no-code platform that allowed anyone to automatically generate end to end functional smoke tests for their android app without writing any code. Users needed to install our android app on their phones and then manually test different flows in their app once. Our android app is magically able to identify what user did and automatically generate functional end to end tests. Users can then directly run these tests on their device or on any cloud testing service like (browserstack/sauce labs etc). We provide CI/CD integrations with all major providers. We also provided a web dashboard where users can add custom behaviours to their test script - like conditions, loops, variable, external api calls etc.

We had to work on lot of low level hacking to get this working

  • Hack the android Accessibility Engine as well as Touch Dispatch Engine to reliably capture user interactions with their apps
  • Decode Android UI framework to be able to generate reliable multiple identifiers for element that user interacted with
  • Intelligent code execution engine that is able to detect failures during runtime and intelligently retry.
  • Ability to Maintain and Heal tests automatically with minor UI changes in the app
  • Ability to detect system modals / ads during execution of tests
  • Instrumenting App SDK with custom Smalli code to provide multiple intelligent
  • Ability to generate and run Espresso tests as separate module outside the APK.
Fraud Detection Engine
PythonFlaskGunicornDockerRedisAWSMySQLSQSData PipelineNewRelicMicroservices

Company: Xapo

This service was built for Xapo, one of the biggest Bitcoin Wallet and Vault services at that time. We redesigned and developed the core engine for their entire transactional fraud detection system that helped Xapo to identify/block fraudulent transactions/account takeover situations in real-time. We were able to improve the performance of their system by 100% along with massive improvement in scalability, extensibility, resilience, and reliability

We built the entire pipeline as a composable system of different plugins and rule engines. Each plugin was responsible to collect/aggregate some piece of data needed for analysis. Similarly, each rule was responsible to analyze one aspect of the transaction and make a local decision. We also designed an ML engine that uses the rules, as well as plugin data to come up with a risk score.

We also integrated a new relic for monitoring and built instrumentation that helped us to evaluate custom metrics at each sub-stage of our system as well for individual plugins and rules across different kinds of transactional events that we supported.

Malvo
CC++webassemblywebsocketsnodejsandroid ndkrustterraformelectron

An experiment to build out a platform that allows publishers to replace ads with crypto miners(monero) running on user’s browsers / mobile phones. This project involved the following components

  1. Cross compiled a monero mining app into web assembly. This involved a lot of low-level stuff and forking the original miner
  2. Built a js SDK that allows publishers to integrate the webassembly powered monero miner on their website. It also consisted of a websocket that allowed it to interact with the mining pool,
  3. Built an android SDK powered by rust that allowed android developers to integrate the monero miner in their android apps
  4. A backend to support registration of publishers and keeping track of their revenue
  5. A service that acts as a middle layer between monero miners running on millions of user browsers and mobile phones and a couple of monero mining pools.
  6. A desktop app that allowed publishers to calculate their revenue based on the price of monero and their current daily active users.
Spyception
JavaGolangPythonscikit-learnnumpyAndroidReactAWSDocker

Company: Loanzen

We worked on an interesting framework for Loanzen - a leading NBFC lending to unregulated and unorganized SME sector in India to help them collect and process data for their credit model. Their lending model is unique and they needed a system that can continuously monitor the creditworthiness of their customers. We designed an Android SDK that allowed them to capture different interesting data points from their customer’s mobile without impacting their privacy or battery life and experiment with that to identify attributes/features that can be used in their credit model.

We also designed our version of the hierarchical Naive Bayes Algorithm to automatically tag nontransactional SMS messages into different hierarchical categories such as banking, online shopping, loans, payments, etc. We then further processed the banking SMS to create a life continuously updating/live bank statements of their customers. We also built a notification engine that processed this data and generated alert based on some conditions

Talk to us

Let us know how we can help and we would get back immediately. hello@vertexcover.io