Kayako Logo

Software Engineering, Technical POC / 2021

Started as an Intern when Signzy was at its early days, wokred on various projects and helped in building the core product.

My work at Signzy

Joined in April 2019 as an intern, and it was my first taste of a real product-based software engineering company.

RM-Assisted AI-Enabled Onboarding Application for IndusInd Bank

My first days at signzy started as a 3-month internship. I was assigned to work on a project for IndusInd Bank, where I was maintaining and building new features for their RM (Relationship Manager) assisted AI-enabled onboarding application.

Soon, we worked on adding new features and integrations, more different types of entities, document scanning and verification and more.

This led to me being offered a full-time role at Signzy. Some of the technical breakthroughs I made during this project were:

  • Stream Processing: There used to be data coming from multiple sources for various documents, and processing them one at a time proved to be inefficient and using basic NodeJS Stream handling largely yielded over 2x performance improvement.
  • Backend Optimization: The backend used to face quite some traffic and I had optimized the backend in several places and used more efficient algorithms to improve the performance
  • PDF Generation without a headless browser: The PDF generation used to be a bottleneck in the application, and I had replaced the headless browser with a more efficient library to generate PDFs. This led to over 10x reduction in memory usage while speeding up the PDF Generation process.
  • CRM Integration: We integrated with CRMNext, a leading CRM provider where the onboarding data from our app went to the CRM application.

Internal API Team

Signzy had a lot of APIs for various purposes such as Digilocker and AADHAAR integration, and I was assigned to work on the API team. I was responsible for maintaining and building new features for the APIs.

Some of the technical breakthroughs I made during this project were:

  • Digilocker Integration: I had built the entire Digilocker integration from scratch, this led banks and NBFCs to integrate these features a lot faster and more efficiently.

  • AADHAAR Integration: From Aadhaar E-Sign to E-KYC, I had worked with stakeholders and industry leaders to build significant parts of the AADHAAR integration. Through this, customers can easily identify and onboard users in a frictionless manner.

  • Rewriting the API Stack: We used to write APIs using express, which had the advantage of being simple, and the disadvantage of being memory intensive. We (me and 2 other colleagues) had rewritten a total of 200+ APIs, which resulted in over 25% savings in infrastructure costs.

  • Face Liveliness Detection: Liveliness detection works on the user following some instructions that are displayed in-app such as:

    • Blink
    • Smile
    • Open Mouth
    • Nod
    • Shake Head
    • Turn Head (Left/Right/Up/Down)
    • Read alout a given text

    I had built the entire face liveliness detection system from scratch, which was used to detect if the user was following the instructions or not. We used Picoface and 68-point landmark detection and then writing rule-based algorithms to detect the liveliness. As we had to run these in very constrained environments at 10+ FPS, we had to optimize quite extensively, it was in 2020 and webRTC APIs were much more immature then.

  • Fraud Detection and AML/CFT measures: I contributed significantly

Video KYC

Video KYC involves solving several key problems, some of which is regulatory and the others are technical and business oriented.

  • Regulatory: Video KYC is a regulated space, and we had to comply with the regulations of the RBI and the KYC norms of the banks.
  • Technical: Video KYC involves a lot of technical challenges such as:
    • Bidirectional Pairing: There are KYC agents and customers, and we had to pair them in a bidirectional manner such that the agent can see the customer and the customer can see the agent in a 2-way video call.
    • Remote Control: The agent should be able to control the customerā€™s device remotely to capture the documents and videos.
    • Media Streaming: We had to stream the video, and simultaneously record it for review. The video had to be in sync 100% of the time.

Video KYC solution for Citibank

One of our premier clients was Citibank, and we had to build a video KYC solution for them. I was the Technical Point of Contact and led several technical decisions and integrations.

  • Compliance with Citibankā€™s regulations and norms.
  • Complying to the InfoSec standards set in place.
  • Integrating with Citibankā€™s existing systems.
  • Building a scalable and robust solution that can handle the load of Citibankā€™s customers.