Preheat oven to 375 and spray a 9x9 or so baking dish.
Melt 2 TBS butter and saute the onions until they are cooked through (about 4 minutes).
Add in the remaining 2 TBS butter and Hash Browns and saute for 5 minutes.
Season well with salt & pepper.
Remove from heat and add in ham, cheese and scallions and toss until incorporated.
Scrape into your baking dish.
Whisk eggs and milk in a small bowl, season with s&p.
Pour egg/milk mixture slowly and evenly over-top and if you choose sprinkle on some additional cheese, ham and s&p.
Bake for 35 minutes or until firm and brown around the edges.
Allow the casserole to rest for 10 minutes before cutting it into squares.
This can also be prepared, covered and stored in the fridge overnight before cooking.
**It is not necessary to saute the potatoes...You can choose to simply add them and 2 TBD melted butter to the onions and mix. I like a little more color on the hash browns, which is why I choose to do that. Either way tastes great!