# Building Products at SoundCloud--Part II: Breaking the Monolith

DevFeed: [Building Products at SoundCloud--Part II: Breaking the Monolith](<https://devfeed.tech/articles/building-products-at-soundcloud-part-ii-breaking-the-monolith-2003.md>)

Original publisher: [Read original article](<https://developers.soundcloud.com/blog//building-products-at-soundcloud-part-2-breaking-the-monolith>)

Published: 2014-06-12T00:00:00Z

Content type: article

Language: en

Sources: [SoundCloud Backstage Blog](<https://devfeed.tech/sources/soundcloud-backstage-blog.md>)

Topics: [Microservices](<https://devfeed.tech/topics/microservices.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Rails](<https://devfeed.tech/topics/rails.md>), [Scala](<https://devfeed.tech/topics/scala.md>), [Clojure](<https://devfeed.tech/topics/clojure.md>)

Tags: [activerecord](<https://devfeed.tech/tags/activerecord.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [finagle](<https://devfeed.tech/tags/finagle.md>), [legacy-application](<https://devfeed.tech/tags/legacy-application.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [rails](<https://devfeed.tech/tags/rails.md>), [refactor](<https://devfeed.tech/tags/refactor.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [scala](<https://devfeed.tech/tags/scala.md>)

## AI overview

SoundCloud describes extracting a bounded context for user-to-user messages from its legacy monolithic Rails application, Mothership, into a separate microservice. The process involved refactoring ActiveRecord-coupled code around a seam, replacing the implementation with a service call, and gradually running the microservice alongside the legacy code to avoid a disruptive big-bang refactoring. The article also explains why Mothership's application database should not serve as the integration point.

## Source excerpt

In the previous post, we talked about how we enabled our teams to build microservices in Scala, Clojure, and JRuby without coupling them...