Peel the sweet potatoes and cut them into chunks. Place in a large pot, cover with water, and boil until tender, about 15 minutes. Drain well.
Return the potatoes to the pot. Add 2 tablespoons butter, 2 tablespoons brown sugar, vanilla extract, salt, and cinnamon. Mash until smooth.
Transfer the mixture to a greased 8x8 baking dish and spread evenly.
In a small bowl, combine the pecans, flour, remaining 2 tablespoons butter, and remaining 2 tablespoons brown sugar. Mix with a fork until crumbly.
Sprinkle the pecan mixture evenly over the sweet potato layer.
Bake at 350°F for 25 minutes, until the topping turns golden and the edges bubble slightly. Let rest 5 minutes before serving.