Place spinach in large bowl or serving platter and set aside.
Hard boil eggs. To do this, either cover with water in small pot, bring to a bowl, remove from heat, and let eggs sit in water for 15 minutes, then place in ice bath. Similarly, cook in an electric pressure cooker for 6 minutes, allow to sit at pressure for 6 minutes, then transfer to ice bath. Peel and slice eggs. Set aside.
Fry the bacon in a skillet or dutch oven. Start with medium high heat and gradually reduce the heat while stirring regularly as the bacon cooks to prevent burning. Continue cooking until all fat is rendered and bacon is crisp. Remove bacon with a slotted spoon and transfer to a paper towel lined plate.
If more than 3 Tbsp of bacon grease remain, discard excess. Heat pan with 3 Tbsp of bacon grease over medium high heat and add mushrooms and shallots. Stir immediately to coat and then allow them to sear. Stir only once after they have begun to brown to prevent from burning and allow other side to brown. Remove sauteed mushrooms and shallot with a slotted spoon and transfer to a plate.
Using same pan with residual bacon grease, reduce heat to the lowest setting. Whisk in vinegar, sugar, and dijon mustard. Slowly drizzle in olive oil while whisking continuously. Whisk in salt and pepper and add additional salt, if desired.
To serve salad, toss spinach with a small amount of dressing in large bowl. Continue to add dressing until you've reached the desired amount (you may not use all of the dressing). Add sliced hard boiled eggs, cooked bacon pieces, and sauteed mushrooms and shallots. Toss to combine and serve warm.