Heat cast iron skillet on medium high heat, and cook bacon until crispy.
Remove bacon from skillet to paper towel lined plate, and set aside.
Drain all but 2 tablespoons of the bacon grease from the skillet.
Add onions and shallots, and cook until caramelized. Stirring frequently. Once caramelized, add the garlic and cook for an additional minute.
Add brown sugar, maple syrup, balsamic vinegar, coffee, smoked paprika and chipotle powder. Stir to combine.
Return the cooked bacon to the onion mixture, and reduce heat to low and allow to cook down to thick consistency.
Taste, and adjust sweetness or spiciness depending on how you like it.
Allow to cool, and store in air tight container in the refrigerator.