San Mateo, California, United States
SnapLogic is an Integration Platform as a Service (iPaaS) that enables quick development of sophisticated data and application pipelines using a visual drag and drop user interface. The SnapLogic Intelligent Integration Platform delivers a multi-tenant cloud service for all styles of integration - application or data, batch, or streaming. It is designed to handle any variety, volume, velocity, and location of structured and unstructured information. The Engineering team at SnapLogic is divided into 6 parts as UX, Platform, Big Data/Extreme, Snaps, Data Science, and QA teams.
As part of my internship project, I worked on SnapLogic's Platform team. The Platform team works on both the Control Plane (Python-based REST services) and the Java Component Container (Java execution engine that executes customer-designed integrations). Together, they power all SnapLogic iPaas services that run millions of customer-built data and application integrations per month.
During my internship, I created a reference microservice application for modernizing the
SnapLogic Control Plane. Today, the Control Plane consists of four monolithic applications and they use an older version of Python, UWSGI (Python webserver), and Werkzeug (Python web framework). The Platform team wanted to evolve the architecture into a microservices-based design.