Docker: containerizing a monolithic app into a microservice-based PaaS

Track: Cloud + DevOps
Skill Level: Intermediate
Room: Room 106
Time Slot: Wed 3/11, 10:30 AM
Tags: devops , docker , cloud , paas
Presentation Link

Convert a monolithic application into a microservice-based PaaS using Docker and related, containerization technologies. This will be the third presentation of a series of presentations that began greater than one year ago to evangelize the benefits of Docker. The scope of content spans from a development environment to a hybrid PaaS, and how Containerization is an enabler of architectural choice, innovation, scalability, and polyglot solutions.

The basics of Docker will be examined including repositories, brief discussion about managing and monitoring Docker containers, service discovery, and security. New and emerging technologies will be a constant theme, particularly about microservices, in addition to the ongoing evolution of the market and what the future may bring. Common organizational issues (and tactical solutions) that may impede successful decomposition and migration of legacy monoliths will be discussed, including security, DevOps and refactoring.

Hypothetical architectures will be described for building progressively more robust and complex applications and deployment models. The goal is to highlight the power, flexibility and scalability that containers enable.

Examples will start simple, from a local development environment, that is a simple two container setup that encapsulate a database and application tier. Subsequent discussion will involve progressively more complex and robust deployments that include features such as service discovery, automatic load balancing, and abstractions to simplify linking of containers including service gateways. With the stopping point of a hybrid PaaS.

Todd Fritz

Todd leads software development teams to design and implement innovative, enterprise-class, secure, distributed, mission-critical systems via effective alignment of technology (and development process) to business needs. He has led numerous efforts to design and implement scalable, maintainable and extensible platforms and products; many of which are still in Production. He regularly learns new technology to stay current and understand from bottom-up, which is invaluable for formulating enterprise strategy in addition to tactical planning. He is a strong proponent for reactive, streaming architectures that leverage technologies such as Akka, Kafka and Scala.

Fritz leads by example and is a proponent of “servant leadership" and agile development methods (scrum, kanban). He abhors the travesty of waterfall and micromanagement, and is an advocate of following sound SDLC process to provide long-term business value. His passion for programming and software design began on an Apple ][+ in 1980 at age 11, which progressed into assembly language by age 13, and 35 years later has continued across numerous technology innovations and trends. How fortunate to have a childhood hobby grow into a rewarding, lifelong career?

His experience includes greater than 18 years in significant roles of responsibility, and possess a diverse skill set that spans from the back-end to front-end, with emphasis on high volume, message oriented middleware and back-end solutions (e.g. big data).

Sometimes an evangelist of a technology before it becomes “cool” (microservices, EDA/CEP, docker , reactive programming and more). He is a versatile, personable, passionate, hands-on contributor. A team player with proven ability to related to different cultures, personalities and generations.

Previous topics he has presented on include Docker and microservice based architectures, to decompose legacy monoliths.