Place a pot of water on the stove and bring the water to a boil.
Peel and chop the potatoes into 1 inch cubes. Once the water is boiling put your potatoes in for 10 to 15 minutes or until the potatoes are soft.
Place potatoes in a large bowl; add sugar, sweet and condensed milk, 3 tablespoons of melted butter, ½ teaspoon salt, and vanilla.
Beat with a mixer at medium speed until smooth. Add eggs; beat well
Pour potato mixture into a 13 x 9 inch baking pan coated with cooking spray.
To prepare topping, combine flour, brown sugar, and 1/8 teaspoon salt; stir with a whisk. Stir in 2 tablespoons melted butter.
Sprinkle flour mixture evenly over potato mixture; arrange pecans evenly over top.
Bake at 350℉ for 25 minutes or just until golden.
Preheat broiler (remove casserole from oven).
Broil casserole 45 seconds or until topping is bubbly. Let stand a little bit before serving.
Notes
If you are making this casserole ahead of time, keep the brown sugar topping separate and sprinkle it on top just before baking. Cover and refrigerate the mashed sweet potato mixture and brown sugar topping separately in the fridge. The casserole will reheat best if you remove it from the fridge and let it warm up to room temperature before baking.