SlideShare a Scribd company logo
Kumar Ramaswamy
Fremont, CA 94555
Phone: 510 712 3545 (Mobile)
510 791 3020 (Home)
Email: akila.srirangan@gmail.com
What I can do for Your Business:
1. A highly scalable RDBMS preferably PostgreSQL. The RDBMS will be capable of
storing exabytes (= 1024 petabytes = 1024 * 1024 Terabytes) of Relational Data.
The RDBMS is also capable of 1 Billion Transactions per Minute. Servers and
Storage are presumed to be unlimited and bandwidth presumed to be infinite!!!.
2. This RDBMS can be used for Storage of Everything.
3. Database Access Control System with Unprecedented Security.
4. How to securely develop a distributed system. The security will
make the system much better than if it is not employed. Please
note that this is not a system for keeping hackers out.
5. A User Interface System using HTML5 that will save 50 %in Cost
and cut down development Time by 50% in the first project. The
numbers are 65% in the subsequent web services projects.
6. The design for an Automated Test System for any Distributed
System. The test cases can be written in any language.
7. Build Distributed Systems using the likes of Yarn, Spark, Kafka,
ActiveMQ, and PostgreSQl and of course Java and Unix. These
systems will perform as expected except in the case of
Applications that are inherently serial and not amenable to
parallelism.
8. Implement Fault Tolerance and High Availability in your
Distributed Systems.
9. Develop a System for Testing Fault Tolerance and High
Availability.
10. Develop a System for Debugging any Distributed System if you
want.
Technology I Know:
 Unix, C, Java, Scala, Clojure
 TCP/IP, Networking, Protocol Design, Building IP Load Balance rs
 Distributed Systems with Fault Tolerance, High Availability, Scalability, and
Functionality
 J2EE, AKKA, Secure Oauth2/OAuth1a
 LMAX Disruptor (1 million memory based transactions in 2 minutes)
 RDBMS, SQL, Postgresql, MySQL
 Big Data: Apache Flume, Apache Storm, Kafka, Hadoop, HDFS, Spark
 Cassandra: Has done extensive proof of concept and analysis to
determine its suitability for Storage of Large Amounts of immutable data.
 MongoDB: Has extensive knowledge and can and will use for Storage of
Large amounts of Immutable Data (Copy On Write)
What Distributed Systems I have Developed:
* Architected, Designed, and Developed A Database Access Control System with
Unprecedented Security:
The project was developed in 2 parts. One is the underlying Distributed System and the
other is the implementation of the Database Access Control System.
The security features went into the core Database. The security features need to
be developed by the Database Vendor (e.g. Oracle, IBM etc.).
* A distributed System using Akka:
The distinguishing characteristic is that the Actor System is one per node. The
communication between Actor Systems (i.e. between nodes) is handled using ActiveMQ
with persistence.
* A Similar System was built using Clojure Agents:
Here, the processes and their children and need to be specified explicitly and the
monitoring framework and the scheduler needed to be developed separately. However,
everything is Controlled by the Developer and there is no transparency.
* Development of a Distributed System for Product Tracking Using RFID tags in
Java Platform:
Developed an Architecture for tracking Gillette razors and blades from the manufacturing
facilities to the warehouse and from the warehouse to retailers like Walmart. Project was
developed using Sun Web Server, Sun Application Server in Java.
* A Fault Tolerance Testing System for Web Services in Java:
Developed a fault tolerance system in Java to test the failure recovery and fault tolerance
of Web Services using Web Server, Application Server and Database (the 3-tier). This
system was used to test a Content Downloading Application for Phones.
* Sun Cluster Foundation:
The software to connect multiple nodes in a cluster using TCP/IP as the transport
mechanism and the Cluster Management System was developed. The nodes were also
geographically distributed. Fault Tolerance was also developed.
The product was used by Wall Street Financial Services Companies including Morgan
Stanley.
* Developed an Internet Load Balancer: Owns 4 Patents.
Work Experience:
GE, San Ramon, CA Corporate IT Consultant Jan 2016 – May 2016
Architected, Designed, and Developed a Database Access Control System with unprecedented
security.
1. A Distributed System was developed.
2. The Application for Database Access Control was developed on top of the Distributed System.
3. The Security Features went into the Core Kernel of the Database. The features needed to be
implemented by the Database Manufacturer (for example, Oracle, IBM).
4. The database used in this project was a MPP RDBMS with capability to store Peta Bytes of
Data.
5. As part of this project the following were developed:
5.1. A secure scheduling system.
5.2. A novel way of developing User Interface Using HTML5 that cuts down the cost of
UI Development by 90%.
5.3. An Automated Testing System that is capable of Testing any Distributed System.
1. The Test Suite can be developed in any language.
2. A web based UI for Selection of Test Cases (from a single test to all test
cases)
3. Report Generation (Test Cases Run, Test Case Descriptions, Test Case
Results, Test Case Run Logs) was completely automated.
6. An RDBMS was used to store Meta Data of the System.
The project was completed and given to QA (and testing was completed). Waiting for Database
Vendor to implement the security changes in the core kernel of the MPP Database in order to be
Released.
Technology Involved: python, tornado web server, MySQL, Postgresql, an MPP RDBMS, Rest
Web Services, unix (linux), tcp/ip sockets Java SE 8
Nisum Technologies Inc, Fremont CA Technical Lead Feb 2015 – Nov 2015
An Advertisement ETL System from Scratch for a Company in Palo Alto, CA
1. Worked at a Customer Site.
2. Involved in a Big Data Project using Hadoop Clusters.
3. The data comes from 100s of customers in various forms. All data must be collected,
validated, and stored. Then the stored data is mapped and transformed into meaningful data.
4. The transformed data is stored in a Hadoop Cluster (in HDFS) so that further processing is
possible. Developed a System for Dynamic Schema and Dynamic Rules (rules can be changed
in real time as the data is streaming).
5. Data at any stage can be tied back to all the previous stages up until the first arrived. Data at
any stage can be transported to any service at any location at any time.
6. The Services that are processing data can be running all on a single system or each one on a
different system.
7. Developed solutions for scalability, fault tolerance, and high availability.
8. Designed a solution such that Hadoop Clusters are used as Data Services implementing a
particular functionality rather than as Hadoop Clusters using HDFS. In other words, the services
that are interacting with Hadoop Systems are only aware that they are interacting with a highly
scalable service.
Technology Involved: Hadoop, HDFS, Java, JDBC, MySQL, Rest Web Services, OAUTH2,
Google/Yahoo/Twitter/Apple Advertisement Systems
Cassandra:
Evaluated for a project requiring transaction capabilities and high
availability and fault tolerance. Did not find it suitable.
MongoDB:
Has knowledge of and can develop applications.
Distributed System for High Speed Transaction Processing System:
Developed a system for processing 1 million transactions in 2
minutes using LMAX Disruptor, Apache B*Tree, and Kafka. The language u
used was Java on Linux.
 The transactions from clients are stored in Kafka.
 The LMAX Disruptor is the Consumer of the kafka Topic.
 Once the transaction is processed by the LMAX, the result is
written to another Kafka Topic (‘Transaction Result’). In
this case, the LMAX is the Producer.
 The Process that communicates with the client acts as the
Consumer and fetches the result and gives it to the client.
 1 million transactions achieved on 2-core Intel with 8GB of
memory.
 Correct working of Kafka requires curator or something
similar. Otherwise, if a node goes down and comes back up,
things may not work properly.
 Developed in Java SE 8.
Stotle Inc, San Carlos, CA Consultant December 2014 – Jan 2015
Developed a Market Intelligence Platform to aid customers to direct their marketing efforts based
on which customers are contributing the maximum. This was not apparent in that particular
industry.
Technology Involved: Java, JDBC, Postgresql, Tomcat
Starting a Business in Fremont CA 2012 – 2014
Worked on developing a Distributed, Scalable Cloud Architecture and building the
prototype. The project was developed using Web Servers, Application Servers,
JDBC Servers, and DBMS. Developed the prototype in Pure Standard Java (J2SE).
NetApp Inc. Sunnyale, CA 2004 - 2012
Storage Backup Products
Worked on the Data Protection Group. Developed a backup Product that connected NetApp
Servers with Symantec's NetBackup. The product was released to customers. The entire
product was designed and developed and released by 1 person.
Using the same underlying foundation for the above product, I developed another
backup product for a very big Bank. This product was used to backup all Remote Offices to
a Central Database..
Technology Involved: Unix Kernel, C, TCP/IP, Storage Concepts
Sun Microsystems Inc. Menlo Park, CA 1997 - 2004
1. Architecture for a Distributed System that tracks Things using RFID:
Developed an architecture for a Distributed System (e.g. for tracking Gillette's Razor Blades).
The razor blades go from the manufacturing facility to a warehouse after making several
stops in between. Gillette had devised this system and was described to us. Then, from
the warehouse, the products traveled to the retailer. The products had RFID tags.
The RFID tags themselves and the machines that track them (for example, when the
truck leaves the warehouse) were manufactured by several specialized companies. We
were to process the data and report the location of the razor blades until they were sold.
The product was developed and sold to several Customers.
Revenue in Millions of Dollars.
Technology Used: J2EE, Web Servers, Application Servers
2. Fault Tolerance Testing System for Web Services Using Java:
A fault tolerance testing system for Web Services (that use
Web/Application/DBMS) was developed in Java. The System consists of Java
Clients and Java Servers. The Fault Injection points for the system are configured in a
Lookup Server. The various servers get the configuration. The servers then inform the
client to perform a fault injection at various times when the actual application is running.
The fault injections include Killing a process, rebooting a node, disabling a network
interface.
[Finer granularity of fault injection was possible by instrumenting the source code.
When the fault injection point is reached in a module, the fault injection code (#ifdef
FAULT INJECTION)contacts the fault injection client in the local node. The client in turn
contact the server. The server checks if that particular fault is configured to be injected. If
so, it informs the client. The client informs the module. And the module performs the
appropriate action like Change a value (from true to false), take the module down (return
error), take the program down (System.exit(1)) and so on. All of these injection points,
actions to be performed by the servers, clients, and the module themselves are
configurable and dynamically enabled and disabled. ]
Technology Used: Java, TCP/IP Sockets, Solaris
3. Sun Cluster Foundation:
Designed and Developed the foundation for Sun Cluster. Developed the TCP/IP
Transport for the interconnection of nodes and Cluster Management System to manage
the nodes in the Cluster. Up to 64 nodes with multiple network adapters were supported.
* The product was sold to many Customers for several years.
* Revenue in Billions of Dollars.
4. IP Load Balancer
Developed a TCP/IP based Load Balancer The Solaris Server (2-CPU) was split in
to 2. One CPU was isolated and the Ethernet network interface driver was modified to
act as an high-speed load balancer using the chosen interfaces.
The other CPU functioned as the regular Solaris Server and was used for managing
the load balancer. The load balancer was also functioning as a router to the external
world. RIP and OSPF were supported. This was the first of its kind. I am the owner
of 4 patents issued related to this product.
Locus Computing Corporation Inglewood, CA 1990 - 1997
Single System Image Cluster:
I was a developer of the foundation for a Single System Image Cluster.
Developed TCP/IP based transport and Cluster Management System.
The product was bought by Tandem Computers. It became Compaq and then HP.
Unix Consultant to IBM
I served as a consultant to IBM Application Business Systems Division (ABS) located in
Rochester MN. We were consults for their POSIX effort.
Level 3 Customer Support Engineer
I was Level 3 Customer Support Engineer for IBM AIX Customers (all Fortune
500 Companies).
Education:
B.E. (Hons.) Electrical and Electronics Engineering from
College of Engineering, Guindy, Chennai, India

More Related Content

kumarResume

  • 1. Kumar Ramaswamy Fremont, CA 94555 Phone: 510 712 3545 (Mobile) 510 791 3020 (Home) Email: akila.srirangan@gmail.com What I can do for Your Business: 1. A highly scalable RDBMS preferably PostgreSQL. The RDBMS will be capable of storing exabytes (= 1024 petabytes = 1024 * 1024 Terabytes) of Relational Data. The RDBMS is also capable of 1 Billion Transactions per Minute. Servers and Storage are presumed to be unlimited and bandwidth presumed to be infinite!!!. 2. This RDBMS can be used for Storage of Everything. 3. Database Access Control System with Unprecedented Security. 4. How to securely develop a distributed system. The security will make the system much better than if it is not employed. Please note that this is not a system for keeping hackers out. 5. A User Interface System using HTML5 that will save 50 %in Cost and cut down development Time by 50% in the first project. The numbers are 65% in the subsequent web services projects. 6. The design for an Automated Test System for any Distributed System. The test cases can be written in any language. 7. Build Distributed Systems using the likes of Yarn, Spark, Kafka, ActiveMQ, and PostgreSQl and of course Java and Unix. These systems will perform as expected except in the case of Applications that are inherently serial and not amenable to parallelism. 8. Implement Fault Tolerance and High Availability in your Distributed Systems. 9. Develop a System for Testing Fault Tolerance and High Availability. 10. Develop a System for Debugging any Distributed System if you want. Technology I Know:  Unix, C, Java, Scala, Clojure  TCP/IP, Networking, Protocol Design, Building IP Load Balance rs  Distributed Systems with Fault Tolerance, High Availability, Scalability, and Functionality  J2EE, AKKA, Secure Oauth2/OAuth1a  LMAX Disruptor (1 million memory based transactions in 2 minutes)
  • 2.  RDBMS, SQL, Postgresql, MySQL  Big Data: Apache Flume, Apache Storm, Kafka, Hadoop, HDFS, Spark  Cassandra: Has done extensive proof of concept and analysis to determine its suitability for Storage of Large Amounts of immutable data.  MongoDB: Has extensive knowledge and can and will use for Storage of Large amounts of Immutable Data (Copy On Write) What Distributed Systems I have Developed: * Architected, Designed, and Developed A Database Access Control System with Unprecedented Security: The project was developed in 2 parts. One is the underlying Distributed System and the other is the implementation of the Database Access Control System. The security features went into the core Database. The security features need to be developed by the Database Vendor (e.g. Oracle, IBM etc.). * A distributed System using Akka: The distinguishing characteristic is that the Actor System is one per node. The communication between Actor Systems (i.e. between nodes) is handled using ActiveMQ with persistence. * A Similar System was built using Clojure Agents: Here, the processes and their children and need to be specified explicitly and the monitoring framework and the scheduler needed to be developed separately. However, everything is Controlled by the Developer and there is no transparency. * Development of a Distributed System for Product Tracking Using RFID tags in Java Platform: Developed an Architecture for tracking Gillette razors and blades from the manufacturing facilities to the warehouse and from the warehouse to retailers like Walmart. Project was developed using Sun Web Server, Sun Application Server in Java. * A Fault Tolerance Testing System for Web Services in Java: Developed a fault tolerance system in Java to test the failure recovery and fault tolerance of Web Services using Web Server, Application Server and Database (the 3-tier). This system was used to test a Content Downloading Application for Phones. * Sun Cluster Foundation: The software to connect multiple nodes in a cluster using TCP/IP as the transport mechanism and the Cluster Management System was developed. The nodes were also geographically distributed. Fault Tolerance was also developed. The product was used by Wall Street Financial Services Companies including Morgan Stanley. * Developed an Internet Load Balancer: Owns 4 Patents. Work Experience: GE, San Ramon, CA Corporate IT Consultant Jan 2016 – May 2016
  • 3. Architected, Designed, and Developed a Database Access Control System with unprecedented security. 1. A Distributed System was developed. 2. The Application for Database Access Control was developed on top of the Distributed System. 3. The Security Features went into the Core Kernel of the Database. The features needed to be implemented by the Database Manufacturer (for example, Oracle, IBM). 4. The database used in this project was a MPP RDBMS with capability to store Peta Bytes of Data. 5. As part of this project the following were developed: 5.1. A secure scheduling system. 5.2. A novel way of developing User Interface Using HTML5 that cuts down the cost of UI Development by 90%. 5.3. An Automated Testing System that is capable of Testing any Distributed System. 1. The Test Suite can be developed in any language. 2. A web based UI for Selection of Test Cases (from a single test to all test cases) 3. Report Generation (Test Cases Run, Test Case Descriptions, Test Case Results, Test Case Run Logs) was completely automated. 6. An RDBMS was used to store Meta Data of the System. The project was completed and given to QA (and testing was completed). Waiting for Database Vendor to implement the security changes in the core kernel of the MPP Database in order to be Released. Technology Involved: python, tornado web server, MySQL, Postgresql, an MPP RDBMS, Rest Web Services, unix (linux), tcp/ip sockets Java SE 8 Nisum Technologies Inc, Fremont CA Technical Lead Feb 2015 – Nov 2015 An Advertisement ETL System from Scratch for a Company in Palo Alto, CA 1. Worked at a Customer Site. 2. Involved in a Big Data Project using Hadoop Clusters. 3. The data comes from 100s of customers in various forms. All data must be collected, validated, and stored. Then the stored data is mapped and transformed into meaningful data. 4. The transformed data is stored in a Hadoop Cluster (in HDFS) so that further processing is possible. Developed a System for Dynamic Schema and Dynamic Rules (rules can be changed in real time as the data is streaming). 5. Data at any stage can be tied back to all the previous stages up until the first arrived. Data at any stage can be transported to any service at any location at any time. 6. The Services that are processing data can be running all on a single system or each one on a different system.
  • 4. 7. Developed solutions for scalability, fault tolerance, and high availability. 8. Designed a solution such that Hadoop Clusters are used as Data Services implementing a particular functionality rather than as Hadoop Clusters using HDFS. In other words, the services that are interacting with Hadoop Systems are only aware that they are interacting with a highly scalable service. Technology Involved: Hadoop, HDFS, Java, JDBC, MySQL, Rest Web Services, OAUTH2, Google/Yahoo/Twitter/Apple Advertisement Systems Cassandra: Evaluated for a project requiring transaction capabilities and high availability and fault tolerance. Did not find it suitable. MongoDB: Has knowledge of and can develop applications. Distributed System for High Speed Transaction Processing System: Developed a system for processing 1 million transactions in 2 minutes using LMAX Disruptor, Apache B*Tree, and Kafka. The language u used was Java on Linux.  The transactions from clients are stored in Kafka.  The LMAX Disruptor is the Consumer of the kafka Topic.  Once the transaction is processed by the LMAX, the result is written to another Kafka Topic (‘Transaction Result’). In this case, the LMAX is the Producer.  The Process that communicates with the client acts as the Consumer and fetches the result and gives it to the client.  1 million transactions achieved on 2-core Intel with 8GB of memory.  Correct working of Kafka requires curator or something similar. Otherwise, if a node goes down and comes back up, things may not work properly.  Developed in Java SE 8. Stotle Inc, San Carlos, CA Consultant December 2014 – Jan 2015 Developed a Market Intelligence Platform to aid customers to direct their marketing efforts based on which customers are contributing the maximum. This was not apparent in that particular industry. Technology Involved: Java, JDBC, Postgresql, Tomcat Starting a Business in Fremont CA 2012 – 2014 Worked on developing a Distributed, Scalable Cloud Architecture and building the prototype. The project was developed using Web Servers, Application Servers, JDBC Servers, and DBMS. Developed the prototype in Pure Standard Java (J2SE).
  • 5. NetApp Inc. Sunnyale, CA 2004 - 2012 Storage Backup Products Worked on the Data Protection Group. Developed a backup Product that connected NetApp Servers with Symantec's NetBackup. The product was released to customers. The entire product was designed and developed and released by 1 person. Using the same underlying foundation for the above product, I developed another backup product for a very big Bank. This product was used to backup all Remote Offices to a Central Database.. Technology Involved: Unix Kernel, C, TCP/IP, Storage Concepts Sun Microsystems Inc. Menlo Park, CA 1997 - 2004 1. Architecture for a Distributed System that tracks Things using RFID: Developed an architecture for a Distributed System (e.g. for tracking Gillette's Razor Blades). The razor blades go from the manufacturing facility to a warehouse after making several stops in between. Gillette had devised this system and was described to us. Then, from the warehouse, the products traveled to the retailer. The products had RFID tags. The RFID tags themselves and the machines that track them (for example, when the truck leaves the warehouse) were manufactured by several specialized companies. We were to process the data and report the location of the razor blades until they were sold. The product was developed and sold to several Customers. Revenue in Millions of Dollars. Technology Used: J2EE, Web Servers, Application Servers 2. Fault Tolerance Testing System for Web Services Using Java: A fault tolerance testing system for Web Services (that use Web/Application/DBMS) was developed in Java. The System consists of Java Clients and Java Servers. The Fault Injection points for the system are configured in a Lookup Server. The various servers get the configuration. The servers then inform the client to perform a fault injection at various times when the actual application is running. The fault injections include Killing a process, rebooting a node, disabling a network interface. [Finer granularity of fault injection was possible by instrumenting the source code. When the fault injection point is reached in a module, the fault injection code (#ifdef FAULT INJECTION)contacts the fault injection client in the local node. The client in turn contact the server. The server checks if that particular fault is configured to be injected. If so, it informs the client. The client informs the module. And the module performs the appropriate action like Change a value (from true to false), take the module down (return error), take the program down (System.exit(1)) and so on. All of these injection points, actions to be performed by the servers, clients, and the module themselves are configurable and dynamically enabled and disabled. ]
  • 6. Technology Used: Java, TCP/IP Sockets, Solaris 3. Sun Cluster Foundation: Designed and Developed the foundation for Sun Cluster. Developed the TCP/IP Transport for the interconnection of nodes and Cluster Management System to manage the nodes in the Cluster. Up to 64 nodes with multiple network adapters were supported. * The product was sold to many Customers for several years. * Revenue in Billions of Dollars. 4. IP Load Balancer Developed a TCP/IP based Load Balancer The Solaris Server (2-CPU) was split in to 2. One CPU was isolated and the Ethernet network interface driver was modified to act as an high-speed load balancer using the chosen interfaces. The other CPU functioned as the regular Solaris Server and was used for managing the load balancer. The load balancer was also functioning as a router to the external world. RIP and OSPF were supported. This was the first of its kind. I am the owner of 4 patents issued related to this product. Locus Computing Corporation Inglewood, CA 1990 - 1997 Single System Image Cluster: I was a developer of the foundation for a Single System Image Cluster. Developed TCP/IP based transport and Cluster Management System. The product was bought by Tandem Computers. It became Compaq and then HP. Unix Consultant to IBM I served as a consultant to IBM Application Business Systems Division (ABS) located in Rochester MN. We were consults for their POSIX effort. Level 3 Customer Support Engineer I was Level 3 Customer Support Engineer for IBM AIX Customers (all Fortune 500 Companies). Education: B.E. (Hons.) Electrical and Electronics Engineering from College of Engineering, Guindy, Chennai, India