Whisk buttermilk, mayonnaise, shallots, dill, lemon juice, and salt in a small bowl until well combined. Season with pepper. Cover, and refrigerate until cold, about 30 minutes.
Arrange bacon in a single layer in a large saute pan, and cook over medium heat, turning occasionally, until crisp, 8 to 10 minutes. Drain on paper towels. When cool, crumble bacon into bite-size pieces.
Arrange lettuce on a platter. Top with bacon, eggs, salmon, and avocado. Drizzle with 1/2 of the dressing. Season with pepper, and serve with remaining dressing on the side.