Try this solution:
$collection = $subject->getCollection();
$collection->getSelect()->joinLeft(
['_inventory_table' => 'cataloginventory_stock_item'],
"_inventory_table.product_id = e.entity_id", ['is_in_stock']
);
$collection->getSelect()->order(['is_in_stock desc']);