Flight schedules are often padded somewhat based on historical performance. Airlines know if a flight is delayed frequently and can adjust their schedule accordingly. As such, it's not uncommon for a flight to leave somewhat late and still arrive on time, or at least not as late as the departure delay alone would indicate. If the flight schedule represented only the best-case conditions, many flights would be delayed frequently. This, of course, means the flight may arrive early on days when all goes well, which passengers rarely complain about, but airlines hate, as it means aircraft are sitting idle, reducing profitability.
Airlines can adjust speed to a small extent, which helps make up a delay a little bit at the cost of fuel, and winds and route play a significant role in determining how long the flight will take. Better than average winds might help take a few minutes off a departure delay, for instance.
In particular, it's my experience that United added a fair amount of padding after spending a significant amount of time at the bottom of the on-time rankings, causing problems with significant delays and missed connections. As this blog post puts it:
American and Delta push their mainline and express flights at roughly
the same rate (within a couple points), but not United. United had a
mainline D0 of only 64.5 percent yet a regional D0 of 73.2 percent. At
the same time, United mainline arrived within 14 minutes of schedule
87.3 percent of the time while Express was only at 82.1 percent. You all know why. United is padding the heck out of mainline with a B0 of
86.8 percent. Express, however, has a B0 of only 71.6 percent.
To strip away all the confusing terminology, many United flights leave late, but a much greater proportion arrive more-or-less on-time.