Cook the pasta according to the package directions.
Meanwhile, heat the oil in a saucepan over medium heat. Add the onion, carrots, and garlic and cook, stirring occasionally, until soft, 8 to 10 minutes.
Increase heat to medium-high. Add the beef, salt, and pepper and cook, breaking up the meat with a spoon, until no longer pink, 4 to 5 minutes.
Add the tomatoes and simmer, stirring occasionally, until sauce slightly thickens, about 5 minutes. Stir in the parsley.
Serve the pasta with the sauce and sprinkle with the Parmesan.