Melt 2 Tbsp butter in heavy pan. Saute celery and onion until slightly browned. Set aside.
Meanwhile, cook potatoes until fork tender. Drain, reserving some of the cooking water. Mash potatoes using some of the reserved cooking water (or you can use warmed milk or broth) and adding the remaining 2 Tbsp butter. They should be rather stiff and not as creamy as regular mashed potatoes. Add salt and pepper to taste.
Add the celery/onion mixture, parsley, and egg, slightly beaten. Mix thoroughly. It should now be kind of whipped and creamy. Turn mixture into a greased casserole and dot with additional butter and freshly ground black pepper. Bake at 350 °F for 30-45 minutes until top is golden brown.
This can be made ahead up until the final baking, even the night before. Allow extra baking time if refrigerated. I’ve even made this up to the point of baking it and frozen it in small foil dishes. It takes about an hour and a half to thaw and bake.