A three-dimensional Navier-Stokes flow solver is developed on unstructured tetrahedral meshes. For a turbulence closure, a standard high-Reynolds-number k-epsilon model with a wall function boundary condition is used. The seven equations of motion are discretized and integrated in a tightly coupled manner. The time integration is achieved using an explicit Runge-Kutta time-stepping scheme. The inviscid Aux terms are discretized based on a cell-centered finite volume formulation with Roe's flux-difference splitting. The numerical method is applied for flows on a two-dimensional backward-facing step and a three-dimensional turbomachinery geometry. The results are compared with analytical and experimental data for validations.