Building Products at SoundCloud – Part I: Dealing with the Monolith
developers.soundcloud.com
developers.soundcloud.com
Guess its one of the disadvantages when you are not based in the Silicon Valley...you simply don't have access to 1st class talent that has done the same task at 2 other high growth startups before.
And in both cases they would not start working for a startup in Berlin or any other place.
If they leave then for southern france, a cow ranch in the mid-west or Bali.
Where else you can burn money and not making profits in the name of engineering efforts?
I definitely agree with iterative refactoring and incremental changes that SoundCloud did.
If SoundCloud has tons of money that can provide a long-term runaway, they can do major refactor or re-write.
i.e.: if competition _AND_ money are not the issue, why not?
I doubt these constraints came about as surprises once their hand was forced.
I didn't get that impression at all. The ability to do it right (tm) the first time is quite often hindered by the need to iterate quickly and focus on growth and/or revenue. You'll eventually end up with an increasingly-more-painful monolithic core system, but that's an okay trade off if it got you to a place where your business really takes off.
At that point you have a few options. You can do a major rewrite, re-architecting everything from the ground up. Or, you can take Soundcloud's approach, and slowly migrate the old system to a more service-oriented architecture, reducing the amount of dev resources you need to throw around.
The trick is that the slow migration will be different for every business, and it depends on the needs of the platform and the way things were constructed initially. Just like you can't blame the technical leadership the trade-offs made early on, and you can't blame them for experimenting and iterating before finding solutions that worked for them. (After all, hindsight is 20/20.)
Going out on a limb, perhaps this similarity contributes to the reasoning for the Twitter/SoundCloud acquisition rumors: more exciting problems for Twitter engineers to solve now that they've tamed their own beast? Or to put the theory in a business light, Twitter engineering leadership may have confidence they can architect SoundCloud better than the SoundCloud team has done.