Work

This page lists a selection of projects I’ve been hired to work on, in reverse chronological order.

Adya

Adya demo

Adya is a SaaS security service that helps enterprises detect where their sensitive data is stored, and gives them tools to protect it from threats such as ransomware and insider theft.

In a span of eight weeks, I helped Adya build an MVP that allowed their users to connect multiple sources of data to their account, visualize file permissions across the different data sources, and view access logs for both files and users.

Saneef Ansari handled the UX and visual design of the product, while I worked on the engineering challenges inherent in visualizing a large amount of data in the browser. The MVP was built with React and Redux, and it could handle several thousand users and files without slowing down.

abof.com

abof.com

abof is an online fashion retail brand owned by the Aditya Birla Group. I was part of the three people team of consultants commissioned to rebuild the abof website from the ground up using modern web techniques.

We built the new version of the website as a universal React application. At the time of release, it loaded in less than 7 seconds on slow 3G connections, almost instantly on wired connections, and performed well even on low-end Android devices. This performance boost reduced abof’s bounce rates by more than 60%.

I’ve written extensively about the project on the Alaris Prime blog: part 1, part 2, and part 3. I’ve also spoken about it at JSFoo 2016.

The team that rebuilt abof consisted of me, Ciju Cherian of ActiveSphere, and Saneef Ansari of Alaris Prime.

Insider.in

Insider.in homepage

Insider.in is a curated ticketing platform run by Only Much Louder, an artist management company that owns several entertainment properties in India.

I was hired to augment the small team of developers already working at the company in Bombay. I worked on all parts of the platform, including:

  • The suite of microservices that powered Insider’s REST APIs, built with Node, MongoDB, and Redis.
  • An administration console for vendors, venue managers, and OML employees, built with AngularJS.
  • The consumer facing website, built with Backbone.

Additionally, I introduced the team working at OML to JavaScript best practices and Git workflows suited to a large, fast-moving team.

TestMyFont.com

TestMyFont.com

TestMyFont.com is an open source browser based tool to visually compare fonts, built with AngularJS. Source code.

Snorkel

Snorkel was a product that allowed users to write Excel formulas using Python, and gave them access to powerful libraries such as NumPy and SciPy. The Python code was run on a cloud server, which allowed for more complex, CPU-intensive computations than a local copy of Excel can handle.

I worked on all parts of the product, which included:

  • A web frontend built with AngularJS that allowed users to create new formulas using CodeMirror. Every time a formula was saved, it was run through a custom linter that warned users when they were doing something that might result in an error.
  • An Excel plugin that allowed users to import and call Python functions using a REST API. This was originally written using Visual Basic, and later ported to C# and Excel-DNA.
  • A REST API that both the web frontend and Excel plugin consumed, built with Python and Flask.
  • A sandbox for securely running arbitrary Python code. Security was achieved using a mix of techniques that included: heuristics to detect potentially harmful code, a monitor process to kill misbehaving subprocesses, Linux permissions and ulimits, and AppArmor. The sandbox was built using Python and communicated with the REST API using ZeroMQ.

index_server

Prototype index_server UI

index_server is a full-text file indexing daemon for Haiku OS, similar to the daemon that powers Spotlight on Mac OS X. It’s written in C++ and uses CLucene for creating and querying the file index.

I built index_server as a part of Haiku Code Drive 2009. After I stopped working on it, it was massively refactored and incorporated into the Haiku source tree.