Bring a large pot of salted water to a boil and cook penne pasta until al dente according to package instructions.
In a large skillet over medium-high heat, cook the diced bacon until crispy. Remove bacon with a slotted spoon and set aside on paper towels.
Discard all but 1 tablespoon of bacon fat from the skillet. Add the ground beef and diced onion. Cook until beef is browned and onions are translucent. Drain excess fat.
Add minced garlic to the skillet and sauté for 1 minute until fragrant.
Lower heat to medium and pour in the heavy cream. Bring to a gentle simmer for 3 to 5 minutes until slightly thickened.
Stir in the shredded cheddar and Parmesan cheese until melted and smooth. Season with salt and pepper.
Add the cooked pasta and half of the crispy bacon to the sauce, tossing to coat thoroughly.
Serve immediately topped with the remaining bacon and sliced green onions.