FloorPlan: Visualize databases' evolution
As software matures, more functionality is added, code gets moved, re-written or removed. In the same rhythm, team members change and with them historical knowledge might get lost. For that reason, it is important to have a well-organized project, that is inviting for new contributors while still digestible for one-off readers.
Understanding how data is structured can be very helpful as an initial step for diving into the abstract modeling of the business domain. Database schemas, then, provide that entry window, but building the mental model out of a machine-readable format can be a daunting task even for seasoned engineers, especially when the project grows large and changes rapidly.
In this talk, we will learn how this challenge drove the creation of FloorPlan, an open source Kotlin library to translate database schemas into ER diagrams, discuss its development and application for the team of 20+ Android engineers at SoundCloud.
Always taking the developing countries market in mind, I have worked developing many big codebases, including the biggest classifieds company in Brazil, Autodesk’s A360 app and for the last 3 years in Berlin’s SoundCloud, where I passed through multiple teams.
Currently, being part of the Engineering Experience organization; focused on providing the best tools and increasing productivity of fellow engineers.