Deep learning methods notoriously have difficulty capturing the physics and hard constraints associated with the systems in which they operate, often limiting their practical use. In this talk I will present a general framework for incorporating such information into deep networks, namely through the use of implicit layers. Implicit layers are neural network layers that can capture rich classes of functions, such as optimization problems or differential equations. Such layers can be used to construct neural networks with useful inductive bias for particular domains or to enforce that networks obey hard constraints dictated by the settings in which they are used. To demonstrate the power of this paradigm, I will present several applications of implicit layers in the context of electric power systems. Specifically, I will present work in decision-oriented demand forecasting, grid data vulnerability assessment, and provably robust power system control.