You are here

Resume

Rahul Amaram Resume

Developer, Free Software / Open Source Enthusiast, Technology Entrepreneur, Blogger

LinkedIn Profile:http://www.linkedin.com/in/rahulamaram
Website:http://rahul.amaram.name
Contact:http://rahul.amaram.name/contact


Summary


A graduate from IIIT Hyderabad, my first year was with Infosys, after which I co-founded a technology startup Spinaxys Solutions where I worked in products ranging from SMS based personal profiling systems to bluetooth based proximity marketing solution. Going ahead, I joined Synovel, where I designed and lead the development of the open-source Collabsuite server. Then I moved on to Vizury, a startup in the advertising domain, where I lead the RTB platform pipeline and helped build scalable systems by leveraging cloud computing. My latest stint is at Khoros (formerly Lithium), where over the course of 4.5 years, I've helped build teams, manage teams, set up a lot of the initial processes and culture and help build products. Areas of expertise include:

  • Deep knowledge in Elasticsearch, including data-modeling and optimizing clusters
  • Designing Horizontally scalable systems (my earlier product handled about 2,00,000 reqs/sec)
  • Building extremely low latency applications (avg. response time < 10 ms)
  • Multi-layered distributed caching systems
  • Cloud Computing
  • SOA & Restful APIs
  • AWS/Network Security (VPN, Firewall, NACLs & Security Groups, VPC, Role-based credentials)
  • Continuous Integration Systems (ex. Jenkins)
  • Packaging & Release Management
  • Setting up dev, test & production environments
  • Monitoring & Alerting

Experience


Principal Software Engineer Jul 2019 - Sep 30th, 2020
Khoros India Pvt. Ltd. (formerly Lithium Technologies Pvt. Ltd.) (1 year 3 months)
  • Evaluated different approaches for pulling search out as a micro-service
  • Was part of a small team to design and bootstrap the project for ES 1.7 to 7.x upgrade
  • Handled customer critical bugs
  • Helped optimize ES clusters, thereby reducing cluster costs by 50%
  • Implemented automated code quality checks to be run only for newer changes
  • Performed code reviews for multiple projects
  • Architecture & Design reviews of features coming out of the Blr office

Principal Software Engineer March 2018 - June 2019
Lithium Technologies Pvt. Ltd. (1 year 4 months)
  • Lead for the Search team, helping with onboarding, mentoring and implementing product features
  • Lead the implementation of Promoted Search feature, which is now actively used by 100+ communities
  • Participated in Vista Hackathon and received a special recognition award for an idea based on blockchain to drive user-engagement
  • Initiated lunch-n-learn sessions in the Blr office
  • Kick-started and mentored the community custodians initiative to help grow knowledge within the Blr senior engineers

Lead Software Engineer April 2016 - Feb 2018
Lithium Technologies Pvt. Ltd. (1 years 11 months)
  • Helped recruit a lot of the initial talent
  • Setup processes for agile software development and on-call
  • Prototyped a performance testing framework that was built using micro-services based architecture
  • Lead the accessibility team for achieving better WCAG 2.0 AA compliance
  • Implemented Virus Scanner Service, which could horizontally scale to handle incremental load as it is gradually integrated with 100% customers

Consultant January 2006 - March 2006
Self Employed (3 months)

Principal Software Engineer April 2013 - October 2015
Vizury Interactive Solutions Pvt. Ltd. (2 years 6 months)
  • Primary activities include scaling, reducing costs, and ensuring stability and security of the RTB platform, which on an average handles 200,000 requests / sec across six different geographies
  • Awarded TECHSTAR for an outstanding performance during the JFM 2015 quarter
  • Driving RTB integration with FBX (thereby boosting company revenue immediately by 10%)
  • Migration of cache servers from Memcached to Aerospike, a NoSQL database, which has helped reduce cache costs by 50%
  • Mentoring migration of our RTB stack to make it more secure by using VPC, NACLs, Security Groups and Roles
  • Explore, deploy and configure a monitoring framework for handling dynamic / adaptive thresholds using bischeck, a Nagios plugin
  • Architect and implement real-time logging for processing about 200,000 log events / second that are generated by RTB bid servers
  • Prototype and help deploy a platform across Vizury for QA to effectively test cross-component changes
  • Introduce AWS cloud formation templates and mentor junior engineers in templating the entire RTB infrastructure
  • Design a pre-production testing framework using TestNG which helps to identify bugs just before production release to greatly reduce the chances of things breaking in production

Application Architect June 2008 - December 2012
Synovel Software Technologies Pvt. Ltd. (4 years 7 months)
  • Architect and lead developer of the Collabsuite Server
  • Improved scalability by profiling the product, implementing database and SSH connection pooling, and optimizing LDAP queries
  • Deployed and setup Collabsuite at Customer premises, maintained Customer Support Systems and provided assistance to Customers
  • Hired and inducted new recruits
  • Deployed Nagios for Remote monitoring and integrated it with an in-house built SMS alerting service
  • Designed and implemented remote support software for customers

Co-founder April 2006 - May 2008
M/s. Spinaxys Solutions (2 years 2 months)

Software Engineer June 2004 - September 2005
Infosys (1 year 4 months)

Significant / Interesting Products & Projects


Bootstrapping ES 1.7 to 7.x Upgrade
The ES 1.7 to 7.x was a bottom-up proposal to upgrade elasticsearch for the community platform. Bootstrapping this project was pretty complicated due to the fact that elasticsearch powered a lot of features in the platform and a though evaluation needed to be done for the right approach to be taken, so that we could eventually transition to the final goal of pulling search out as a service by making the right tradeoffs between speed of development, keeping infra costs low and showing early wins. The design was presented in one of the ES meetups: https://www.youtube.com/watch?v=Bkf5w2x1ACs

Real-time Logging for Bid servers
Due to some requirement, we needed to make our bid servers stateless and therefore had to implement real-time logging. Under this implementation, log events get pushed to a Kafka broker as soon as they are generated in the bid servers. These log events are consumed continuously and written to files by a cluster of servers and uploaded to S3 for later processing by Analytics. We faced a lot of challenges in the bigger goes where at peak times, we have up to 50 bid servers, with each bid server pushing 4000 log events / second of avg. 500 bytes each. Cumulatively, this comes around to 100 MB of uncompressed log data to be processed every second. Through various optimizations such as compression, using flume, implementing a custom kafka partition rebalancer notifier, and resolving all the disk and network bottlenecks, we were finally able to implement a robust real-time logging architecture which ensured data buffering during broker downtime, no duplication of data and a horizontally scalable cluster of log processing servers.

FBX RHS And NewsFeed Integration
Integration with FBX had two major challenges - 1. A strict timeline of 4 weeks from FBX within which integration had to be completed and 2. The non-standard way of delivering ads by sending ad information in the bid-response itself. Meeting the deadline required stretching myself and the non-standard way of serving ads implied setting up the new feed infrastructure from end-to-end on the RTB side. FBX Integration turned out to be the major revenue booster for the year. Here are some numbers which show the impact of the integration within a couple of months of it going live - 30%-40% revenue contribution in whichever campaigns it went live, avg. profitability of 55% compared to that of 38% for non-FBX and 45% of the total RTB impressions (40-50 million).

Collabsuite Server (Product at Synovel)
Extending my work done as a consultant earlier, I proceeded to convert a prototype into a full-fledged collaboration server. Running on Debian, the collaboration server integrates mail, instant messaging, and calendar services, and offers advanced features such as single sign-on (SSO), integration with Active Directory/CentOS Directory Server, and distributed services for scalability. I designed the product, evaluated and explored the features of various servers, integrated the various services, wrote the entire back-end for the remote web administration console in Python, and coded the first version of the web front-end for it in Dojo. Collabsuite sourceforge URL: http://sourceforge.net/projects/collabsuite/

Calendarserver Debian Packaging (Free Software / Open Source Contribution)
Patch contributor and currently Debian package maintainer for calendarserver. After contributing some patches to the Darwin Calendar Server, and building Debian packages for Synovel Collabsuite Server, I eventually took over the responsibilities from its former maintainer, Guido Gunther. Packages Overview: http://qa.debian.org/developer.php?login=amaramrahul@users.sourceforge.net

Skillset


Interests:Programming, System Administration, Network Security, System Design, Product Architecture, GNU/Linux Debian, NoSQL
Languages:Java, Python, C/C++ (prior experience)
Web:PHP, Dojo (prior experience)
Administration:LDAP, Kerberos, Nagios, MySQL, Apache2, Postfix, Dovecot, Ejabberd, Calendar and Contacts Server, BackupPC, Active Directory, Iptables, Elasticsearch
AWS:EC2, RDS, S3, Auto-scaling, ELB, SNS, SQS, IAM, AMI Creation, Cloud Formation

Education


International Institute of Information Technology 2000 - 2004
Bachelor of Technology (B.Tech.), Computer Science (4 years)
Grade 7.82/10.00