CLVmetrics is a new startup focused on analyzing customer lifetime value, and which pushes the award winning-research of professor Peter Fader further than ever before.

The project involved building an analytics dashboard webapp they will release to their customers in the near future to provide charts and other insights into the lifetime value of their customers' users.

Technologies: Javascript, Angular, Bootstrap, D3, NVD3, Grunt, Python, Flask, PostgreSQL, AWS.


Squarespace allows people to easily create elegant websites through templates and the use of a drag-and-drop interface.

Took over the development of the Android app. Most of the remaining work was for the UI, working closely with the designer and the CEO. The app provided the user with website stats, and the ability to manage the site's pages or create new ones. The company has since removed the app from the Play Store and has launched simpler individual-task apps, such as a note taking app.

Subsequently, I became one of the first few members of the Data Analytics team, where I was involved both in collecting data and building the custom dashboard the company put up on TVs ​in the office.

We worked closely with the Business Intelligence team to collect data points and events from MySQL and Mongo using ETL processes, which would load that data into a typical star schema, aggregate and summarize it, and create reports. We built a custom dashboard we put up on TVs in the office in order to give people an at-a-glance idea of how the company is doing. We also worked on A/B testing the pricing page and several other key pages to increase conversion rates. One of the key roles for our data analysis was to optimize the marketing budget by analyzing which marketing channels had the highest return on investment.

Technologies: Java, Javascript, Android, MySQL, Mongo, Microsoft SQL Server.


Xtify is an IBM-acquired early innovator in the mobile push and geofencing space that provides geo-fenced push notification services as an SDK for mobile apps.

Xtify's SDK is an impressive piece of software engineering. App developers can include it in their apps to track the user in the background and send them push notifications based on their location. This was at a time when iPhone did not have the capability for background location tracking, so we were excited to use Android in pushing the boundaries of mobile.

The challenges with the SDK were to be as efficient as possible and use as little battery as possible. Towards this goal, if multiple apps on a given phone contained the Xtify SDK, the SDK instances in the various apps were able to follow a protocol to allow a primary instance to continue running and the other instances would shut down and remain dormant. The protocol was aware of the various SDK versions and able to handle them with backwards compatibility.

Every time an app on the device was installed or uninstalled, the set of SDK instances would follow the protocol and self-organize. The primary instance that was running had to get the location update and compile a list of which apps contained the SDK and had location tracking enabled in their user settings. The particular location update would be associated with the enabled apps and that data sent to the server for processing.

Improvements and new functionality were added to the backend data pipeline, which at the time, was processing millions of location updates from all over the United States. Graphing the location data, we obtained a clear map of the US, with the highway network clearly defined. It looked very similar to this map.

Technologies: Java, Android, JBoss, ActiveMQ, MySQL, AWS.


Pizzacharts is a crypto-currency charting website where people can keep up with the latest price trends of bitcoin and the rest of the crypto-currencies. Some of the key pieces that were built are:

stock charts - custom stock price component that provides the best possible user experience and allows users to properly visualize the unique aspects of bitcoin prices

portfolios - allows users to keep track of their bitcoins and their current value

data pipeline - interfaces with the APIs from various bitcoin exchanges, creating a standardized interface through which it collects and aggregates price and volume data

Technologies: Python, Django, Celery, RabbitMQ, MySQL, Graphite, Redis, Javascript, Angular, Bootstrap, jQuery, PhantomJS.


Counterchef is a recipe site that does things differently. Recipes are simplified, structured, and presented graphically.

Built the site end-to-end, including a recipe building tool that allows users to visually create simple recipe graphs from ingredients and short text instructions.

Technologies: Python, Django, MySQL, Javascript, Angular, Bootstrap, jQuery.


Murex is the long-time leader in integrated trading, risk management, processing and post-trade solutions for capital markets (i.e., banks and hedge funds).

The work involved creating interfaces and workflows that integrated Murex’s software with the customers' other financial systems.

Technologies: Java, XML, XSLT, custom company software.

Iridium Flares

About a hundred Iridium satellites circle the globe. Because of their unique geometry, when viewed from the ground, they occasionally become brighter than any star or planet in the sky for up to half a minute at a time as they move across the sky.

The Iridium Flares app creates a fully automated system to notify the user when a flare is about to occur at their particular location. It downloads the relevant flare data and triggers notifications at the correct time, informing the user where to look in the sky.

Technologies: Java, Android, Google App Engine, Python, Django.

Spy Camera

Spy Camera is an Android camera app that takes pictures without showing a preview or making a shutter sound.

Building the app required a lot of investigative work and debugging. At the time, the camera API had no support for flash and every new phone with a flash required using custom ways of changing the flash settings. Some of the major phone models' camera APIs had peculiarities that were discovered and accounted for.

Technologies: Java, Android.


Hancock is an Android app that allows freelancers to easily sign templated contracts, such as for photography model releases or for NDAs. The app allows the user to create templates and sign them together with the other party in person and directly on the mobile device. A PDF version is then generated and emailed to both parties.

Technologies: Java, Android, Google App Engine.

Football Verdict

Football Verdict was a fantasy football advice platform where managers could ask weekly sit-or-start questions and get advice from the fantasy community. Football Verdict aimed to provide personalized fantasy advice by giving users feedback on their specific dilemma.

At the end of each week, users' predictions were tallied and a leaderboard was created to showcase the users who helped the community the most and provided the most accurate predictions.

Press: BostInno, InfoChimps.

Technologies: Python, Django, Google App Engine.

Building Energy Management

Rescued a startup that provides a commercial building energy management system. Due to some changes and events, systems were offline and there were a number of critical bugs to fix. For example, daylight savings was not being handled properly and some of the scripts had scheduling/timing issues. New work was also needed on a time-critical basis to meet the business's needs towards its clients. The work involved improvements to the dashboard/analytics website, and enhancements to the backend data pipeline and management system.

Technologies: Javascript, Bootstrap, D3, NVD3, Python, Django, MySQL, Mongo, AWS.


I noticed there's no decent time tracking software on Github, so I'm building one, with the goal of:
- creating a quality user experience and interface,
- having it run on Python/Django/Angular/MySQL, and most importantly,
- providing the charts and analytics missing from the leading commercial products.

Software developers (such as myself) and others would appreciate being able to run their own time tracking software, knowing that they own their data, and easily being able to drop down to the database and slice and dice their data to understand their time usage better.

Technologies: Angular, Javascript, Bootstrap, D3, NVD3, JSData, Python, Django, Django REST Framework, MySQL.