Developer
Pavan Rao Thamanna Krishna
Backend Java Developer
15, Jack Hawken Lane, Silverdale
Java
Spring-boot
Docker
PostgreSQL
Concourse
AWS Lambda
AWS Kinesis
AWS SQS
AWS Cloudformation
Jenkins
Cassandra
Redis
Memcached
Linux
RabbitMQ
About
A senior Java developer with over 9 years of professional development experience, building Software as a Service with event driven applications and exposing APIs. As a practitioner of CI/CD, I'm competent in using docker to ease deployment, write maintainable and well tested applications.
Skills
Languages
Java, J2EE, Python, Bash
Frameworks
Spring-boot, Spring, Mockito, EasyMock
Libraries/APIs
Spring, AWS SDK, Apache commons, Jackson, AMQP
Paradigms
Agile, Test driven development, Scrum
Platforms
AWS, Docker, Linux
Storage
Oracle, Postgres, Cassandra, Redis, Memcached
Tools
Git, Nginx, Intellij, Jira, Jenkins, Concourse, SonarCube
Experience
J2EE
9 years
Spring
9 years
AWS
4 years
Hightlight Projects

Scale tax platform

Scale the existing monolithic tax platform at Eroad by breaking them down to small scalable microservices on AWS with autoscaling groups and own RDS
Eroad Limited NZ
Eroad Limited NZ

Scale the existing tax platform by splitting the monolithic application into smaller scalable microservices.

* Developed application on spring-boot application, deployed in AWS as auto scaling groups using cloudformation with docker images.

* Consume events from AWS kinesis, Rabbit MQ and process them, storing data in AWS Postgres RDS and AWS Aurora DB.

* Improve scalability from 500 events per second to be able to handle 5000 events per second, run automated Jmeter tests after every merge.

* Use concourse pipelines for build and deploy.


Technologies:

* Java

* Spring-boot

* PostgreSQL

* AWS Kinesis, AWS SQS, AWS RDS, AWS Aurora, AWS Lambda

* Docker

* Concourse


Mobiquity Money

A mobile money platform that provides many services for consumers using spring-boot and spring cloud, deployed on AWS
Comviva Technologies Limited
Comviva Technologies Limited

Built a new mobile money platform with more than 15 microservices orchestrating the flow using service-flow pattern with each microservice interacting using Rabbit MQ.

* Built multiple microservices using service flow pattern which enables development of business processes in a configurable XML.

* Scale the batch processing of data from 1000 records in an hour to 1 Million records in under 2 minutes.

* Develop configurability on the fly using spring-cloud with configurable information on Git.


Technologies:

* Java

* Spring-boot, Spring Cloud

* PostgreSQL

* Chef

* Jenkins

Points Core Management System

A points core management system as a global point platform for Rakuten that enables seamless transition of points across all Rakuten affiliates across all geographies
Rakuten India
Rakuten India

Rakuten is an e-commerce giant in Japan, which has points for loyalty. Japan Rakuten points were restricted to Japan, which couldn't be transitioned across affiliates of Rakuten nor across geographies. Points Core Management System was built to ensure the above problem was solved.

* Used Cassandra as the DB to solve the fast writes and ensure optimum reliability.

* Built the platform on spring-boot.

* Used chef to for deployment of applications.


Technologies

* Java

* Spring boot

* Cassandra, MySQL

* Jenkins

* Chef

Work Experience
Technical Lead Java Developer
Eroad Ltd
|
Apr 2017 - Present

Leading Eroad tax team, building a system that analyzes the events that come across the stream, aggregate them and build the tax reports, trips of vehicles across months. Technologies used include AWS RDS, AWS SQS. The experience includes scaling the horizontal scaling of microservices as a function of the computing power.


Developer in Eroad Integration team that eases integration of Eroad with partners by designing and developing APIs using Spring framework, AWS Lambda, NoSQL DyamoDB and Postgres DB deployed.


The development is done using Agile practices and employing Continuous Deployment to the Eroad Depot on AWS cloud.

Java
Spring boot
AWS
Postgres
Docker
Concourse
Jenkins
Spring Cloud
Lead Engineer
Comviva Technologies Limited
|
Jun 2016 - Apr 2017

Lead developer for developing Mobiquity Financial Solutions, an e-money platform available through Mobile services. Involved in transformation from legacy code to micro-services architecture with 15 components, using a Service Flow Design pattern to optimize the development process. Components interacted using Rabbit MQ as a message broker, with the components using both Oracle for components that had legacy data model and PostgresSQL as database for the components that was new data model.


The entire development process was done as a part of strangulation gradually replacing the business process in the legacy with the business process developed in the new architecture.


The fundamental feature of the new architecture was to bring in maximum customizability with minimum code change, which was achieved using Spring Cloud for enabling run-time customization.

Java
Springboot
PostgreSQL
Oracle
Chef
ELK
Rabbit MQ
Jenkins
Senior Software Engineer
Rakuten India Development Center
|
May 2015 - Jun 2016

Design and develop Point Management System, a new Global Points Platform as a Platform as a Service (PaaS) for Rakuten for maintaining the Rakuten Points.


Involved in transforming the localized points platform to a global points platform. The platform was developed on Spring boot application with Cassandra as the database. Developed APIs that are to be consumed by the affiliate applications of Rakuten that deal with points and enabling a seamless transition from Local points platform to Global Points Platform.

Java
Spring boot
Cassandra
MySQL
Jenkins
Software Engineer
SAP Labs India Private Limited
|
May 2011 - May 2015

Software developer with core Java/J2EE experience, built context based in application messaging platorm using XMPP. Apart from this built and enhanced technical monitoring tools of SAP applicationsĀ¢:

The application exposed websocket APIs to perform following operations

  1. Register user
  2. Create groups, add user to group.
  3. Interact with the ERP/SCM application to obtain the context around communication based on requests.
  4. Send and receive messages in 1-1 chat or group user chat.

The application monitors and alerts based on computing metrics

  1. CPU utilization, memory consumption on application servers and GC collection.
  2. Monitor the availability of the system by constantly interacting with an end-point, raise appropriate alerts.
  3. Monitors the background job processing on the Java applications.
  4. Enabled templated monitoring and custom monitoring of SAP applications. 
  5. Enabled specific process monitoring of SAP applications.
Java
Spring
SoapUI
Jenkins
XMPP
HANA DB
Sybase DB
Education

M S Ramaiah Institute of Technology

Bangalore, India
|
Sep 2007 - Jun 2011
Bachelors of Engineering