Convince Your Team to Try Liquibase

Robert Reeves
4 min readFeb 10, 2020

--

You know how important it is for ALL code (not just app code) to be under source control. (Maybe you’ve experienced terrible, long nights and weekends to find and fix a bad database change.) Perhaps you’ve done your research and learned the benefits of using a database migration tool, like Liquibase, to help you version, track, and deploy database changes. Maybe you had been using Liquibase at a different company and can’t imagine going back to the old ways of trying to push software out the door without it.

But now you find yourself at a different company and your new team hasn’t bought in.

Your boss doesn’t get it. How do you convince your team to give Liquibase a try?

One of the best ways to convince your teammates to try Liquibase is to show them how much easier it becomes to manage database migrations. Here are the reasons we hear the most about why users love Liquibase for helping to version, track, and deploy database schema changes.

5 ways Liquibase makes your life easier

  1. Version-controlled database schema changes
    Do you find yourself constantly wondering what state the database is in? Liquibase is like having Git for your database schema; You’ll always know what version of the database you’re dealing with.
  2. Automatically order scripts and control when, where, and how database changes are deployed
    Liquibase gives your team precise database version control by using a unique identification scheme: an ID and author, along with the name and path of the file all in an changelog file. This makes it easy to manage the order in which database changes are made. It’s also easy to reorder changes in the changelog when you need to roll out changes to lower environments. Your team can precisely control when, where, and how database changes are deployed. Fine tune how your changes are deployed to each environment with contexts and labels. Use conditional logic to further manage the deployment of changes in each environment with Liquibase preconditions.
  3. Branching and merging for teams
    The way that Liquibase manages changes makes developer conflicts and collisions less likely since there are multiple factors that drive the uniqueness of a given change. Liquibase is built to support teams of developers working simultaneously on database changes, and can gracefully handle branching and merging of database migrations.
  4. Embeds into your product or build tools, like Jenkins
    There are numerous options for fitting Liquibase into your build processes. In a recent survey, 77% of respondents reported using Jenkins with Liquibase. Even more impressive was the number of different ways teams integrate Liquibase into their process through shell scripts and a myriad of different tools. It’s also possible to generate SQL scripts for DBA code review. Liquibase does not require a live database connection.
  5. Easily rollback changes
    Bad database changes happen. Some database migration tools don’t include rollbacks in their open-source offering. Liquibase does. There are a number of different options for teams using Liquibase that need to fix a bad database change. Since Liquibase is migrations-based, you can easily fix forward. Sometimes, changes aren’t so simple, so Liquibase also offers several different ways to rollback database scripts. Advanced users can take advantage of Targeted Rollbacks, saving teams precious time when it’s most needed.

Bonus! Here are some features that put the cherry on top

It works with so many databases

Liquibase functions make it easy to generate database-appropriate SQL. This allows teams to efficiently scale by writing database changes once and deploying to a variety of backends.

Even if your team works with a single database platform, the ability to standardize the SQL produced in development makes reviews, audits, and troubleshooting easier.

If your team only uses one type of database now, it’s nice to know that if you decide to use a different one that Liquibase is database agnostic. It works with a whole host of databases and offers a lot of extensions through the community.

It’s proven

Liquibase has been around for over 12 years and has been downloaded over 13 million times. A lot of big companies rely on it, like ESPN, Walmart, and Spinnaker (Netflix).

It’s FREE

Arguably the best thing about Liquibase is that it’s open-source. You’ve got nothing to lose and everything to gain by giving it a try.

Expert support is there if you need it

While support isn’t free, it’s affordable. This mitigates the downsides of getting stuck scouring the forums and documentation for hours. If your team needs support for how to get the most out of Liquibase for your use case, sign up for Pro and support is there when you need it. Plus, Liquibase Pro comes with advanced features like Targeted Rollbacks and advanced Stored Logic capabilities that make database schema management even easier.

Summary

As you can see, there are a lot of reasons to give Liquibase a try and not a lot of downsides. It’s free and open-source. If you need support or advanced features, there’s a free trial of Pro you can take advantage of.

When talking to your manager or team, be sure to point out specific things you’re struggling with to make it relevant to the pain they may be feeling around database releases. Showing them a real example and showing how it can fit into your workflow is going to be the most impactful thing you can do. And the time you spend setting up and showing them will save you so many hours in the future. Then you can ask for that raise you deserve.

--

--

Robert Reeves

CTO @Liquibase, avid mixologist, semi-pro horticulturist, awful boarder, punk rock MBA, comic book literati, hubby badger, dad. #HookEm