There is presently no solution to the problem of an autonomous bulldozer pushing mounds of material to desired goal locations in the presence of obstacles whilst obeying the kinematic constraints of the bulldozer. Past work has solved some aspects of this problem, but not all. This research presents the first complete, practical solution to the problem. It works by creating a fixed RRT in advance, and then during operation connecting pushing poses into this RRT using Bezier curves. The RRT algorithm leverages a novel data structure for performing nearest neighbour comparisons for Ackermann-steering vehicles; termed the Distmetree. The resulting pushing states are searched using greedy heuristic search to find a solution and the final path is smoothed with cubic Bezier curves. The mode of operation chosen for best performance also constructs bidirectional RRTs to reach difficult to access pushing poses. The final mode of the algorithm was tested in simulation and proven to be able to solve a wide variety of maps in a few minutes while obeying bulldozer kinematic constraints. The algorithm, whilst not optimal, is complete which is the more desirable property in industry, and the solutions it produces are both feasible and reasonable.