Cloud

Informatica Cloud is the leading Integration Platform as a Service that is equally strong in both batch and real-time capabilities and which serves over 3500 customers running over 725,000 jobs a day to process over 180 billion transactions per month!

Above was a quotation from the corporate website. In simple words Cloud is a web version of PowerCenter – the most known Informatica product. Its main functionality is to copy data from one place to another. On the way data is usually processed somehow: cleansed, validated, joined with other data, etc.

It is possible to try Informatica Cloud. Anyone can get a free trial account for 30 days.

Screenshots

Informatica Cloud - Mapping Designer

Mapping Designer

Informatica Cloud - Welcome Screen

Welcome Screen

Informatica Cloud - Data Replication Wizard

Data Replication Wizard

Videos

The team

The Cloud project is one of the most important for the company. So, our team is constantly growing. Started with just a few developers we grew to more than 100 people. The team is divided into two major parts located in Redwood City, CA and Bangalore, India. Also we have many contractors and sales guys all around the world.

My role

I joined the project in the beginning of 2011 when Informatica acquired Siperain Inc. where I was working. I was entrusted to found the Cloud department in Russia. I shaped the initial team and organized the development process. As you can guess we used the Scrum framework. In those times we were hiring actively, so I interviewed many candidates as a Java expert.

During these years I had time to make key contributions into many parts of the system: Mapping designer, Integration templates, Payment processing, Template editor and several others.

Other interesting experience was our university program. During a half of a year students came to the office and created projects using Informatica Cloud. I mentored them and gave lectures about the product and involved technologies. Later the most clever students became Informatica employees.

In 2014 I had an opportunity to join the PIM project as a team leader and a Scrum Master. It was very useful career step for me. PIM uses different set of technologies than Cloud, so I learned a lot.

In 2015 I was invited back to the Cloud department to continue my work at the company headquarters in SF Bay Area.

Technology stack

Core technologies are Tomcat, Servlets, JSP, JSTL, Struts, Spring, Hibernate, MySQL, JavaScript, jQuery, dojo, AJAX, RES, Eclipse OSGi.

There is a lot of work both on the server side and on the client side. So, I gained extensive experience in JavaScript and related libraries whereas there were many interesting server-side tasks.

In last releases we added a new part to the system that was based on Eclipse OSGi technology. This experience greatly helped me later in the PIM project where this approach was the primary one.

Architecture

What is interesting about the Cloud project is its architecture. To cope with constantly increasing load most parts of the system are scalable. The main parts are:

  • Configuration application. It allows to set up system nodes. One instance.
  • SaaS application. It does all the useful work: web UI, business logic, etc. Several instances per node.
  • Database. One instance per node and one for the configuration application.
  • Balancer. It distributes load between SaaS app instances.
  • Channel application. Creates effective channel between SaaS application and the Secure agent. Several instances per node.
  • Secure agent. Actually it is a PowerCenter engine that does all data processing work. Each customer should have it installed in local network.

Code base

  • Symphony Cloud platform: ~3200 classes (templates ~700)
  • SAAS: 48 projects with ~2900 classes