Boil pasta in salted water until al dente, then drain and set aside.
In a large skillet, melt butter over medium heat. Whisk in flour to form a smooth roux and cook for 1 to 2 minutes.
Slowly whisk in milk until smooth and thickened.
Stir in shredded cheese, garlic powder, onion powder, salt, and pepper until creamy and well-blended.
Add the drained tuna and cooked pasta to the skillet. Mix gently to coat everything evenly in the sauce.
Let it rest for 5 minutes before serving for the flavors to settle.
Garnish with parsley and serve warm.