A Ruby on Rails API project completed for Jam, a technology startup based out of Colombo.

The primary reason I chose Ruby on Rails for this project was speed to market (and also, Ruby). By rolling out features in short iterations, I was able to get to MVP stage and beyond quite fast.

The app allows customers to easily integrate their applications with mobile network providers (E.g. Dialog Axiata, Mobitel), and advertising networks (e.g. Mobipium). They can also manage their customer base, billing, reporting, landing pages, application specific settings, etc.

The app consists of 2 parts:

API

  • Provides access points for customer applications, advertising networks and mobile networks
  • Allows customer applications to reach users on mobile networks, subscribe users, and manage customer subscriptions
  • Automates charging for customer billing cycles according to mobile network specifications

Admin interface

  • Provides administrators, customers and mobile networks role based access controls to manage integration settings
  • View multiple reports related to revenue, customer subscription statistics, landing page performance etc., alongside subscription histories, charging histories, API interaction events among others
  • Create and manage landing pages and ad network integrations
  • Manage mobile network configurations, API settings, ad network configurations

Documentation

Billing API Docs

Technologies

Ruby on Rails, ActiveJob, AWS (SQS, S3, EC2, SES, VPN), Shoryuken, JavaScript, HAML, JSON API